我想知道是否有一种简单(或困难)的方法可以从 java 小程序中窥探安全套接字?(没有源代码)
这里的目标是确切地知道什么信息发送一个(非常好的混淆)小程序。
我以为我可以简单地为自己编译一个带有日志功能的修改后的 java 版本,但出于安全原因,java 的完整源代码不可用......
使用小程序接受的安全证书设置代理服务器。之后,您只需将浏览器配置为使用该代理,并且小程序应使用相同的配置。
请参阅https 是否可以防止代理服务器的中间人攻击?了解它在技术上是如何工作的。
您将需要一些东西: 一个可以充当 Web 服务器的代理,并且可以通过您的浏览器使用真实服务器的名称访问该代理。您将需要为此组合创建一个有效的证书,除非将小程序配置为接受来自不受信任来源的证书(没有 CA 机构会为“google.com”颁发证书,以便您可以提供该证书,否则这并不重要)到您的代理)。
谷歌搜索“中间人攻击 ssl 代理”会发现许多应该有用的链接。
这篇文章似乎描述了一个开箱即用的解决方案:Understanding Man-In-The-Middle Attacks - Part 4: SSL Hijacking
它没有提到小程序,但Fiddler可能符合要求(来自Capturing HTTPS traffic in the clear?)
只需在 JVM 属性中设置 -Djavax.net.debug=all 即可。您将从网络堆栈的不同层获得各种输出,包括预加密的 SSL 流量。
如果您在谈论 SSL,那么如果可能的话,它就不安全了,而且它是安全的,所以它不是。