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

news/2024/5/19 23:40:37 标签: ctf, 流量分析, misc, 取证, 杂项

在这里插入图片描述

前言

流量分析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

在这里插入图片描述

在这里插入图片描述

总结

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


http://www.niftyadmin.cn/n/5081827.html

相关文章

nodejs+vue宠物店管理系统

例如&#xff1a;如何在工作琐碎,记录繁多的情况下将宠物店管理的当前情况反应给管理员决策,等等。在此情况下开发一款宠物店管理系统小程序&#xff0c; 困扰管理层的许多问题当中,宠物店管理也是不敢忽视的一块。但是管理好宠物店又面临很多麻烦需要解决,于是乎变得非常合乎时…

WPF页面向后端传参

WPF页面&#xff08;前端&#xff09;向后端传参 1、编写一个Button&#xff0c;绑定后端命令&#xff0c;并传递参数&#xff1a; <ButtonWidth"100"Command"{Binding SendCommand}"CommandParameter"{Binding ElementNameSendMessage, PathTex…

Linux sed命令

在Linux系统中&#xff0c;有许多强大的文本处理工具&#xff0c;其中之一就是sed&#xff08;Stream Editor&#xff09;命令。sed是一个用于对文本进行编辑、替换、删除和过滤操作的命令行工具&#xff0c;一次处理一行内容。它具有强大的正则表达式支持和灵活的文本处理功能…

【原创】ubuntu18修改IP地址

打开网络配置文件 sudo vi /etc/network/interfaces结果发现如下内容&#xff1a; # ifupdown has been replaced by netplan(5) on this system. See # /etc/netplan for current configuration. # To re-enable ifupdown on this system, you can run: # sudo apt inst…

conda: error: argument COMMAND: invalid choice: ‘activate‘

参考:https://github.com/conda/conda/issues/13022 输入后重启terminal即可

矩阵中幸运数(Python)

给你一个 m * n 的矩阵&#xff0c;矩阵中的数字 各不相同 。请你按 任意 顺序返回矩阵中的所有幸运数。幸运数 是指矩阵中满足同时下列两个条件的元素&#xff1a;在同一行的所有元素中最小 在同一列的所有元素中最大 示例 1&#xff1a;输入&#xff1a;matrix [[3,7,8],[9,…

第18篇ESP32platformio-arduino框架-ili9488-3.5lcd显示时间天气

第18篇ESP32platformio-arduino框架-ili9488-lcd显示时间天气 第18篇esp32ili9488lcd显示时间天气 连接方法&#xff1a; 修改WIFI&#xff1a; 关键代码 void setup() {Serial.begin(115200);WiFi.mode(WIFI_STA);WiFi.begin(ssid,password);Serial.print("\r\nConnect…

【合集】Spring Cloud 组件——架构进化史话 Nacos,OpenFeign,Ribbon,Sentinel,Gateway . . .

前言 Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具&#xff08;例如配置管理&#xff0c;服务发现&#xff0c;断路器&#xff0c;智能路由&#xff0c;微代理&#xff0c;控制总线&#xff0c;一次性令牌&#xff0c;全局锁&#xff0c;领导选举&…