提示
X
本案例来自tskb,请前往tskb修改源内容:立即前往
'>

进阶排查-步骤四:如何解密前端HTTPS加密数据

|

问题描述

SSL卸载虚拟服务访问异常,默认前端数据(PC与AD间)都是https加密的,无法深入分析与后端数据是否匹配,因此需要获取私钥解密前端数据。

解决方案

1、打开前端数据包,随便点击一个目的端口为443的包,然后鼠标右击,选择RSA keys list...




2、 按提示输入相应信息与私钥key的位置,然后点击生效。(需要提前从设备导出私钥文件


3、正常解密后,便可以在前端加密包中看到应用层HTTP的数据了。

建议与总结

解密有一些特殊之处,否则有私钥也不一定可以解密成功,如下汇总了解密失败的可能性:

1、没有抓到完整的TCP连接建立和SSL握手阶段数据包,例如抓包没加-s0条件等。
2、没有正常下发证书到客户端,而是出现了会话复用,也会出现解密失败。


3、wireshark引用的server.key路径中包含中文也会出现解密失败,一律使用英文目录。
4、SSL策略引用了ECDHE这些复杂的算法,有证书也无法解密,建议测试可以先去除ECDHE相关的复杂算法,使用RSA相关算法。


5、server.key是密码加密的,需要先把server.key转换成无密码的才可以。
转换命令:openssl rsa -in server.key -out server1.key 随便找个linux系统设备,比如AD即可。
server.key是密码加密的,输入这条命令回车,会提示输入密码,输入后,输出的server1.key就是无密码的。
国密证书的命令类似,具体如下:
openssl ec -in /etc/sinfor/ssl/cert/2/server.key -out server2.key   输完该命令,再输入新建CSR设置的密码即可。
PS: /etc/sinfor/ssl/cert/2/是key文件所在的文件夹,2视实际情况而定。
最后可以执行 cat server2.key 命令检查下,如果没有 Proc-Type: 4,ENCRYPTED 这种关键字,表示转换成明文。

我要分享
文档编号: 250189
作者: admin
更新时间: 2023-05-22 17:55
适用版本: