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

使用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.lryc.cn/news/240855.html

相关文章:

  • C#,简单修改Visual Studio 2022设置以支持C#最新版本的编译器,尊享编程之趣
  • 小程序Tab栏与页面滚动联动
  • Java,数据结构与集合源码,关于List接口的实现类(ArrayList、Vector、LinkedList)的源码剖析
  • 算法基础(python版本)
  • 使用Arrays.Sort并定制Comparator排序解决合并区间
  • 【机器学习】039_合理初始化
  • 使用Arrays.asList与不使用的区别
  • 基于可变形卷积和注意力机制的带钢表面缺陷快速检测网络DCAM-Net(论文阅读笔记)
  • el-table 对循环产生的空白列赋默认值
  • 新一代网络监控技术——Telemetry
  • java斗牛,咋金花
  • 深信服技术认证“SCSA-S”划重点:信息收集
  • 代码逻辑修复与其他爬虫ip库的应用
  • 字符串结尾空格比较相关参数BLANK_PAD_MODE(DM8:达梦数据库)
  • 微型计算机原理MOOC题
  • TensorFlow实战教程(十八)-Keras搭建卷积神经网络及CNN原理详解
  • uniapp为什么能支持多端开发?uniapp底层是怎么做的?
  • 《数据仓库入门实践》
  • 什么是arguments对象?
  • Java LinkedList链表、HashSet、HashMap
  • Linux中清除cache/buffer方法
  • github批量仓库克隆,git clone某个用户的所有仓库
  • 防爆智能安全帽、防爆手持终端,防爆智能矿灯守护安全,在煤矿安全生产远程可视化监管中的应用
  • 数据结构与算法【B树】的Java实现+图解
  • 2024中国人民大学计算机考研分析
  • 无人智能货柜:提升购物体验
  • 【OpenCV实现图像:可视化目标检测框】
  • C/C++---------------LeetCode第1436. 旅行终点站
  • 如何在AD上创建完整的项目
  • 实时错误’-2147217887‘多步OLB DB 操作产生错误。如果可能,请检查OLE DB状态值