我有一个客户端虚拟机和服务器虚拟机使用SSL通信。 客户端VM使用CLI运行wireshark捕获
Wireshark GUI在另一台机器上本地运行。
作为客户端VM上的USER,我使用python脚本通过SSL启动了一个RESTful HTTP会话。
我使用wireshark捕获了对话,现在要解密应用程序数据。
我复制了捕获的文件本地机器,现在想要分析应用程序数据。
我有SSH访问只有客户端虚拟机,并按照https://wiki.wireshark.org/SSL的步骤使我相信我应该
1)将客户端虚拟机上的/home/USER./ssh/id_rsa的内容复制到本地机器上。
2)指向SSL首选项RSA密钥文件列表中的文件。 3)在相同的SSL首选项中configurationIP地址,端口
然后我希望能够查看encryption的数据,但我仍然可以看到
我的理论是,我正在使用不正确的RSA_PRIVATE_KEY,所以我想确认在SSL会话中使用哪个密钥。
如果RSA PRIVATE KEY是正确的,还应该检查什么?
您需要通过SSL连接的HTTP会话的远程端点的实际私钥。
一个很好的例子: 如何使用Wireshark解密SSL和TLSstream量
1 – 启动Wireshark并打开networking捕获(encryption的SSL应该类似于下面的屏幕截图)。
2 – 从菜单中,转到编辑>首选项。
3 – 在“首选项”窗口中展开“协议”。
4 – 向下滚动并selectSSL。 在SSLdebugging文件字段中inputdebugging文件的位置和文件名。
5 – 在RSA密钥列表字段中,单击编辑>新build,然后添加以下信息:
哪里:
IP地址:是带有私钥的服务器/设备的IP地址
端口:SSL / TLS通常为443
协议:通常是HTTP
密钥文件:是私钥的位置和文件名。 这是您尝试解密stream量的SSL虚拟服务器的证书密钥对中使用的密钥。 所有SSL密钥和证书都保存在NetScaler设备的config / ssl目录中。 要使用密钥解密stream量,应将其保存到本地磁盘,并且应在解密stream量时指定此path。
密码:input您在导出服务器证书时分配的密码。
6 – 解密SSLstream量(解密的SSL应该类似于下面的屏幕截图)。