saucelabs / forwarder

Forwarder is a production-ready, fast MITM proxy with PAC support. It's suitable for debugging, intercepting and manipulating HTTP traffic. It's used as a core component of Sauce Labs Sauce Connect Proxy.
https://forwarder-proxy.io
Mozilla Public License 2.0
200 stars 13 forks source link

martian(mitm): support CONNECT over HTTP 1.0 #813

Closed mmatczuk closed 1 month ago

mmatczuk commented 1 month ago

If connect request is sent using HTTP 1.0 the connection is closed immediately after sending the connect response.

2024/05/24 13:32:20.686121 [78a36aa52d0442f1967aa025d5cc22dd] [proxy] [DEBUG] [1484-111ce86c] read CONNECT request host=www.example.com:443
2024/05/24 13:32:20.686327 [78a36aa52d0442f1967aa025d5cc22dd] [proxy] [DEBUG] [1484-111ce86c] mitm: attempting MITM
2024/05/24 13:32:20.686401 [78a36aa52d0442f1967aa025d5cc22dd] [proxy] [INFO] [1484-111ce86c] CONNECT www.example.com:443 status=200 duration=247.34µs
CONNECT //www.example.com:443 HTTP/1.0
Host: www.example.com:443
Content-Length: 0
Cache-Control: no-cache
Pragma: no-cache
User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; Trident/7.0; rv:11.0) like Gecko
Via: 1.0 sc_server-176180595490019f0dc4

HTTP/1.0 200 OK
Content-Length: 0

2024/05/24 13:32:20.686496 [78a36aa52d0442f1967aa025d5cc22dd] [proxy] [DEBUG] [1484-111ce86c] closing connection
2024/05/24 13:32:20.686512 [78a36aa52d0442f1967aa025d5cc22dd] [proxy] [DEBUG] closing connection from 127.0.0.1:44198 duration=5.749609ms