[实验吧](隐写术) 无处不在的广告
题目链接:
http://www.shiyanbar.com/ctf/1894
分析:
下载题目提供的图片:
文件名:trim(整齐的,php的函数(用于去掉字符串两头的空格),暂时没想到有什么深意)
格式:png(可能会用到Stegsolve进行通道分析)
第一步:查看属性
Paste_Image.png没有发现有用信息
第二步:使用UE进行二进制分析
文件头 Paste_Image.png文件头/文件尾没有发现异常
第三步:使用Stegsolve进行通道分析
使用Stegsolve打开此图片,发现此图片尺寸非常大
这样分析的时候我们根本不能看到整张图的全貌,这样就对我们分析带来了麻烦
而且Stegsolve这个软件并没有自动缩放的功能
因此我们就想到对图片的尺寸进行修改
打开PS进行尺寸的修改(求解答:修改会不会影响到隐藏的信息?)
修改完成后重新载入:
进行通道的分析
当我们进入红色通道的时候
发现图片的左方出现了一个二维码
这个二维码出现在于
(red plane 4,red plane 3,red plane 2,red plane 1,red plane 0)
(注:当我们发现了这个地方是我们需要的部分的时候,就可以使用原图来继续分析)
但是清晰度都不同,经过肉眼的观察,我们挑选了一张比较清晰图片
![@S2D%3%8]YQU4_PGT1T2_)6.png](https://img.haomeiwen.com/i2355077/014882b9f444c7da.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
将二维码部分截取出来
Paste_Image.png我们尝试使用在线解析器对其进行解析
遗憾的是由于我们的二维码并不标准,所以我们这个在线工具貌似不能成功解析
(注://TODO使用现存的图片处理库对图片进行处理(写一个demo))
所以只好默默打开手机支付宝,扫描之后得到...得到...居然还是扫不出来..?
怎么回事...
我们发现这个图片扫不出来的原因就是背景中的杂色
那么我们应该如何去掉这些杂色呢...
第一个想到的方法就是..打开画图,用橡皮擦一个一个擦掉
第二个方法,找到原图(不小心发现这个二维码在原图中还是可以隐约看见的)然后PS大法
最终还是使用了PS
首先在原图中截取二维码部分(我们可以发现这个二维码的高是很容易肉眼分辨的,只需要根据高度截取一个正方形即可)
使用PS打开,由于二维码和其他部分还是有一些细小的差别的(色阶,亮度等等)
这个时候就可以利用PS来扩大他们之间的差别
这个时候已经可以扫描了有没有,快打开支付宝扫一下
得到flag~
笔者发现了第三种识别二维码的方法:
(注:使用PS修复不清晰二维码)
(由于我们的二维码只有黑白两种颜色,而且背景有黑色的杂色,所以应该先使用滤镜进行模糊处理,在进行图像大小的调整)
答案:
FLAG:this is a new word
知识点:
使用Stegsolve分析图像通道
PS的简单使用