CTF Misc(3)流量分析基础以及原理

在这里插入图片描述

前言

流量分析在ctf比赛中也是常见的题目,参赛者通常会收到一个网络数据包的数据集,这些数据包记录了网络通信的内容和细节。参赛者的任务是通过分析这些数据包,识别出有用的信息,例如登录凭据、加密算法、漏洞利用等等

工具安装

Wireshark是一款开源的网络数据包分析工具,用于捕获、分析和可视化网络流量。它在多个平台上可用,包括Windows、Mac和Linux,工具下载地址

https://www.wireshark.org/download.html

在这里插入图片描述

默认安装即可

工具介绍

查看捕获到的数据包列表

演示的流量包:

https://anonfiles.com/laS2l3v2zd/Alpha_1_pcapng

访问网址下载即可

在这里插入图片描述

这是流量包的文件格式

.pcapng

安装好wireshark后,双击打开这个文件

最上方的一栏是任务栏,下面是搜索框,最下面的是数据包的详细信息和数据包的数据

在这里插入图片描述

常用过滤器命令和语法

协议筛选:

tcp:显示所有TCP协议的数据包
udp:显示所有UDP协议的数据包
http:显示所有HTTP协议的数据包
dns:显示所有DNS协议的数据包
icmp:显示所有ICMP协议的数据包

在这里插入图片描述

在搜索框里输入http就能看到所有的http流量,其他同理

IP地址筛选:

ip.addr == 192.168.0.1:显示与指定IP地址相关的所有数据包
src host 192.168.0.1:显示源IP地址为指定地址的数据包
dst host 192.168.0.1:显示目标IP地址为指定地址的数据包

这里我们筛选192.168.1.25ip相关的数据包

在这里插入图片描述

筛选过后就是都关于这个ip的数据包流量

在这里插入图片描述

端口筛选:

tcp.port ==  80:显示使用指定TCP端口的数据包
udp.port == 53:显示使用指定UDP端口的数据包
port 80:显示源或目标端口为指定端口的数据包

筛选tcp 80端口的流量

在这里插入图片描述

逻辑运算符:

and:使用AND逻辑运算符连接多个条件,例如 tcp and ip.addr == 192.168.0.1
or:使用OR逻辑运算符连接多个条件,例如 tcp or udp
not:使用NOT逻辑运算符排除满足条件的数据包,例如 not tcp

筛选tcp流量和ip地址为192.168.1.5的流量包tcp and ip.addr == 192.168.1.5

在这里插入图片描述

比较运算符:

==:等于,例如 http.request.method == "POST"
!=:不等于,例如 ip.addr != 192.168.0.1
<、>:小于、大于,例如 tcp.len > 100

筛选http的post请求流量包http.request.method == “POST”

在这里插入图片描述

复杂筛选:

使用括号 () 来组合多个条件,例如 (tcp and port 80) or (udp and port 53)
使用复合条件进行筛选,例如 (tcp.flags.syn == 1 or tcp.flags.ack == 1) and ip.addr == 192.168.0.1

HTTP流量分析

演示的流量包:

https://anonfiles.com/laS2l3v2zd/Alpha_1_pcapng

访问网址下载即可

在这里插入图片描述

在这里插入图片描述

点击协议分级,可以看到这个流量包里所有协议的流量

在这里插入图片描述

有udp流量,ipv4流量,tcp流量,http流量,我们选择http流量数据,右击选择选中

在这里插入图片描述

在这里插入图片描述

就可以看到这个流量包里的所有http流量

我们随便选择一个包,跟踪他的http流量,以便查看详细数据

在这里插入图片描述

在这里插入图片描述

在下面,很明显能看到sql注入的流量

在这里插入图片描述

之后他上传了自己的php一句话木马并连接执行命令

在这里插入图片描述

右击跟踪这个流量包

在这里插入图片描述

在这里插入图片描述

这个一句话木马将执行的内容加密了,使用的是base64编码,我们复制加密后的参数,进入网站解密

https://base64.us/

在这里插入图片描述

他查询了C:\phpStudy\WWW\目录下的文件,我们可以看到回显

在这里插入图片描述

点击右下角的返回,继续跟踪流量包

在这里插入图片描述

在最后一个用一句话木马的流量里,可以看到它导出了一个叫flag.zip的文件

在这里插入图片描述

由于文件未加密,我们还能看到flag.txt的内容

在这里插入图片描述

flag.txt文件内的文本为:

DPS

DNS流量分析

题目下载地址:

https://anonfiles.com/S5Fc91v3za/capture_pcap

在这里插入图片描述

打开流量包,可以看到全是DNS流量,使用strings工具可以发现很多十六进制

在这里插入图片描述

我们把这些十六进制导出来

tshark -r capture.pcap -T fields -e dns.qry.name > a.txt

在这里插入图片描述

用文本编辑器把.pumpkincorp.com字符去掉

在这里插入图片描述

在这里插入图片描述

然后再用uniq工具将重复的字符串去掉

cat a.txt| uniq > b.txt

在这里插入图片描述
将十六进制转换为ascii码可以发现,这是一个Excel 文件

https://gchq.github.io/CyberChef/

在这里插入图片描述

可以看到flag文本

在这里插入图片描述

键盘流量分析

最常见的usb键盘流量包如下图

在这里插入图片描述

协议为USB,并且键盘数据存储在usbhid.data中,这里0c对应的就是i字符

在这里插入图片描述

在这里插入图片描述

我们将流量包里的usbhid.data数据提取出来,然后一一和字符对应即可,这里我开发了一个脚本,可以直接提取和转换usb键盘流量数据

https://github.com/baimao-box/KeyboardTraffic

在这里插入图片描述

在这里插入图片描述

总结

这篇文章我只是展示了一些流量分析的基础,想要成为大佬,就要多刷题

猜你喜欢

转载自blog.csdn.net/qq_45894840/article/details/131029393