下载题目附件
附件是一个压缩包,里面含有命名为apple.png的图片。直接解压缩。
Stegsolve分析图片
针对CTF中的图片问题,我基本上直接扔进Stegsolve解决。
首先看看各图层有没有什么信息。发现没有有价值的信息。
继续选择Data Extract分析图片。
发现PK文件头,是LSB隐写的zip文件,直接Save Bin保存,命名并改后缀为1.zip。
得到压缩文件
查看这个压缩包,发现里面有一张名为pen.png的图片。尝试解压但提示压缩文件已损坏。
可以直接用WinRAR自带的修复功能完成修复,得到目标图片pen.png。
得到第二张图片
修复后得到的图片pen.png看起来和题目中给的图片没什么两样,丢进Stegsolve中进行分析也没有得到有用的信息。
考虑盲水印进行破解
针对题目中出现的两张图片,我们可以考虑是否存在盲水印。
破解盲水印相关脚本
在运行盲水印破解脚本前应先安装两个模块。(安装matplotlib时会出现timeout的问题,所以后面加上–upgrade -default-timeout=10000进行解决)
pip install opencv-python
pip install --upgrade -default-timeout=10000 matplotlib
执行命令生成flag.png提取盲水印(根据python版本的不同来选择命令):
python2 bwm.py decode pen.png apple.png flag.png
python bwmforpy3.py decode pen.png apple.png flag.png --oldseed
在这里我的python版本为3,执行脚本bwmforpy3.py,但是直接执行bwmforpy3进行破解得到的图片看不到flag,所以通过加 --oldseed参数解决。
最终得到一个考验眼力的 flag:
flag:unctf{9d0649505b702643}