Wireshark系列之6 数据流追踪

以下内容主要是引用自合天网安中的一个实验案例:黑客A通过ARP欺骗,使用Wireshark获取了整个局域网内的网络流量信息。无意之中,他发现有人在某个网站上上传了一份文件。但是他不知道怎么样通过Wireshark去还原这份文件,没办法,他将监听到的数据包保存为了一份Wireshark的监听记录,打算去向你请教。你能帮助他找到那份上传的文件吗?

我们可以自己准备一张图片test.jpg,并随便找一个允许上传的网站,然后用Wireshark将上传的过程抓包,这里我已经将自己的抓包结果保存成文件catchme.pcapng,并在附件里提供下载。

打开抓包文件之后,会发现数据记录一共有344条。如果单纯的从开始到结尾去一条一条的审计,是非常费力的事情。

这里我们使用显示过滤器进行过滤,由于上传文件采用的是HTTP协议,因而使用过滤规则“http”,过滤之后发现数据包由原来的344个变成了137个,这样就很容易帮我们分析了。仔细分析,我们会在第209条数据包的info中看到upload这个词,我们怀疑这条就是涉及到上传的数据包。

由于上传文件都是采用POST方法,因而我们也可以使用过滤规则“http.request.method==POST”进行更精确的过滤,这时就只有47个数据包了。因而掌握数据包过滤,是熟练掌握Wireshark的必备技能之一。

虽然我们看到了有upload关键字,有POST方法,但是我们不能确定是不是真的就是上传文件的那个请求。双击第209号数据包进行专门分析,在应用层数据中可以看到确实是上传了文件,而且文件名是test.jpg。

在传输层部分可以看到,由于文件比较大,TCP协议将其分成了16个数据段Segment,每个数据段都是一个独立的数据包,点击各个Frame,就可以看到数据包中的内容。

但问题是每个数据包中都只包含了上传文件的一部分,要想还原上传的文件,就必须将这些被分片的数据包重新组合成一个整体。在Wireshark中提供了一项“数据流追踪”功能,就可以来完成这项任务。

回到Wireshark的主界面,在209号数据包上点击右键,选择“追踪流/TCP流”,

这时整个TCP流就会在一个单独的窗口中显示出来,我们注意到这个窗口中的文件以两种颜色显示,其中红色用来标明从源地址前往目的地址的流量,而蓝色用来区分出相反方向也就是从目的地址到源地址的流量。这里颜色的标记以哪方先开始通信为准,一般情况下都是由客户端主动发起与服务器的连接,所以大都是将客户端的通信显示为红色。

由于上传的文件都是在客户端发出的数据部分提交的,因而我们可以过滤掉服务器发回的响应信息。在下方的数据流向中选择从客户端到服务器的流向,这时候就没有响应部分出现了。

将数据流保存成原始文件,以便下一步处理。需要注意的是,在保存之前一定要将数据的显示格式设置为“原始数据”。

这里将文件的扩展名指定为.bin,以使用二进制形式保存文件。

在下篇博文中我们将利用WinHex从这个原始文件中将上传的图片还原出来。

时间: 2024-08-17 10:18:55

Wireshark系列之6 数据流追踪的相关文章

Wireshark系列之1 Wireshark介绍

凡是学网络的人对Wireshark必定都不陌生,但我之前对Wireshark也仅仅只是会用而已,技术层面非常浅.在2015年的信息安全管理与评估国赛试题中,对Wireshark的使用提出了很高的要求,另外国外有一份网络安全工具排行榜(http://sectools.org/),榜单中共包括了125个安全工具,其中稳居排行榜第一位的就是Wireshark.所有这些促使决心系统地学习一下Wireshark,并以其作为DVWA之后的下一个博客专题. Wireshark是目前使用最为广泛的开源抓包软件,

Wireshark系列之4 捕获过滤器

在Wireshark中往往会抓到很多数据,这时我们就需要用到过滤器Filter来筛选出我们所关心的数据包. Wireshark提供了两种过滤器: 捕获过滤器:在抓包之前就设定好过滤条件,然后只抓取符合条件的数据包. 显示过滤器:在已捕获的数据包集合中设置过滤条件,隐藏不想显示的数据包,只显示符合条件的数据包. 需要注意的是,这两种过滤器所使用的语法是完全不同的,在本篇博文中将介绍捕获过滤器. 使用捕获过滤器的主要原因就是性能.如果你知道并不需要分析某个类型的流量,那么可以简单地使用捕获过滤器过滤

Hadoop系列008-HDFS的数据流

本人微信公众号,欢迎扫码关注! HDFS的数据流 1 HDFS写数据流程 1.1 剖析文件写入 1)客户端向namenode请求上传文件,namenode检查目标文件是否已存在,父目录是否存在. 2)namenode返回是否可以上传. 3)客户端请求第一个 block上传到哪几个datanode服务器上. 4)namenode返回3个datanode节点,分别为dn1.dn2.dn3. 5)客户端请求dn1上传数据,dn1收到请求会继续调用dn2,然后dn2调用dn3,将这个通信管道建立完成 6

