目录
简介
这篇文件是给我学习ctf的学弟写的,最近我会更新一些流量分析的做题技巧和知识。当然我也就是多做了一些题,理论方面也不是那么清楚,有问题大家指出来就行。
今天要学习的是流量分析最简单的ping篇,这类题很简单,一般都是签到题,或者白给的分,学习好技巧,考点就那么几个,这样就能快速拿下一血
题目链接:链接:https://pan.baidu.com/s/1XpCiFhYJrYRDEc_gDRWM0Q?pwd=cvi2
提取码:cvi2
tips:*表示可以在网上搜到的题
ping.pcap(Data位)
打开就能看见f,不出意外,下一个包就是l,下下一个就是a。。。。。。
连起来就是flag{xxxxxxxxxxxxx}
然后你就会问了,为啥看这里,我怎么不提取其他地方?
当然是因我浏览过了一遍啊,发现了规律呀。
再者,这就是他的第一个考点,data位
提取的方法tshark:
可以手动提取,这一题就38个流量包,手动也行
但是我这里教你用另一个方法——tshark
tshark是下载wireshark的时候自带的,所以不用单独下载。
thsark的作用就是在你分析完流量后,想批量提取数据时候用的一个工具,贼好用。
开搞开搞
打开你的wireshark的属性,选择打开文件位置
就会发现自带的tshark
为了方便下次启动,跟着我设置一下吧
找到这个位置C:\Windows\System32\
右键创建一个快捷键
右键属性,起始位置改一下,改到你都wireshark里面就行
然后我们就可以直接使用了
现在开始使用,首先要确定你的过滤位置和你的过滤条件
我们做的这个是没有过滤条件的,所以不考虑了,过滤位置这样找
发现突破点
右键,作为过滤器应用,选中
我们要的是data.data这个参数
现在开始构造语句
tshark.exe -r D:\桌面\流量分析\ping\ping.pcap -T fields -e data.data
tips:复制一个文件到终端里,可以自动变成该文件的绝对路径
输出后是这样的,需要对字符进行处理,这是一个正则使用的网站——regex,我已经弄成离线的了
最后过滤0a即可,然后做一下处理,把换行变成",0x",因为他们本来就是16进制数,所以要有0x表示,以防一会写脚本报错“[”未关闭Pylance
然后我们写一下python脚本
# ping
con = [0x66,0x6c,0x61,0x67,0x7b,0x64,0x63,0x37,0x36,0x61,0x31,0x65,0x65,0x65,0x36,0x65,0x33,0x38,0x32,0x32,0x38,0x37,0x37,0x65,0x64,0x36,0x32,0x37,0x65,0x30,0x61,0x30,0x34,0x61,0x62,0x34,0x61,0x7d]
flag = ''.join(chr(i) for i in con)
print(flag)
我还以为报错,意外chr不识别16进制呢,要是不识别就用chr(int(i,16))来转10进制
flag{dc76a1eee6e3822877ed627e0a04ab4a}
ttl.pcap(ip.ttl)
浏览了一遍,发现大概就是L的这个位置
你问为什么不是I的位置?
一般就是这样的加密,而不是直接的flag,常用的就是base,base可没有@
准备过滤条件
得出是ip.ttl,这个是常考的点
构造语句
tshark.exe -r D:\桌面\流量分析\ping\ttl.pcap -T fields -e ip.ttl
处理字符串,放到脚本里,这次是十进制的
con = [76, 74, 87, 88, 81, 50, 67, 50, 71,
78, 50, 70, 71, 87, 75, 86, 74, 90,
50, 71, 73, 51, 67, 87, 73, 90, 73,
87, 87, 52, 66, 87, 75, 69, 89, 86,
69, 85, 67, 86, 71, 70, 70, 71, 85,
90, 67, 87, 78, 66, 88, 70, 83, 50,
50, 79, 75, 66, 82, 70, 81, 51, 67,
69, 75, 82, 68, 85, 77, 51, 51, 69,
73, 86, 74, 72, 65, 86, 75, 89, 71,
65, 54, 81, 61, 61, 61, 61]
flag = ''.join(chr(i) for i in con)
print(flag)
flag{RaCmvUEBJzCTOSRcuXgbCOmyCLahtDiQ}
TTl.pcapng(ip.ttl)
浏览一遍,差不多是这个位置
也是ttl的位置
tshark.exe -r D:\桌面\流量分析\ping\ttl.pcap -T fields -e ip.ttl
上脚本
处理中间多余的0(害怕多清理了,结果徐晃)
解密
flag{86f68593-b885-4f9d-b389-f62920b021d6}
总结
tshark的使用
-r后面跟文件就行
-e后面跟过滤结果
-T后面的参数
- -T fields:以逗号分隔的格式输出指定的字段(例如-tshark -r file.pcap -T fields -e frame.number -e ip.src)
- -T json:以JSON格式输出数据包信息
- -T pdml:以XML格式输出数据包信息
- -T psml:以XML格式输出分组摘要信息
- -T text:以文本格式输出数据包信息(好像没有这个,但是ai说有)
-Y后面跟过滤的条件,这个以后讲,很好用的一个参数,也很好用。