From 75bd2f8fb358191207477d530c2da0510e321375 Mon Sep 17 00:00:00 2001 From: Justin Steven Date: Thu, 16 Jul 2020 15:50:41 +1000 Subject: [PATCH] Include URI query string in proxied requests --- extensions/proxy/proxy.rb | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/extensions/proxy/proxy.rb b/extensions/proxy/proxy.rb index c9f51f9c9..75ec62d24 100644 --- a/extensions/proxy/proxy.rb +++ b/extensions/proxy/proxy.rb @@ -97,8 +97,10 @@ module BeEF tolerant_parser = URI::Parser.new(:UNRESERVED => BeEF::Core::Configuration.instance.get("beef.extension.requester.uri_unreserved_chars")) uri = tolerant_parser.parse(url.to_s) + uri_path_and_qs = uri.query.nil? ? uri.path : "#{uri.path}?#{uri.query}" + # extensions/requester/api/hook.rb parses raw_request to find port and path - raw_request = [method, uri.path, version].join(' ') + "\r\n" + raw_request = [method, uri_path_and_qs, version].join(' ') + "\r\n" content_length = 0 loop do @@ -127,7 +129,7 @@ module BeEF :proto => proto, :domain => uri.host, :port => uri.port, - :path => uri.path, + :path => uri_path_and_qs, :request_date => Time.now, :hooked_browser_id => self.get_tunneling_proxy, :allow_cross_domain => "true"