当Fiddler可以解密时,为什么要使用HTTPS

Joe*_*org 30 encryption debugging https networking fiddler

我刚刚发现Fiddler可以解密HTTPS流量.

例如,我使用HTTPS在localhost上部署了一个网站.在Fiddler中检查数据包时,我能够查看所有信息,因为它可以选择解密它.

我的问题是,当Fiddler可以轻松解密时,为什么要使用HTTPS?

And*_*ios 33

提琴手执行一项MITM技术.

要使其工作,您需要信任其证书:

http://www.fiddler2.com/fiddler/help/httpsdecryption.asp

如果你不这样做,它不会解密任何东西......

Fiddler2如何调试HTTPS流量

答:Fiddler2依赖于HTTPS拦截的"中间人"方法.在您的Web浏览器中,Fiddler2声称是安全的Web服务器,而对于Web服务器,Fiddler2模仿Web浏览器.为了假装是Web服务器,Fiddler2动态生成HTTPS证书.

Fiddler的证书不受您的Web浏览器信任(因为Fiddler不是受信任的根证书颁发机构),因此当Fiddler2拦截您的流量时,您会在浏览器中看到HTTPS错误消息[...]

  • 提供的答案很好.如果你对内部的工作原理感到好奇,那么对于类似的工具--MITMProxy - 在幻灯片10和11上有一个很好的解释 - https://www.owasp.org/images/7/73/SlayingDragons-ccbysa30nz.pdf.正如Andrea Ligios指出的那样,Fiddler2和MITMProxy都要求用户信任中间证书.然后将请求转发到上游(合法)HTTPs站点.代理从合法服务器类似地接收响应,解密就像它是客户端一样,使用中间密钥重新加密并转发到客户端. (3认同)

Ruc*_*ana 11

要解密HTTPS流量,必须先将Fiddler的根证书安装到"受信任/根证书"列表中.Fiddler的根证书不是 Root证书,默认情况下随您的操作系统一起提供.操作系统通常会在您尝试安装时警告您.

在这样做时,您明确地开始信任由Fiddler的根证书签名的任何证书.当您现在发出https请求时,Fiddler将与您一起执行中间人攻击.

假设您以https://google.com的形式提出请求.Fiddler现在将充当实际的Google服务器,并将为Google.com创建虚拟证书,并使用Fiddler的Root证书对其进行签名.您将收到由Fiddler签署的虚拟证书.此证书将通过您的设备验证,因为Fiddler的Root证书现在位于您的可信证书中.现在,您的设备将通过安全的HTTPS连接开始与Fiddler通信.Fiddler会将您的消息转发给Google.com并返回给您.当然,Fiddler将能够解密它们.

需要注意的是,从Fiddler到Google的流量将通过第二个Secure https频道进行.

因此,不必担心https提供的安全性.