网络安全流量分析领域中,wireshark和csnas是取证、安全分析的好工具,包括很多研究安全规则、APT及木马流量特征的小伙伴,也会常用到两个工具。这两款流量嗅探、分析软件,今天先介绍wireshark作为安全分析工具的基本使用。
2 |0 02.基本使用
Wireshark对pcap包分析过程中常用的功能基本上包括:数据包筛选、数据包搜索、流还原、流量提取等。本次的演示找到了CTF相关pcap包,如感兴趣可自己下载分析:
链接:https://pan.baidu.com/s/1UlmTrXG-botu0M3c4W-lfA 提取码:k0y4
2.1 数据包筛选
海量数据中要想能察觉到可疑通信,找到攻击的蛛丝马迹,那就需要对一些端口、协议、请求方式和攻击特征等进行过滤,不断缩小可疑流量范围,才能更好进一步分析达到最终溯源的目的。
2.1.1 筛选IP
※流量过滤中可以使用过滤可疑IP或排除一些无用信息,减少无关流量包的干扰,更直接定位目标。
>筛选特定IP,过滤出所有与192.168.94.233相关的流量
语法:ip.addr==192.168.94.233
>筛选源IP,过滤出所有源ip都为192.168.94.233
语法:ip.src==192.168.94.233
同样过滤目的IP语法:ip.dst==192.168.94.233
且关系使用&&:ip.dst==192.168.94.233&& ip.dst==192.168.32.189
或关系使用||:ip.dst==192.168.94.233||ip.dst==192.168.32.189
非关系:!=
2.1.2HTTP模式过滤
※在web攻击流量分析中,http显得尤为重要,根据攻击特点过滤http流量能更准确定位攻击;如常见上传webshell使用POST请求、指定URI可疑发现一些上传路径或者后台等,另也可以从包含的一些关键特征判断使用的工具、木马、脚本等。
http请求方式为GET语法:http.request.method=="GET"
http请求方式为POST语法:http.request.method=="POST"
请求的URI为/login.php语法:http.request.uri=="/login.php"
请求的http中包含sqlmap的语法:http contains "sqlmap"
请求方式为GET且请求中包含UA信息:http.request.method=="GET" && http contain "User-Agent"
2.1.3 mac地址筛选:
※这部分过滤和IP过滤作用一样
eth.dst ==A0:00:00:04:C5:84 筛选目标mac地址
eth.addr==A0:00:00:04:C5:84 筛选MAC地址
2.1.4 端口筛选:
※通过常见端口如445、1433、3306等可以定位相关特殊的服务。
tcp.dstport == 80 筛选tcp协议的目标端口为80 的流量包
tcp.srcport == 80 筛选tcp协议的源端口为80 的流量包
udp.srcport == 80 筛选udp协议的源端口为80 的流量包
2.1.5 协议筛选:
**※**协议过滤可以根据相关服务使用的协议类型进行
tcp 筛选协议为tcp的流量包
udp 筛选协议为udp的流量包
arp/icmp/http/ftp/dns/ip 筛选协议为arp/icmp/http/ftp/dns/ip的流量包
2.1.6 包长度筛选:
**※**包长度、大小可以利用判断一些木马特征,扫描特征、ddos等
udp.length ==20 筛选长度为20的udp流量包
tcp.len >=20 筛选长度大于20的tcp流量包
ip.len ==20 筛选长度为20的IP流量包
frame.len ==20 筛选长度为20的整个流量包
2.2 数据流分析
使用wireshark进行威胁流量发现时候,除了判断包特征,访问日志,证书等,数据量是较为直观发现异常行为的方式,我们常会查看一些HTTP流、TCP流和UDP流进行流量分析,wireshark中常用方法:
这里我就用找一个后台登入的http流做展示
1)找疑似后台登入点:http contains login
2)判断登入是否成功,这时可以查看http流的响应情况进行分析:"右键-追踪流-HTTP流"
可以根据数据流的请求头、请求体判断源IP的一些信息,这个有助于进行追踪;响应头、响应体可以作为本次请求是否成功,达到的响应效果的判断。
HTTP流之外还会有TCP流、UDP流、HTTPS流等,操作的方法是一样的;
2.3文件还原
※攻击流量中少不了恶意脚本,样本文件,这时能对样本提取是对威胁攻击的进一步分析十分重要。而使用wireshark就可以做到简单文件还原,当然如果你需要对批量文件还原,可能还需要一些自己研究的工具进行还原,下面说一下wireshark怎么进行还原:
1)"文件-导出对象"这样可以选择导出的协议类型数据,选择http后会出现数据包所有的关于http协议的数据包;在所有http数据流中的文件,选中进行save进行;其他协议相关文件也一样。
2)分组字节流还原
对于特定的字节流可以"右键-导出分组字节流"最后保存就ok了
总结:wireshark比较适合对于小流量包威胁数据进行分析,CTF赛事也会常用wireshark进行分析;作为网络流量安全分析的好工具,功能其实也很多,本次分享的只是一些常见功能,如果对网络流量安全分析感兴趣,可以多去使用wireshark研究攻击数据包特征,可以先从简单web攻击数据包开始,再去看看一些窃密、木马、APT相关数据包,后面我也会慢慢分享一些关于分析威胁流量包的文章,也是记录自己的一个学习过程。