Class: Aikido::Zen::Sinks::EventMachine::HttpRequest::Middleware

Inherits:
Object
  • Object
show all
Defined in:
lib/aikido/zen/sinks/em_http.rb

Instance Method Summary collapse

Instance Method Details

#response(client) ⇒ Object



41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
# File 'lib/aikido/zen/sinks/em_http.rb', line 41

def response(client)
  # Store the request information so the DNS sinks can pick it up.
  context = Aikido::Zen.current_context
  context["ssrf.request"] = nil if context

  Aikido::Zen::Scanners::SSRFScanner.track_redirects(
    request: Aikido::Zen::Scanners::SSRFScanner::Request.new(
      verb: client.req.method,
      uri: URI(client.req.uri),
      headers: client.req.headers
    ),
    response: Aikido::Zen::Scanners::SSRFScanner::Response.new(
      status: client.response_header.status,
      headers: client.response_header.to_h
    )
  )
end