文章目录
- 前言
- wireshark
- 被嗅探的流量
- 被偷走的文件
- easycap
- 数据包中的线索
- 秘密文件
- [安洵杯 2019]Attack (难,没写)
- 被劫持的神秘礼物
- 大流量分析(一)
- 大流量分析(二)
- 大流量分析(三)
- 模板
- 模板
前言
CTFSHOW : https://ctf.show/challenges (点击网址跳转)
每道题都从以下模板讲解,并且每个步骤都有图片,清晰明了,便于复盘。
- 题目:
- 解决思路:
- flag:
- 本质:
- 疑问:
wireshark
- 题目:
解压得到pcap文件
- 解决思路:
根据提示直接过滤出POST包(管理员登录网址。一般提交数据会用POST方法)
- flag:
flag{ffb7567a1d4f4abdffdb54e022f8facd}
- 本质:
- 如果管理员登录时使用的是明文传输(如HTTP协议),攻击者可以通过分析流量包获取管理员的用户名和密码。
- 通过过滤流量包(如使用http.request.method == POST),可以快速定位到登录请求,并从中提取敏感信息。
被嗅探的流量
- 题目:
- 解决思路:
根据题目提示是一段文件传输数据,猜测是http的上传,或者有关文件传输的数据
先浏览了一下流量,发现HTTP协议的流量有上传文件的痕迹
- flag:
flag{da73d88936010da1eeeb36e945ec4b97}
被偷走的文件
- 题目:
解压得到pcap文件
- 解决思路:
先大致浏览一下流量,发现有flag.rar字样
RETR flag.rar 是一个用于从服务器下载flag.rar 文件的命令,因此这个flag.rar 可能是被偷走的文件
在kali用foremost分离文件,foremost ‘/home/kali/桌面/1.pcapng’ -o out
- 使用ARCHPR暴力破解,先尝试1-8位数字破解,得出密码为5790
- 输入密码,解压得到flag.txt文件
- flag:
flag{6fe99a5d03fb01f833ec3caa80358fa3}
easycap
- 题目:
解压得到pcap文件
- 解决思路:
先大致浏览一下流量,发现全部是tcp协议的数据包,追踪tcp流即可得到flag
- 本质:
TCP是面向流的协议,数据在传输时会被分割成多个报文段(segments)。追踪TCP流的功能(如Wireshark中的"Follow TCP Stream")会自动将这些分散的报文段按顺序重组,还原出完整的应用层数据流。
- flag:
flag{385b87afc8671dee07550290d16a8071}
数据包中的线索
- 题目:
解压得到pcap文件
- 解决思路:
- 先大致浏览一下流量,发现有少数的http数据包有特征(fenxi.php等等),其他协议很普通
- 先大致浏览一下流量,发现有少数的http数据包有特征(fenxi.php等等),其他协议很普通
-
过滤出http数据包
-
追踪编为7的数据包,啥也没有
-
追踪编为60的数据包
-
发现这个包中有一段很长的字符串,结尾看到有“=”号,像是base64编码
-
来到一个 在线的base64解码网站https://the-x.cn/base64上,进行解码
-
发现头文件是JFIF,是图片格式
-
开启自动模式,另存为jpg文件
-
打开图片,得到flag
-
方法二:
- 追踪http流,可以看到加密内容在响应包里面,所以在wireshark中找到响应包中字符位置,选择显示分组字节
- 追踪http流,可以看到加密内容在响应包里面,所以在wireshark中找到响应包中字符位置,选择显示分组字节
-
直接解码并且显示为图像
- flag:
flag{209acebf6324a09671abc31c869de72c}
秘密文件
- 题目:
解压得到pcap文件
- 解决思路:
- 先大致看一下流量包,发现有flag字眼
- 先大致看一下流量包,发现有flag字眼
- 追踪该数据包的tcp流得到如下,发现有.rar , 大概率就是Hack偷走的文件
- 流量文件中含有rar文件
- 分离出流量包中的rar文件,foremost ‘/home/kali/桌面/1.pcapng’ -o out1
- 需要密码,ARCHPR暴力破解得到密码是1903,打开txt文件得到flag
- flag:
flag{d72e5a671aa50fa5f400e5d10eedeaa5}
[安洵杯 2019]Attack (难,没写)
- 题目:
解压得到pcap文件
- 解决思路:
-
flag:
被劫持的神秘礼物
- 题目:
解压得到pcap文件
- 解决思路:
大致看一下流量包,发现编号为4的http协议数据包的请求路径有login的痕迹
或者根据题目提示,找到账号和密码,直接过滤http.request.method==POST即可
直接追踪编号为4数据包的http流
可以看到账号:admina , 密码:adminb
题目提示:找到帐号密码,串在一起,用32位小写MD5哈希一下得到的就是答案
import hashlibdef generate_md5_hash(input_string):"""Generate a 32-bit lowercase MD5 hash from the input string."""# 创建 MD5 哈希对象md5_hash = hashlib.md5()# 更新哈希对象,添加待加密文本(需要先将字符串编码为字节)md5_hash.update(input_string.encode('utf-8'))# 获取并格式化哈希值为 32 位小写的十六进制字符串return md5_hash.hexdigest()test_string = "adminaadminb"
print(f"The MD5 hash of '{test_string}' is {generate_md5_hash(test_string)}")
也可以直接在线MD5解密
- flag:
flag{1d240aafe21a86afc11f38a45b541a49}
大流量分析(一)
- 题目:
解压得到pcap文件
- 解决思路:
-
flag:
大流量分析(二)
- 题目:
解压得到pcap文件
- 解决思路:
-
flag:
大流量分析(三)
- 题目:
解压得到pcap文件
- 解决思路:
-
flag:
模板
- 题目:
解压得到pcap文件
- 解决思路:
-
flag:
模板
- 题目:
解压得到pcap文件
- 解决思路:
-
flag: