HGAME-WEEK1 WP (web re misc三方向ak)
字数 2573 2025-08-22 12:23:24
HGAME-WEEK1 CTF 比赛解题报告与知识点总结
1. Web方向
1.1 WEEK1 签到
- 知识点:简单的签到题,了解flag提交格式
- flag:
hgame{Now-I-kn0w-how-to-subm1t-my-fl4gs!}
1.2 Level 24 Pacman
- 解题思路:
- 搜索score相关参数
- 通过修改游戏分数获取flag
1.3 Level 38475 角落 (CVE-2024-38475)
- 漏洞利用:
- 使用dirsearch扫描发现
/robots.txt和/app.conf - 获取源码位置:
/usr/local/apache2/app/app.py - 利用Apache RewriteRule漏洞
- 参考GitHub PoC:https://github.com/p0in7s/CVE-2024-38475
- 根据源码构造payload生成exp
- 使用dirsearch扫描发现
1.4 Level 47 BandBomb
- 解题方法:使用deepseek工具直接解决
1.5 Level 69 MysteryMessageBoard
- 解题步骤:
- 发现
/flag路由需要admin权限 - 爆破密码登入shallot账户
- 分析留言系统,发现XSS漏洞
- 发现
/admin路由,是一个XSS bot - 构造XSS payload留言
- 访问
/admin获取admin的cookie - 使用admin cookie访问
/flag路由获取flag
- 发现
1.6 Level 25 双面人派对
- 解题过程:
- 下载main文件
- 使用
upx -d脱壳 - 分析发现是minio对象存储服务
- 找到用户名密码
- 下载minio客户端:
dl.min.io/client/mc/release/ - 下载存储文件获取源码
- 研究发现overseer实现热重载功能
- 通过
myminio/prodbucket/update获取源文件 - 添加webshell,编译后上传到对应位置
- 更简单的方法:将映射的本地目录
.改为/
2. Reverse方向
2.1 Turtle
- 解题方法:使用AI工具直接解决
2.2 Delta Erro0000ors
- 题目来源:AmateursCTF-Public/2024/rev/flagpatch
- 知识点:
- Windows差异化补丁MSDelta研究
- ApplyDeltaB函数分析
- 差分补丁格式解析:
PA30开头(4字节)- 时间信息(8字节)
- 定位信息(2字节)
- 校验方式及原数据大小(4或3字节)
- 校验hash长度(2或0字节)
- 校验hash值(16/20/0字节)
- 定位符及加密数据(固定)
- 校验方式:MD5(0x8003)
- 漏洞利用:修改校验方式为0x0绕过校验
- 脚本编写:查看元数据和生成零校验标识
- 使用
delta_patch模块直接获取结果 - 最终flag:
b"Seven says you're right!!!!\x00"
2.3 Turtle (详细分析)
- 解题步骤:
- 使用xvolk脱壳
- 分析发现两次RC4加密:
- 第一次RC4验证第二次RC4的key
- 第二次RC4使用第一次输入的key
- 魔改RC4验证flag
- 正常RC4,key为
yekyek - 第二次魔改RC4做减法
- 最终flag:
hgame{Y0u'r3_re4l1y_g3t_0Ut_of_th3_upX!}
2.4 尊嘟假嘟
- 解题过程:
- 对dex进行解密加载
- 动态调用
copyDexFromAssets - Hook出文件位置
- 另存解密后的dex文件
- 逆向分析发现换表base64
- RC4加密分析
- enc key为点击生成的十二个
0.o或o.0随机组合的36字节字符串 - 发现dex中encode换表还有一层异或运算
3. Misc方向
3.1 Hakuya Want A Girl Friend
- 解题步骤:
- 正序解压zip文件
- 倒序处理png图片
- zip有密码,通过修改png宽高获取密码
- 注意:a和g字母顺序问题
- flag:
hgame{h4kyu4_w4nt_gir1f3nd_+q_931290928}
3.2 Computer cleaner
- 解题方法:
- 分析图片获取部分flag:
hgame{y0u_ - 访问攻击IP:
121.41.34.25 - 获取剩余flag部分:
hav3_cleaned_th3 - 完整flag:
hgame{y0u_hav3_cleaned_th3_c0mput3r!}
- 分析图片获取部分flag:
3.3 Level 314 线性走廊中的双生实体
- 解题方法:
- 直接修改pt中
improved_model/code/__torch__.py源码 - 将flag输出判断改为永真条件
- 直接修改pt中
3.4 Two wires
- 解题步骤:
- 分析Wire部分函数源码(ArduinoCore-avr)
- 使用sigrok工具查看sr文件,进行I2C解码
loop regen_otp用于生成HOTP,模0x000f4240(即%1000000)- 分析I2C通信:
i2cOnReceive:接收上位机指令i2cOnRequest:发送信息(包含HOPT和counter)
- 内存及逻辑分析(使用ghidra)
- 解析recv数据获取secret和counter
- 解析send数据获取HOTP验证数据和计数信息
- 计算X1和X2值
3.5 Crypto sieve
- 解题方法:使用deepseek工具直接解决
- flag:
hgame{sieve_is_n0t_that_HArd}
4. 关键工具和技术总结
-
Web方向:
- dirsearch目录扫描
- CVE漏洞利用(CVE-2024-38475)
- XSS攻击链构造
- Minio对象存储分析
-
Reverse方向:
- UPX脱壳
- Windows差分补丁分析
- RC4算法分析与魔改
- Dex文件动态加载与Hook
-
Misc方向:
- 文件格式分析(zip/png)
- I2C协议分析(sigrok工具)
- HOTP生成算法
- Ghidra逆向分析
-
通用工具:
- deepseek解题工具
- xvolk脱壳工具
- delta_patch模块
- ghidra逆向工具
- sigrok协议分析工具