9

我正在尝试查看某个应用程序如何与 SSL 中的服务器通信。基本上,当它声称已经完成了一些 SSL 通信时,该过程就会挂起。我想通过捕获流量来调试问题,但我不能真正使用嗅探器,因为 SSL 可能看起来像一个 hexdump。

有没有一个很好的中间人工具可以用作仪器?我只需要一些可以显示解密通信的东西。希望非常容易设置。我什至可以将应用程序指向我的机器可用的任何 IP 地址/端口(例如 localhost:8888),这样代理就可以了。此外,我可能可以将应用程序配置为接受任何证书。

您使用什么来模拟中间人 (mitm) SSL 攻击?

更新:我尝试了提琴手,但无法让它工作。我安装了 openssl 并输入了以下命令: openssl s_client -connect smtp.gmail.com:465

Gmail 用他们的证书和一个220 mx.google.com ESMTP .... 但是,Fiddler 不会捕获流量。我将提琴手中的 WinINET 选项设置为“对所有协议使用相同的代理服务器”。其他人可以让它工作(或不工作)吗?我想我需要找到一种方法让 openssl 使用代理。

4

3 回答 3

7

Fiddler允许您对自己实施中间人攻击,以查看 SSL 隧道内的内容。

Fiddler 为您的计算机生成唯一的根 SSL 证书,然后创建由根签名的会话证书。当您配置 Fiddler 为您解密 SSL 时,它充当您和目标之间的代理,使用站点的 SSL 证书解密流量,然后使用自己的证书重新加密。

您的浏览器/应用程序将看到不受信任的证书错误。您可以通过选择信任 Fiddler 的根证书来绕过此错误。

.Net Rocks 的人们做了一个关于使用 Fiddler 嗅探您的流量的精彩播客节目。

于 2010-01-26T00:07:29.003 回答
2

我没有将它用于此目的,但Fiddler应该能够做你想做的事。

Fiddler 是一个 Web 调试代理,它记录您的计算机和 Internet 之间的所有 HTTP(S) 流量。Fiddler 允许您检查所有 HTTP(S) 流量、设置断点以及“摆弄”传入或传出数据。Fiddler 包括一个强大的基于事件的脚本子系统,并且可以使用任何 .NET 语言进行扩展。

Fiddler 是免费软件,可以调试几乎任何应用程序的流量,包括 Internet Explorer、Mozilla Firefox、Opera 等等。

于 2010-01-25T23:53:05.370 回答
0

如果您正在使用非常有用的 Wireshark 嗅探器,那么如果您能够为其提供适当的密钥文件,您就可以让它解密 SSL 。

于 2010-01-26T00:07:58.690 回答