CTF-流量分析笔记
—恢复内容开始—
前言
做流量分析很长时间了但是一直没有系统的去总结过这类题目的做法和思路以及wireshark的使用方法,这次做题的时候突然发现了一个总结的特别好的博客,因此想趁机做个笔记总结一下。
参考链接:https://mp.weixin.qq.com/s?__biz=MzU1ODg3NTMyMQ==&mid=2247489263&idx=1&sn=d9060114d924266ed2bdf4311ca030dd&source=41#wechat_redirect
https://jwt1399.top/2019/07/29/ctf-liu-liang-fen-xi-zong-jie/#toc-heading-4
Wireshark的使用
wireshark的基本使用方法有数据包筛选、数据包搜索、数据包还原、 数据提取四个部分。
1.数据包筛选
1.1筛选ip
源筛选ip
ip.src == ip 地址
或者手动操作
点击任意一个符合筛选条件的数据包,找到IPv4下的Source字段。
右键点击Source字段,作为过滤器应用 – 选中。
目的ip筛选
ip.dst == ip地址
或者手动操作:
点击任意一个符合筛选条件的数据包,找到IPv4下的Destination字段,右键点击Destination字段,作为过滤器应用 – 选中。
1.2 mac地址筛选:
eth.dst ==A0:00:00:04:C5:84 筛选目标mac地址
eth.addr==A0:00:00:04:C5:84 筛选MAC地址
1.3 端口筛选:
tcp.dstport == 80 筛选tcp协议的目标端口为80 的流量包
tcp.srcport == 80 筛选tcp协议的源端口为80 的流量包
udp.srcport == 80 筛选udp协议的源端口为80 的流量包
1.4 协议筛选:
tcp 筛选协议为tcp的流量包
udp 筛选协议为udp的流量包
arp/icmp/http/ftp/dns/ip 筛选协议为arp/icmp/http/ftp/dns/ip的流量包
1.5 包长度筛选:
udp.length ==20 筛选长度为20的udp流量包
tcp.len >=20 筛选长度大于20的tcp流量包
ip.len ==20 筛选长度为20的IP流量包
frame.len ==20 筛选长度为20的整个流量包
1.6 http请求筛选
请求方法为GET:http.request.method==“GET”筛选HTTP请求方法为GET的 流量包
请求方法为POST:http.request.method==“POST”筛选HTTP请求方法为POST的流量包
指定URI:http.request.uri==“/img/logo-edu.gif”筛选HTTP请求的URL为/img/logo-edu.gif的流量包
请求或相应中包含特定内容:http contains “FLAG” 筛选HTTP内容为/FLAG的流量包
2.数据包搜索
在wireshark界面按“Ctrl+F”,可以进行关键字搜索:
Wireshark的搜索功能支持正则表达式、字符串、十六进制等方式进行搜索,通常情况下直接使用字符串方式进行搜索。
搜索栏的左边下拉,有分组列表、分组详情、分组字节流三个选项,分别对应wireshark界面的三个部分,搜索时选择不同的选项以指定搜索区域:
搜索栏的左边下拉,有分组列表、分组详情、分组字节流三个选项,分别对应wireshark界面的三个部分,搜索时选择不同的选项以指定搜索区域
这是分组列表
这是分组详情:
分组字节流:
3. 数据包还原
在wireshark中,存在一个交追踪流的功能,可以将HTTP或TCP流量集合在一起并还原成原始数据,具体操作方式如下:
选中想要还原的流量包,右键选中,选择追踪流 – TCP流/UPD流/SSL流/HTTP流。
可在弹出的窗口中看到被还原的流量信息:
4. 数据提取
Wireshark支持提取通过http传输(上传/下载)的文件内容,方法如下:
选中http文件传输流量包,在分组详情中找到data或者Line-based text data:text/html层,鼠标右键点击 – 选中 导出分组字节流。
如果是菜刀下载文件的流量,需要删除分组字节流前开头和结尾的X@Y字符,否则下载的文件会出错。鼠标右键点击 – 选中 显示分组字节…
在弹出的窗口中设置开始和结束的字节(原字节数开头加3,结尾减3)
最后点击save as按钮导出。