我们常常会在 png 图片后面附加其他文件的方式来实现隐写。比如下面这张图片
我们用 pngcheck
检查一下会发现在 IEND
区后存在其他数据
pngcheck images/dd_extract_from_png.png
下面我们来看看 IEND
区在哪里结尾
xxd images/dd_extract_from_png.png |grep IEND
根据 png 文件的格式,在 IEND 后还有 4 个字节的 CRC, 因此 png 文件的结尾应该在 000085b3
将这个值换算成10进值就是
((n=16#85b3))
echo $n
使用 dd 跳过前面的图片内容保存后面的数据
dd if=images/dd_extract_from_png.png ibs=34227 skip=1 of=/tmp/noname
file /tmp/noname