一、通用过程
- 右键查看文件属性,可能有隐藏的备注、提示信息
- 检查文件类型
1.1 通过file命令检查文件类型
1.2 通过binwalk命令检查文件中是否隐藏了其它文件
1.3 如果有,则通过binwalk -e命令分离,如果无法正确分离,则通过foremost进行分离
1.4 如果检查出zlib,说明隐藏了其他文件,此时foremost如果无法正确分离,则可能需要进行手动分离 - 判断具体题型
2.1 各类隐写
2.2 流量分析
2.3 其他类型
2.4 可能涉及编码和古典密码学的内容
二、图片隐写
注:图像指png、jpg、gif、bmp等格式的文件。
通用过程
- 通过Stegsolve的各个通道查看图片,如果有可疑的地方则对对应的通道进行数据提取
- 如果有多张图片,可以尝试Stegsolve的ImageCombiner功能
- 通过010editor检查十六进制格式下的图片,善用文本搜索
- 通过strings命令进一步检查
PNG
- PNG是一种无损图片,可能有各种隐藏方式
- 通过tweakpng打开png来检查该PNG的CRC是否正确,如果不正确,通过脚本来爆破该PNG的正确宽高
JPG
- 暂无
GIF
- 通过Stegsolve逐帧查看,并在必要时分离
- 有些题目可能是通过两帧之间的时间间隔作为加密信息,此时可以通过identify命令进行处理,具体内容参考CTFwiki
BMP
- 暂无
二维码、条形码识别
- 利用在线工具即可
- 但在必要时可能需要利用PS或者其它工具缝缝补补
三、压缩包处理
通用过程
ZIP
-
如果有加密,则先判断是伪加密还是真加密
-
伪加密查看50 4B 01 02后第5位,即框选中的前一位的低位
2.1 此时将其修改为0即可 -
真加密查看50 4B 03 04后第3位,即框选中的前一位的低位
3.1 利用出题人给到的提示进行破解
3.2 利用工具ARCHPR进行暴力破解
3.3 暴力分为三类:CRC32爆破,直接爆破 以及 明文爆破,分别适用于主体内容较小,密文较简单 以及 有内部文件泄漏的情况
RAR
- 思路与ZIP基本相同,只不过爆破工具换成了crark55
四、音频隐写
- 利用Audacity检查波形图,或许可以映射为01序列(对于01序列的密码学解法,请参考密码学总结)
- 利用Audacity检查频谱图
- 利用silentEye检查是否为音频的LSB隐写
- 针对MP3文件,可以通过MP3Stego进行隐写
五、流量分析
- 待补充
六、其它
注:所有的步骤都是在通用过程执行过一次了的前提下进行的
可执行文件隐写
- 通过ResourceHacker查看是否有隐藏信息
pyc文件隐写
磁盘文件
- 待补充