我有一个C ++应用程序,它与自己的服务器进行SSL / TLS通信,我没有任何访问该服务器的权限。我正在试图找出它从我的PC发送到服务器的内容。
我尝试了打嗝和小提琴手,但它没有用。该应用程序不支持代理,所以我尝试使用proxifier将流量路由到burp和fiddler,但它不起作用。
所以我想出了这些文章https://isc.sans.edu/forums/diary/Psst+Your+Browser+Knows+All+Your+Secrets+/16415和http://ask.wireshark.org/questions/4229/follow-ssl-stream-using-master-key-and-session-id
我只需要知道,如何找到Master-key和Session-ID来解密SSL / TLS流量。
答案 0 :(得分:0)
这取决于所使用的TLS密码套件。如果密码套件使用前向保密(DHE),则无法解密流。如果它使用RSA加密,那么您至少需要服务器的私钥。如果它还使用客户端身份验证,那么您还需要客户端的私钥。如果它使用对称加密,则需要来自其中任何一个的对称(主)密钥。
但是如果你做有一个C ++应用程序,我只会将日志记录添加到该应用程序(在最低级别)。
答案 1 :(得分:0)
您可以在x86 windows上使用以下alrternates
SOCKTRC如果此应用程序在Windows结帐时 http://blogs.msdn.com/b/emmanubo/archive/2007/08/03/socktrc-tool.aspx
HTTPREPLAY - 通常用于浏览器,但这里可以用来查看UI中的响应