Wireshark:又一个可以查看https消息内容的工具

我们在接口测试和故障诊断调试时,需要查看消息里边的内容,如果是http消息可以通过wireshark抓包分析软件看到,但https消息内容在传输过程中是加密的,怎样才能看到https加密后的消息呢?

从技术上来说,需要拿到密钥,通过密钥对消息内容进行解密。

从难易程度上来说,有两个难题:获取密钥和密钥解密。密钥是不会在交互过程中传输的,对于第3方,拿到密钥的可能性不大或者非常难。对于密钥解密,非专业人士是不易做到的,最好的方式是借助于现有的工具。

今天介绍一个方法:wireshark中查看https消息内容的方法

选中Wireshark主菜单Edit->Preferences,将打开一个配置窗口;窗口左侧是一棵树(目录),你打开其中的Protocols,将列出所有Wireshark支持的协议;找到SSL并选中,右边窗口里将列出几个参数,“RSA keys list”用于配置服务器私钥,其格式为:,,,

各字段的含义为:

    ---- 服务器IP地址

  ---- 服务器SSL的端口

---- 表示SSL里加密的是什么协议,对于HTTPS,这项应该填HTTP。

---- 服务器密钥文件,文件里的私钥必须是明文(没有密码保护的格式)。

如果设置单个这样的配置(该抓包内容可以是客户端的,也可以是服务端的),填写为192.168.1.1,8443,http,C:/myserverkey/serverkey.pem

如果设置多个这样的配置(该抓包内容是客户端的,需要查看该客户端和多个https服务端的消息内容),可以用分号隔开,填写为192.168.1.1,8443,http,C:/myserverkey/clearkey.pem;10.10.1.2,443,http,C:/myserverkey/clearkey2.pem

如何生成没有密码保护的密钥?

用如果生成服务器私钥的命令类似如下:

  openssl req -newkey rsa:1024 -keyout serverkey.pem -keyform PEM -out serverreq.pem /

            -outform PEM -subj "/O=ABCom/OU=servers/CN=servername"M

通过服务器私钥文件serverkey.pem可以导出服务器私钥明文文件:

  openssl rsa -in serverkey.pem > clearkey.pem

执行命令式需要输入私钥的保护密码就可以得到私钥明文文件clearkey.pem了。

版权声明:
作者:ht
链接:https://www.techfm.club/p/60921.html
来源:TechFM
文章版权归作者所有,未经允许请勿转载。

THE END
分享
二维码
< <上一篇
下一篇>>