当前位置: 首页 > article >正文

使用Wireshark提取流量中图片方法

0.前言

        记得一次CTF当中有一题是给了一个pcapng格式的流量包,flag好像在某个响应中的图片里。比较简单,后来也遇到过类似的情况,所以总结和记录一下使用Wireshark提取图片的方法。

        提取的前提是HTTP协议,至于HTTPS的协议需要导入服务器私钥,多了私钥解密的过程。本篇比较简单,使用HTTP协议测试和记录。

        提前准备工作:

        1、准备Wireshark,Wireshark是长期霸榜sectools前三软件,是强有力的抓包和流量分析工具,真的很值得每个IT人士学习和掌握的。我使用的是Portable版,也就是免安装绿色便携版:WiresharkPortable64.exe;

        2、找一个http的网站,比如:中国人事考试网人力资源和社会保障部人事考试中心是直接隶属于人力资源和社会保障部的事业单位。按照部赋予的职能,人事考试中心主要承担公务员录用考试、专业技术人员资格考试、公务员遴选考试、中央单位接收安置军转干部考试和事业单位公开招聘考试等五大类,50余项考试的命题、阅卷、考务组织、考试技术指导和考试服务等工作。icon-default.png?t=N7T8http://www.cpta.com.cn/        3、笔记本使用有线或wifi方式接入互联网。

        4、获取流量。

        打开Wireshark,选中对应网卡,点击以后就开始开始捕获分组;

        这时候用浏览器打开刚才的网站页面,等待也面加载完毕后,点解左上角的方块停止抓包。

        或者可以直接使用Wireshark打开已经捕获的流量包。

        在流量过滤栏中输入http,用来过滤,只显示http流量。    

        这时候就过滤得到纯粹的http流量,然后就可以开始提取图片了。 

1、方法一

        第一个提取图片的方法是Wireshark提供的,他可以自动导出不同类型的图片。

        点击文件---导出对象---HTTP。

        选择image/gif,点击全部保存。这里有3个选项,经我测试,不管选哪一个都会把不同后缀名的图片全部导出。所以这里只需要任选一个类型导出到文件夹即可。

        这个是最简单的办法。好像导出文件当中会混入个别其他格式的文件,不过图片文件应该是全在的。

2、方法二 

        第二个办法是也是通过Wireshark的工具对图片进行导出和预览。

        找到HTTP  200 OK 的响应包,这里有2个,可以对比一下不同内容。

        对比HTTP协议分析出的传输内容:

        可以看到一个是text/css,一个是jpeg图片格式。右键点击JPEG File Interchange,选择显示分组字节。

        在弹出窗口中可以看到显示的图片,如果不是,更改下面的显示为:图像。

 

         在刚才菜单当中如果选择导出分组字节流相当于把图片另存为,直接保存下来。

          这种办法好像获取到的图片不是最全的,只有某些图片会显示在HTTP协议下面。

3、方法三

        选中刚才HTTP  200 OK响应包,右键单击选择追踪流。

        HTTP流或TCP流都可以。

       

        一般情况下会是上图样子,可以把Shwo data as 改为hex 转储。

         找到对应的响应文件内容附近,再往下看到右边ASCII显示乱码的时候大概就是文件内容的开始。ASCII 

        通过搜索得知jpeg文件的开头和结尾分别是FF D8和FF D9。

         通过查找可以找到字节位置。

        中间内容还比较多,我只截取部分截图。然后通过选择,复制。然后使用UE或者Notepad++来编辑内容。把前面的8位和后面的ASCII显示内容删除。

        Notepad++可以按alt来按列编辑,内容多的话可以按shift+alt+箭头再加up或down键快速翻页。

        删除多余内容后,得到:

        然后全选内容,复制,粘贴到winhex当中。

        winhex提前建立一个1字节的空白文件,粘贴时提示扩展。粘贴板格式时选择ASCII Hex。

        内容粘贴完毕后就可以另存为图片格式。2.jpeg

4、总结

        第一种方法最简单最全面,应该不会有遗漏,第二种的话可以快速显示一张图片。

        第三个办法是舍近求远,简单事情复杂化的办法。不过通过这个过程可以理解文件类型、文件开头结尾内容;使用winhex编辑文件等过程,也挺好玩的。


http://www.kler.cn/a/149388.html

相关文章:

  • 去地面算法——depth_clustering算法调试(1)
  • PHP搭建开发环境(Windows系统)
  • 如何提高自动驾驶中惯性和卫星组合导航pbox的精度?
  • Vim9 语法高亮syntax 在指定的缓冲区和窗口执行命令
  • 综合案例铁锅炖(CSS项目大杂烩)
  • OSS文件上传
  • JSP forEach 标签遍历map集合
  • 【nlp】4.5 迁移学习实践项目(相关概念、中文分类、填空、句子关系、模型微调)
  • Less 安装教程
  • Java第二十章
  • Android 12.0 禁用adb reboot recovery命令实现正常重启功能
  • Android控件全解手册 - 任意View缩放平移工具-源码
  • Oracle整体架构
  • IP-Adapter:文本兼容图像提示适配器,用于文本到图像扩散模型
  • 振南技术干货集:znFAT 硬刚日本的 FATFS 历险记(9)
  • 【代码】数据驱动的多离散场景电热综合能源系统分布鲁棒优化算法matlab/yalmip+cplex/gurobi
  • java学习part21枚举
  • 选择跨网数据摆渡系统时,你最关注的功能是哪些?
  • 设置MATLAB启动时弹到上次退出时的工作文件夹
  • java List集合(ArrayList,LinkedList,Vector)
  • 【黑马程序员】——微服务全套——实战篇1
  • 5 时间序列预测入门:LSTM+Transformer
  • 数组中的第 K 个最大元素(C++实现)
  • UE5学习(游戏存档,两种适应性的射线检测,时间膨胀)
  • 解决Python中删除临时文件时的文件占用问题
  • C++调用GPIB驱动头文件ni488.h内容详细分拆解