1. 题目背景与初步分析
这次遇到的是一道典型的Misc综合题,题目名为[MRCTF2020]Hello_misc。下载附件后得到两个文件:加密的flag.rar和一张名为"try to restore it.png"的图片。这种组合在CTF比赛中非常常见,通常需要先通过图片隐写获取压缩包密码,再逐步解出flag。
我首先检查了图片属性,没有发现明显线索。用binwalk扫描也没检测到隐藏文件,于是决定使用StegSolve工具进行更深入的分析。这里要提醒新手朋友,当常规方法无效时,一定要尝试不同的工具组合,有时候同一个隐写问题可以用多种工具解决。
2. 图片隐写与密码提取
用StegSolve打开png图片后,我习惯性地浏览了各个颜色通道。在Red plane 0通道发现了异常——这里显示出了另一张图片的轮廓。通过Analyse→Data Extract功能,勾选Red 0通道,果然提取出了一个包含密码提示的图片:
zip-passwd:!@#$%67*()-+
但有趣的是,这个密码并不能直接解开flag.rar。这说明题目设置了多层防御,需要继续挖掘。于是我用010 Editor检查图片文件尾,发现了PK文件头(504B0304),这是ZIP压缩包的标志。使用foremost工具分离出隐藏的压缩包:
foremost -i try_to_restore_it.png -o output
用之前获得的密码解压后,得到了一个out.txt文件,里面全是数字:
127 255 63 191 127 191 63 127 ...
3. TTL隐写解密技巧
看到这组特殊数字(63,127,191,255),我立刻想到这是TTL隐写。TTL值在IP协议中通常只有这四种情况,可以对应二进制两位:
- 63 → 00
- 127 → 01
- 191 → 10

1414

被折叠的 条评论
为什么被折叠?



