我正在使用Delphi并使用Indy组件进行SSL连接。我有Fiddler2运行并能够看到SSL流量,但不得不将Indy升级到更新版本,因为它有一些错误。为了兼容Indy和OpenSSL,我还升级到了OpenSSL1.0.2a。在升级之后,它似乎已经切换到SSL3.3比以前使用的更新的协议。我按照http://blogs.telerik.com/fiddler/posts/13-02-11/fiddler-and-modern-tls-versions的描述安装了Fiddler4.5,.NET framework 4.5并启用了TLS1.2。我还将Fiddler的证书重新导入我信任的根证书,但是我仍然无法解密SSL流量。
以下内容是在Fiddler中写的: 这是一个CONNECT隧道,加密的HTTPS流量通过该隧道流动。 Fiddler的HTTPS解密功能已启用,但此特定隧道已配置为不解密。会话标志'X-No-Decrypt'设置为:'PeekYieldedUnknownProtocol'。 找到了与SSLv3兼容的ServerHello握手。 Fiddler提取了以下参数。 版本:3.3(TLS / 1.2)
我试图在字符串“X-No-Decrypt”中搜索Indy和OpenSSL源代码,但它似乎没有被包含在任何地方。根据小提琴文档,如果你不想让小提琴手解密这个特定的会话,你可以包含一个字符串,但我不知道这个字符串的位置在哪里。
有什么建议吗? 谢谢/符文
答案 0 :(得分:0)
文本PeekYieldedUnknownProtocol
表示当Fiddler查看CONNECT隧道中客户端发送的第一个字节时,这些字节不是HTTPS握手的字节。为了避免破坏流经隧道的任何类型的流量,Fiddler只是来回传递字节而不解释它们。
要进一步调试,最好的办法是使用帮助>与我联系。发送反馈Fiddler。如果您可以向我发送包含流量的SAZ文件(文件>保存会话存档),我可以进一步调查此问题。
如果无法共享SAZ文件,请至少右键单击“Web会话”列表中的“连接”,然后选择“属性”。使用x-CONNECT-Peek
标记的值更新您的问题。