使用Fiddler通过上游代理发送HTTPS请求

时间:2016-08-23 09:11:02

标签: https proxy fiddler

我已经检查了Fiddler - tunnelled http requests to port 443Fiddler2: Decrypt HTTPS traffic and Tunnel to host:443,但我的问题不同了。

我不想将Fiddler用作其他程序的代理。相反,我只想使用Fiddler的Composer选项卡通过上游代理发送HTTPS请求。我的代理配置和授权是正确的;发送HTTP请求的工作正常。

当我使用Fiddler的Composer向https://google.com发送HTTPS GET时,会导致超时(HTTP 502 / [Fiddler]与'google.com'的连接失败。错误:TimedOut(0x274c) )。

当我向https://google.com发送HTTPS CONNECT时,我收到HTTP 502 / [Fiddler] DNS查询失败。
                                                                                有人知道如何通过我的代理建立HTTPS隧道,然后发送GET请求吗?

1 个答案:

答案 0 :(得分:0)

要建立隧道,必须使用CONNECT到代理。您还必须包含主机标头,该标头在CONNECT请求中将目标加倍...例如

CONNECT www.google.com:443 HTTP/1.1
Host: www.google.com
etc

隧道启动后(例如,您从代理服务器获得200 OK),您需要先进行TLS握手,然后才能发送http请求(因为它现在通过https进行了解决)。例如

GET / HTTP/1.1
Host: www.google.com
etc.