我有一个通过https连接到Web服务的客户端应用程序。我需要“嗅探” Web服务和客户端之间的所有网络流量,以检查一切是否正常,即,我必须调试连接。

我尝试过Wireshark,但是由于我没有服务器私钥,因此,wireshark屏幕上显示的数据当然是加密的。

当我无权访问服务器本身并因此无法访问私钥和其他相关内容时,是否可以观察客户端和Web服务之间的ssl网络流量?

提前致谢。

最佳答案

参见:Debugging SSL communications

从理论上讲,我知道这是可以做到的-您可以设置一个与目标Web服务进行通信的代理,将您的应用程序指向通过此代理进行连接。它是一个已知的限制-Https假定您信任计算机上安装的所有代理和证书。它是Man-in-the-middle attack的形式。

查看Fiddler是否有用。


  Man-in-the-middle attacks
  
  在一个
  中间人攻击,攻击者
  拦截用户流量以进行捕获
  凭证和其他相关
  信息。然后,攻击者使用
  该信息可访问实际
  目标网络。在此期间
  过程中,攻击者通常为
  作为代理/网关呈现
  向用户提供虚假的SSL VPN站点;这个
  代理/网关通过任何
  用户进入的身份验证
  真正的目标网站。

关于web-services - 如何调试SSL连接?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/6344246/

10-17 01:58