青少年CTF擂台挑战赛 2024 #Round 1-Misc-追光者
字数 1277 2025-08-18 17:33:34
青少年CTF擂台挑战赛2024 Round1-Misc-追光者解题教程
题目概述
这是一道Misc类题目,名为"追光者",主要考察参赛者对ZIP伪加密、文件隐写、编码解码和明文攻击等技术的掌握。
解题步骤详解
第一步:处理初始ZIP文件
-
识别伪加密:
- 使用010 Editor打开初始ZIP文件
- 查找文件头中的加密标志位(通常为01 00)
- 将01 00修改为00 00以解除伪加密
- 保存修改后的文件即可无需密码解压
-
伪加密原理:
- ZIP伪加密是通过修改文件头的加密标志位实现的
- 实际文件并未真正加密,只是被标记为加密状态
第二步:分析解压后的文件
-
解压后得到:
- 一个TXT文件(初步检查无有用信息)
- 一张JPG图片(闪.jpg)
-
JPG文件隐写分析:
- 使用010 Editor检查JPG文件末尾
- 发现一段编码数据
- 使用"随波逐流"工具解码
- 获得提示:"密码中的字符全为小写"
第三步:文件分离与密码发现
-
文件分离:
- 使用工具(如binwalk)对JPG文件进行分离
- 分离出一个新的ZIP压缩包
-
密码获取:
- 观察新ZIP文件的注释:"光是AB且密码就在眼前"
- 回到原始JPG文件(闪.jpg)
- 在010 Editor中全局搜索"AB"
- 使用查找功能的自定义背景色选项
- 通过不断下拉查看,发现密码:"iam5thplayer"(注意:er是为新附件提供的)
第四步:解压新文件
- 使用密码"iam5thplayer"解压新ZIP
- 获得内容:
- 一段"鸡汤"文字(可忽略)
- 前半部分flag
第五步:处理另一个压缩包
-
发现另一个名为"看不清的光"的ZIP文件
-
分析特征:
- 包含一张与之前相同的图片(闪.jpg)
- CRC校验值相同
- 这表明适合使用明文攻击
-
实施明文攻击:
- 使用Bandizip将闪.jpg重新压缩为ZIP格式
- 使用ARCHPR工具进行明文攻击
- 成功恢复密码:"G3r1ing!"
第六步:获取完整flag
- 使用密码"G3r1ing!"解压"看不清的光"压缩包
- 对获取的内容进行字符反转处理
- 最终得到完整flag:
qsnctf{NE73R_G1V3_U1o}
关键技术总结
-
ZIP伪加密识别与破解:
- 修改文件头加密标志位
- 无需爆破即可解除伪加密
-
文件隐写分析:
- 检查文件末尾隐藏数据
- 使用合适工具解码隐藏信息
-
明文攻击:
- 需要已知文件中至少一个未加密文件
- 使用相同压缩方式生成对照文件
- 利用ARCHPR等工具实施攻击
-
密码查找技巧:
- 利用十六进制编辑器全局搜索关键字符串
- 使用背景色高亮显示搜索结果
工具清单
- 010 Editor(十六进制编辑器)
- 随波逐流(编码解码工具)
- binwalk(文件分离工具)
- Bandizip(压缩工具)
- ARCHPR(Advanced Archive Password Recovery,压缩包密码恢复工具)
注意事项
- 解题过程中要注意所有提示信息,包括文件注释
- 相同的文件CRC值往往是明文攻击的线索
- 密码可能以非常规方式隐藏(如AB间隔)
- 最终flag可能需要额外处理(如字符反转)