Ssl 在clear中捕获HTTPS流量?

Ssl 在clear中捕获HTTPS流量?,ssl,https,man-in-the-middle,Ssl,Https,Man In The Middle,我有一个与远程web服务对话的本地应用程序(我没有编写,也无法更改)。它使用HTTPS,我想看看流量中有什么 我有什么办法可以做到这一点吗?我更喜欢Windows系统,但我很乐意在Linux上设置一个代理,如果这能让事情变得更简单的话 我正在考虑的是: 通过黑客攻击我的主机文件(或设置备用DNS)重定向网站 使用自签名(但受信任)证书在该站点上安装HTTPS服务器 显然,WireShark可以查看HTTPS中的内容,如果您向其提供私钥。我从来没有试过这个 不知何故,将此流量代理到真正的服务器(即

我有一个与远程web服务对话的本地应用程序(我没有编写,也无法更改)。它使用HTTPS,我想看看流量中有什么

我有什么办法可以做到这一点吗?我更喜欢Windows系统,但我很乐意在Linux上设置一个代理,如果这能让事情变得更简单的话

我正在考虑的是:

  • 通过黑客攻击我的主机文件(或设置备用DNS)重定向网站
  • 使用自签名(但受信任)证书在该站点上安装HTTPS服务器
  • 显然,WireShark可以查看HTTPS中的内容,如果您向其提供私钥。我从来没有试过这个
  • 不知何故,将此流量代理到真正的服务器(即,这是一次全面的中间人“攻击”)
  • 这听起来合理吗?WireShark真的能看到HTTPS流量中的内容吗?有人能给我指出一个合适的代理(以及相同的配置)吗?

    做你想做的事吗

    什么是小提琴手

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

    Fiddler是免费软件,可以调试 来自几乎所有国家的流量 应用程序,包括互联网 浏览器、Mozilla Firefox、Opera和 成千上万


    您需要为本地应用程序设置一个代理,如果它不遵守代理设置,请在外出之前放置一个透明代理并将所有https流量路由到其中。像这样的东西可以是中间的“人”:

    此外,以下是有关如何使用wireshark存档此文件的简要说明:

  • 对于使用https代理进行监视,这取决于握手的类型。如果您的本地应用程序没有通过CA的签名检查服务器的证书(您不能伪造),并且服务器没有检查您的本地应用程序的证书(或者如果您需要在https代理上设置证书),那么您可以设置https代理来监视https流量。否则,我认为用https代理监控流量是不可能的

  • 您可以尝试的另一种方法是在客户端程序的例程中添加instrumentation probe,它在该例程中从https库发送和接收消息。它需要一些逆向工程的工作,但应该适用于所有情况


  • 我推荐WireShark,它是跟踪不同流量的最佳工具。尽管如此,我不确定打开SSL后您会看到什么。也许,如果您为其提供证书?

    Wireshark肯定可以将TLS/SSL加密流显示为明文。但是,您肯定需要服务器的私钥来执行此操作。私钥必须作为首选项下的SSL选项添加到Wireshark。请注意,只有当您可以从一开始就遵循SSL流时,这才有效。如果重新使用SSL连接,它将不起作用

    对于Internet Explorer,可以通过使用“Internet选项”对话框清除SSL状态来避免这种情况(SSL会话重用)。其他环境可能需要重新启动浏览器,甚至重新启动系统(以避免SSL会话重用)

    另一个关键约束是必须使用RSA密码。Wireshark无法解码使用DFH(Diffie Hellman)的TLS/SSL流

    假设您可以满足上面的约束,“跟随SSL流”右击命令工作得相当好。

    您也应该考虑。根据回答时的产品说明:

    Charles是一个HTTP代理/HTTP监视器/反向代理,它使开发人员能够查看其计算机与Internet之间的所有HTTP和SSL/HTTPS通信。这包括请求、响应和HTTP头(其中包含cookie和缓存信息)


    是的,它可以充当HTTPS请求的中间人代理——请注意,它提供了一个未签名的证书,因此,如果你的应用程序需要可信证书,你必须禁用此要求,或者信任证书——Fiddler没有建议:我让它从Internet Explorer和Chrome查看HTTPS流量;现在看看它是否适用于有问题的应用程序……除了有问题的应用程序仅使用管理员权限运行,而且Fiddler似乎不想在我的管理员帐户下安装HTTPS证书(我大部分时间都运行LUA)。您完全可以将Fiddler自签名根证书复制到计算机范围的受信任根存储中。证书是不够的。否则我们都将解密所有SSL通信。你需要一个私钥来解密流量。。。正如OP所指出的那样…设置此设置的特定步骤(或到帖子的链接)将非常好。