gdcrj(广东出入境网上服务厅官网)

一 前言

wireshark这个软件的可以说是大名鼎鼎,简单来说,就是网络包分析的软件,包括包的解析,流量分析,网络包交互分析等,而且是跨平台,如果要学习网络协议,分析网络流量,wireshark肯定是离不开的神器,tshark 可以看做wireshark的命令行版本,基本可以实现wireshark的大部分功能。

二 如何用wireshark中提取http图片

提取http中传输的文件或图片,一般有两种办法,一种是采用导出对象的方法,一种是单个包内容复制另存。

2.1 导出对象方式

菜单路径: 文件-->导出对象-->HTTP ,会显示传输中的文件内容:

说明:

如上图,我们可以保存文件,预览文件或图片可以根据文本和content type 方便过滤文件

tshark相关命令:

tshark -r httpexport.pcapng --export-objects http,./export/2.2 复制流数据另存

既然pcap是包括所有的文件传输信息,那么我们可以查询到图片的具体传输报文,将其另存为对应格式文件即可,比如我们可以这样搜索:

http contains "slide2.png"

搜到包之后如下展示:

然后,选中这行,右键跟踪tcp流或http流:

显示如下界面:

需要注意几点:

Show data 要设置为Hex转储方式。找到数据边界,通过我们看http的返回头,结尾为0d0a 0d0a 即图中红色位置。找到边界后复制下面蓝色内容,粘贴到UE等编辑器里面。通过列编码模式,去掉前面的序号和后面的ASCII展示。网上下载winhex软件,这个软件可以编辑二进制。选择编辑->粘贴板数据->粘贴到新文件把这个文件另存为222.png 如下图

三 https 私钥配置 3.1 https 配置私钥方式解密

https作为一个加密的通信协议,如果没有私钥或通讯中的保存文件,是没办法进行解码的,如果非对称加密的算法采用RSA方式,可以通过配置https私钥的方式进行https的解密 。

路径为: 编辑->首选项->Protocols->TLS 点击RSA keys list中的Edit... 按钮, 在弹出的对话框中填写ip地址(即https服务器的ip),port(https的通讯端口一般为443),Protocol 我们这里面为http,Password(加密私钥的加密密码,如果部加密可以为空,Key File 来指定我们的私钥文件。

比如我的测试地址的私钥:

-----BEGIN RSA PRIVATE KEY-----MIICXAIBAAKBgQCr7be/zFXRYeapyZEi6QK+HvB8wjb82Wu7gNfoTv/uj3I1lsVMPPFpJ6WGAUse8xkZN/2/ODTws779KfwdQAiGgbbst9Vutwty7oVNZoB/5GWg6mu2paq5m08+Okfs+hUVVR98Bcm5PIxP1YsUV6mS+tALcUZSKk6Yt3FIUtYKbQIDAQABAoGAflpCBG8DUtIEVxuP0nw0S80pKEcDamfPSQmzo0MLzCMX6FJZxWG0eXdtqkIhFynJdEM19OY14f/3iM7mPgjlOd21DiwHJ2Pj3a+TqDVh9c2auQp38aI/t3UDU6ym98ReXycf1pC71y2plURdsovFOVrmyISblFGKug0WpBI5DnECQQDwdrDtj+mQvqga7rtswzLNXcqAmdhBpyTfKl/tBmimUWGEzXH6mfJchnLmMvqiF0uW2pNkPT8JzbJzRguarTI3AkEAtwlyBThtNxQfyYZUBDAtTrsX+ZnC3iDTnsSo+uYzMy6ExvMqQCfN99oirlAtDHcPJ79y2GS5gdcMyqkNQstmewJAR8wop8YAhydmKiR98cuWr5sBi8RjvbaaW8fbPHpdZMuHwo9VKO4uX1IFnJY8H4m1GCXLPHLND7BLR//yFwz/oQJBALZRskGA80jpwr/6DbYeRwMlWbxGbNTV3fVH7wn8QwO4UonZrTw6ae94WRNIyZahAXeWO89QhXfPve4gdhUShgECQBPHZcgQePzeDZf5/SS5iiv8ecFpyAd8Revqp/oN+PQSI9Z999IqEcrCgpP7BzHnoRJwYExxVU3sSjXzpqw9DdE=-----END RSA PRIVATE KEY-----3.2 通过logfile方式解密

不是所有的https版本的数据, 以通过私钥的方式解密的,有的通信密钥无法通过私钥完整还原出当时的交互(中间的对称密钥保存在内存,每次交互都会改变)。如果我们可以在本机通过浏览器访问的网站,浏览器在和https服务器交互的时候,肯定有这次通话的密钥,我们保存了浏览器和https服务器交互的日志,通过这个日志wireshark也可以解密https的通讯包,如下配置: 配置环境变量:SSLKEYLOGFILE 值为具体的保存日志的文件路径 如下:

关闭所有chrome浏览器,且要打开chrome浏览器的开发者模式(在浏览器三个点点进去后找到扩展程序的右上方开启),然后开始抓包访问https的网站,记录的key.log 大概内容如下:

然后同样和3.1同样解密的配置配置下pre master key的路径即可:

关闭后,可以看到解密的内容是下面这个样子:

注意没事还是关闭这个开发者模式,或者删除环境变量,因为key.log文件被黑客获取,再抓包,那就算访问https网站也部安全了,这是比较可怕的事情,包括你的淘宝的账号密码,有可能都会被轻易获取了。