Bugku隐写(png图片16进制格式)

题目链接: 隐写

思路:

图片可以正常查看,用工具010Editor打开查看,文件头和文件尾均正常,也没有隐藏信息。观察其他信息:

0 1 2 3 4 5 6 7 8 9 A B C D E F
89 50 4E 47 0D 0A 1A 0A 00 00 00 0D 49 48 44 52
00 00 01 F4 00 00 01 A4 08 06 00 00 00 CB D6 DF
74

89 50 4E 47 0D 0A 1A 0A:表示文件类型为PNG
00 00 00 0D :IHDR头数据库长度为13
49 48 44 52:文件头数据块标识,即IDCH,固定为ASCII码的IHDR
00 00 01 F4:图片宽度(以像素为单位)
00 00 01 A4:图片高度(以像素为单位)
08:色深
06:颜色类型
00:压缩方法,固定为0
00:压缩方法,固定为0
00:非隔行扫描
CB D6 DF 74:以下内容的CRC32检验码

 49 48 44 52 00 00 01 F4 00 00 01 A4 08 06 00 00 00

经过计算,上面内容CRC32校验码为C758D77D,与实际的校验码CBD6DF74不相等。猜测是图片的宽高被修改,导致部分内容被隐写。将图片的高度修改为与高度一样,计算得到的CRC32校验码与实际校验码相等,保存图片即可看到隐写的flag。

更完整的做法应该是利用CRC校验码对图片的宽高进行爆破,直到获得正确的宽高,但是我不会哈哈哈。

参考:

PNG文件16进制详解
隐写技巧 | 利用PNG文件格式隐藏Payload
PNG编解码算法详解

你可能感兴趣的:(CTF,CTF,图片隐写,PNG图片16进制格式,MISC,Bugku)