1.对于流量分析基本认识
1)简介:网络流量分析是指捕捉网络中流动的数据包,并通过查看包内部数据以及进行相关的协议、流量分析、统计等来发现网络运行过程中出现的问题。
2)在我们平时的考核和CTF比赛中,基本每次都有流量分析这类题,对于流量包的分析取证也是一种十分重要的题型。通常这类题目正常 都是会提供一个包含流量数据的pcap文件,要我们从里面通过该文件筛选和过滤其中无关的流量信息,再根据关键流量信息找出flag或者相关线索。
对于我个人来说,前面作做这一类题只能简单的靠眼睛再加一点简单的过滤手法,最终找到flag也是相当的困难,还有很多关于whireshark使用方法没有学会,再者还有比较熟练的直接用脚本跑,所以 我打算再找找它其他的一些用法。
3)pcap流量包的分析通常都是通过图形化的网络嗅探器——wireshark进行的,这款嗅探器经过众多开发使用者的不断完善,现在已经成为使用最为广泛的安全工具之一。当然也是我做这类题最常用的工具之一了。
2.wireshark的基本使用
1)主界面简介
打开wireshark后,第一次进需要选择Capture,然后是interface,再下拉主菜单会出现两个对话框,里面会列出捕获数据需要使用的各种设备以及ip地址,选择需要使用的设备,点击start,之后就会把数据捕获并显示再框内,到后面就可以直接用whireshark工具打开pcap文件,它就会自动捕获流量包了
就像下面这样
一般选择本地出网的网卡,就能捕获本地的数据包了,如下:
2)快捷键和过滤手法
在我们分析数据时,会用到一些常用快捷键:
ctrl+m 标记数据包
ctrl+shift+N 跳到标记处
还有一些基于协议的过滤手法:
补充点稍微详细点的
一般情况在使用Wireshark分析capture.pcapng数据包文件时,这些数据中都会有非常多的ICMP报文,这报文中有大量的非正常ICMP报文,找出类型为重定向的所有报文,就会让我们将“报文重定向的数量”作FIag 值提交。 flag格式:flag{重定向数量}
过滤手法:icmp.typeeq5
知识点
每一个包都是通过数据链路层DLC 协议,IP协议和ICMP 协议共三层协议的封装。
DLC 协议的目的和源地址是MAC地址,IP协议的目的和源地址是IP地址,这层主要负责将上层收到的信息发送出去,而ICMP协议主要是Type和Code来识别,“Type:8,Code:0”表示报文类型为诊断报文的请求测试包,“Type:0,Code:0”表示报文类型为诊断报文类型请求正常的包。ICMP提供多种类型的消息为源端节点提供网络额故障信息反馈,
报文类型可归纳如下:
诊断报文(类型:8,代码0;类型:0代码:0);
目的不可达报文(类型:3,代码0—15);
重定向报文(类型:5,代码:0—4);超时报文(类型:11,代码:0—1);
信息报文(类型:12—18)。
然后是一些基于协议衍生出来的过滤手法,这里举一些http协议的
识别数据包数量
Wireshark自带功能会统计当前数据包的数量,过滤后根据过滤语句过滤后的数据包,统计数据包数
过滤语法;http:response.code==404
追踪流手法
追踪流手法是在我们平时考核比赛中,进行流量分析非常好用方法,它可以具体显示一个数据包的内容以及传输数据,简单的使用如下
比如下面这里追踪 MYSQL的传输流量,我们可以更清楚的看到 Hacker在攻击 MYSQL数据库时的路径
3)常用筛选命令方法
根据IP地址进行筛选
命令汇总
addr=192.168.1.122∥/根据IP地址筛选,包括源ip或者目的IP
p.src==192.168.1.122∥根据源IP地址筛选
dst==192.168.1.122∥/根据目的IP地址筛选
a.根据IP地址进行筛选
使用命令:ip.addr=10.255.0
命令大意:筛选出IP地址是10.255.0.1的数据包,包括源IP地址或者目的IP地址使用的是10.255.0.1的全部数据包。
b.根据源IP地址筛选
使用命令:ip.src==10.255.0.1
命令大意:筛选出源lP地址是10.255.0.1的数据包
c.根据目的P地址筛选
使用命令:ip.dst==10.255.0.1
命令解说:筛选出目的地址是10.255.0.1的数据包。
根据MAC地址进行筛选
命令汇总
eth addr==20. dc e6. f3: 78:: cc
eth. src==20: dc.e6. f3: 78: cc
eth. dst==20; dc. e6: f3: 78. cc
1.根据MAC地址进行筛选
使用命令: eth addr==20:dc:e6:f3:78:cc
命令解说:筛选出MAC地址是20:dc:e6:f3:78:CC的数据包,包括源MAC地址或者目的MAC地址使用的是20:dc:e6:f3:78:cc的全部数据包。
2根据源MAC地址筛选
使用命令:eth.src=20:dc:e6:f3:78:cc
命令解说:筛选出源MAC地址是20:dc:e6:f3:78:CC的数据包
3根据目的MAC地址筛选
使用命令: eth. dst==20:dc:e6:f3:78:cc
命令解说:筛选出目的MAC地址是20:dc:e6:f3:78:cC的数据包
题目实操
1.用whireshark打开题目附件,一个pcnpng文件
这里用http过滤一下,找到一个zip文件,有点与众不同
把它导出去再做观察
导出后解压,是六个txt文件,打开后全是md5值,猜测它应该并在一起是个什么东西,
这里解码一个文件发现它是一个二维码的一部分
那就把它合在一起,再次解码
解码得到flag值
flag{3819169573b7a37786d2ea39c6daef76}
2.