Wireshark抓取的数据包文件提取

时间:2024-03-26 18:35:53

(第一种方法 直接使用wireshark自带的导出)

分离图片文件)

wireshark在指定的数据流中提取文件很简单。先选中要提取文件的数据包。wrieshark都会标明文件的类型。所以我们也就能够区分出这是一个什么类型的文件。

Wireshark抓取的数据包文件提取

选中图片的数据一大行

Wireshark抓取的数据包文件提取

右键,导出数据包

Wireshark抓取的数据包文件提取

给导出的文件起个名字。然后保存即可。

Wireshark抓取的数据包文件提取

 

成功从wrieshark中分离出了图片

 

Wireshark抓取的数据包文件提取

分离文本文件)

 

Wireshark抓取的数据包文件提取

Wireshark抓取的数据包文件提取

 

 

成功分离

 

 

(第二种方法,使用binwalk)

分离图片文件)

binwalk是一个很好用的自动化分离文件的工具。它的参数有很多。但是最常用的就是-M和-e

-M              递归扫描一个文件

-e               自动提取已知文件类型

直接binwalk + 文件名 就是探测该文件中隐含的其他文件

Wireshark抓取的数据包文件提取

直接使用-e选项提取文件

Wireshark抓取的数据包文件提取

这将会自动在当前目录自动生成一个文件夹。里面就是提取出来的文件。但是。。。怎么没有图片。。。

Wireshark抓取的数据包文件提取

那看起来它自动化提取没有提取出图片来。。但是它提取了文件

 

(第三种方法,binwalk + dd)

既然自动化不能提供我们想要的。那么我们就自己手动控制吧。

dd是linux系统上的一个命令。并不是什么工具。它是用于在一个指定的块上拷贝文件。并根据需要转换。这个特性很适合我们提取文件。

提取文件的dd命令格式

dd if=源文件名 bs=1 skip=开始分离的字节数 of=输出文件名

参数解析:

if        输入文件名。即需要从中提取文件的文件

bs      设置同时读写块的大小。这里一般设置为1即可

skip   从文件开头跳过指定的块数后再开始拷贝。这个如果不理解怎么用不用紧张。接下来配合binwalk就明白了。

of       输出文件名。即提取完成后拷贝的文件名。

 

首先先binwalk探测一下文件。

Wireshark抓取的数据包文件提取

 

假设我要提取箭头所指的那个文件。我们可以看到它的DECIMAL的值为16150512。我们构建这样的一个dd命令

dd if=test2.pcapng bs=1 skip=3040 of=test2.jpeg

Wireshark抓取的数据包文件提取

 

这里的skip就是binwalk中输出的DECIMAL的值。相当于一个索引。就能够提取这个文件。

但是。。。效果好像有点渣。。。。

Wireshark抓取的数据包文件提取

原图:

Wireshark抓取的数据包文件提取

 

Emmm…..别问我,我也不知道为什么。。。

(第四种方法,foremost)

foremost也是Kali中带有的一个自动化文件提取的工具。他的参数也很简单。常用的也就-i,-t,-o

-i       指定输入源文件

-t       指定提取的类型,指定什么类型就只会提取什么类型的文件

-o     指定输出文件夹

Wireshark抓取的数据包文件提取

 

可以看到它就生成了一个文件夹。我们点开看看。

Wireshark抓取的数据包文件提取

发现他已经按照分类排好了。有点智能啊。看看audit.txt里面写的什么

Wireshark抓取的数据包文件提取

 

是这个文件里面的隐含文件信息。

点进jpg里面查看一个图片。发现。。。。

Wireshark抓取的数据包文件提取

 

这是什么东西嘛。。。感觉这些自动化提取的工具提取图片不是很好啊。。

png文件夹里都是小图标还好。没有像jpg那样子。

Wireshark抓取的数据包文件提取

wireshark的数据文件还是wireshark自己提取好些。毕竟是它自己的东西。。这些工具更多的用来提取其他文件的隐写。对于文件隐写的话。。。。先留个坑。。。来日再填。