一、Wirshark
- Wireshark是一个可以进行数据包的捕获和分析的软件。
- 网卡在对接收到的数据包进行处理之前,会先对它们的目的地址进行检查,如果目的地址不为本机的话,就会丢弃这些数据,相反就会将这些数据包交给操作系统,操作系统再将其分配给应用程序。如果启动了WireShark的话,操作系统会将经过网卡的所有数据包都复制一份提供给它,这样我们就可以在WireShark中查看到本机所有进出的数据包了。
1.1 数据过滤
ip.src == 源ip地址
ip.dst == 目的ip地址
eth.dst ==目标mac地址
eth.addr==MAC地址
http.request.method==“GET” 筛选HTTP请求方法为GET的 流量包
http.request.method==“POST” 筛选HTTP请求方法为POST的流量包
http.request.uri==“/index.php” 筛选HTTP请求的URL为/index.php的流量包
http.request.uri contains eval url中包含eval关键字
http.response.code==200 http请求状态码为200
http contains “FLAG” 筛选HTTP内容为FLAG的流量包
tcp.dstport == 80 筛选tcp协议的目标端口为80的流量包
tcp.srcport == 80 筛选tcp协议的源端口为80的流量包
udp.srcport == 80 筛选udp协议的源端口为80的流量包
arp/icmp/http/ftp/dns/ip 筛选协议为arp/icmp/http/ftp/dns/ip的流量包
udp.length ==20 筛选长度为20的udp流量包
tcp.len >=20 筛选长度大于20的tcp流量包
ip.len ==20 筛选长度为20的IP流量包
frame.len ==20 筛选长度为20的整个流量包
&& and || or ! not
1.2 数据流跟踪
- 在关注的http数据包或者tcp数据包中选择追踪流,进行相关联的数据包还原;
- 选中想要还原的流量包,右键选中,选择追踪流 – TCP流/UPD流/SSL流/HTTP流;
1.3 数据提取
Wireshark支持提取通过http传输(上传/下载)的文件内容
二、流量分析过程
-
协议分析 确定数据包的协议类型,主要是以什么协议为主。 -
数据包筛选 海量数据中要想能察觉到可疑通信,找到攻击的蛛丝马迹,那就需要对一些端口、协议、请求方式和攻击特征等进行过滤,不断缩小可疑流量范围,才能更好进一步分析达到最终溯源的目的。 -
数据流分析 使用wireshark进行威胁流量发现时候,除了判断包特征,访问日志,证书等,数据量是较为直观发现异常行为的方式,我们常会查看一些HTTP流、TCP流和UDP流进行流量分析。 -
文件提取 攻击流量中少不了恶意脚本,样本文件,这时能对样本提取是对威胁攻击的进一步分析十分重要。
|