Asmack开发系列之通信数据流

上一节,我们介绍了XMPP的基础,还没说完,说到了通信洪流,然后就结束了.这一节,我们接着讲.主要是"stanzas"(节).上一节,我们说,区分stanzas,需要从它的名字,属性TYPE和子节点来区分.这一节,我们分别介绍:消息(Message),出席/上线(Presence),信息查询(IQ)以及可扩展性(Extensibility). 1,消息(Message) 消息<message/>是xmpp中的一种典型的"推"(Push)方法,它不需要回复

GNU开发工具——WireShark网络分析工具

GNU开发工具--WireShark网络分析工具 一.WireShark网络分析工具简介 1.WireShark简介 Wireshark是目前全球使用最广泛的开源网络封包分析软件(前身为Ethereal),由Gerald Combs编写并于1998年以GPL开源许可证发布.网络封包分析软件的功能是撷取网络封包,并尽可能显示出最为详细的网络封包资料. 2.WireShark架构 GUI:处理所有的用户输入输出(所有窗体,对话框等)Core:核心模块,通过函数调用将其他模块连接在一起Epan:包分析

wiresherk抓包之旅

wireshark的原名是Ethereal,新名字是2006年起用的.当时Ethereal的主要开发者Gerald决定离开他原来供职的公司NIS,并继续开发这个软件.但由于Ethereal这个名称的使用权已经被原来那个公司注册,Wireshark这个新名字也就应运而生了. Wireshark是世界上最流行的网络分析工具.这个强大的工具可以捕捉网络中的数据,并为用户提供关于网络和上层协议的各种信息,也是网络工程师.信息安全工程师必备的一个工具之一. Wireshark下载:https://www.

tcpdump 命令参考手册

对于 tcpdump 的使用,大部分管理员会分成两类.有一类管理员,他们熟知 tcpdump 和其中的所有标记:另一类管理员,他们仅了解基本的使用方法,剩下事情都要借助参考手册才能完成.出现这种情况的原因在于, tcpdump 是一个相当高级的命令,使用的时候需要对网络的工作机制有相当深入的了解. 在今天的文章中,我想提供一个快速但相当实用的 tcpdump 参考.我会谈到基本的和一些高级的使用方法.我敢肯定我会忽略一些相当酷的命令,欢迎你补充在评论部分. 在我们深入了解以前,最重要的是了解 t

借鉴一个比较标准的后端RESTful API

我们制定的 API 规范,使用了微服务架构所以做了一些改进,我们更偏向使用 http code 标识,不然需要自己处理成功或失败的逻辑,在 200 内再包一层显得啰嗦:并且微服务系列都不支持,Feign,监控等都需要自己改造. 当逻辑错误时,返回 http code 400,body 体内是具体的错误原因,也可以加上自定义的状态码,解决了 http code 不能满足业务状态的需求 ### 接口命名规范 **前端对接时如果发现后端提供的接口不符合规范有权拒接(包括后端对接爬虫),如接入了不符合规

CCF虚拟现实与可视化技术专委会丨面向增强现实的可视计算技术研究进展概述

https://mp.weixin.qq.com/s/I-rNwgXHEtwgdpkWzKtVXw 摘要 新一代增强现实技术需要依赖可视计算理论与方法解决大尺度复杂环境下的场景建模.内容生成.感知交互三个关键科学问题.本文从以上三个方面,介绍了面向增强现实的可视计算技术的主要研究进展.其中,场景建模主要涉及复杂场景定位.重建与建模,包括同时定位与地图构建.场景几何与材质精确重建与数字化.实时高质量动态环境重建等:内容生成主要涉及视觉一致性驱动的高逼真度虚实融合,包括场景渲染参数估计.虚拟物体嵌入