置顶一个图片隐写神器,一键出 flag

]]N499[$PGCZ@OAK%2XOVNU.jpg
]]N499[$PGCZ@OAK%2XOVNU.jpg

https://github.com/zed-0xff/zsteg
安装:gem install zsteg

image.png
image.png

图片相关

PNG 格式简介

文件格式:对于 PNG 文件来说,其文件头总是由固定的字节来描述的,剩余的部分由 3 个以上的 PNG 数据(Chunk)按照特定的顺序组成。

文件头:89 50 4E 47 0D 0A 1A 0A + 数据块 + 数据块 + 数据 块…..

修改图片高度

如果 linux 下打不开,windows 下打得开可能就是该高度了
左边是宽度,圈起来的是高度,,把高度改成跟宽一样的

image.png
image.png

文件尾追加文件

直接十六进制编辑器

图片元数据

元数据(Metadata),又称中介数据、中继数据,为描述数据的数据(Data about data),主要是描述数据属性(property)的信息,用来支持如指示存储位置、历史数据、资源查找、文件记录等功能。
元数据中隐藏信息在比赛中是最基本的一种手法,通常用来隐藏一些关键的 Hint 信息 或者一些重要的比如 password 等信息。

这类元数据可以 右键 -> 属性 查看

outguess

kali 下使用outguess -r avatar.jpg -t 1.txt
把 avatar.jpg 图片破解信息的数据输出到 1.txt

f5-steganography

F5-steganography-james.zip

F5 隐写加密:
java Embed 原图片.jpg 生成的图片.jpg -e 隐藏的文件.txt -p 密码

F5 隐写解密:
java Extract 生成的图片.jpg -p 密码

演示:

image.png
image.png
image.png
image.png

ps. 之所以使用 jview 是看自带的.bat 文件是用的这个,但是用 java 貌似没啥影响

image.png
image.png

Beyond Compare

使用软件:Beyond Compare 提取码: uuch

安装打开后界面是这样的:点击红框框出来的

image.png
image.png

选择图片比较

image.png
image.png

上面还有一些选项可以试试

image.png
image.png

IDAT 信息隐藏

IDAT:存储实际的数据,在数据流中可包含多 个连续顺序的图像数据块,储存图像像数数据。

在数据流中可包含多个连续顺序的图像数据块。
采用 LZ77 算法的派生算法进行压缩。
可以用 zlib 解压缩。

IDAT 块只有当上一个块充满时,才会继续下 一个新块
如果有 IDAT 还没填满就填充了下一个就要考虑是不是有问题

命令:pngcheck.exe -v sctf.png 可以查看

image.png
image.png

也可以使用 Stegsolve -> Analysis -> ** File Format **有详细介绍

这就说明这 138 是认为添加的,把这个位置的内容串保存出来,在进行其他操作(文本进制转换、写图片)

LSB 信息隐藏

PNG 文件中的图像像数一般是由 RGB 三原色组成,每一种颜色占用 8 位,取值范围为 0×00~0xFF,即 256 种颜色,一共包含了 256 的三次方的颜色,即 16777216(1 千 677W)种 颜色。人类的眼睛可以区分约 1000 万种不同的颜色,这就意味着人类的眼睛无法区分余下的颜色大约有 6777216(677W)种

LSB 隐写就是修改 RGB 颜色分量的最低二进制位(LSB),每个颜色都会有 8bit,LSB 隐写就是修改了像数中的最低的 1Bit,而人类的眼睛不会注意到这前后的区别,每个像数可以携带 3Bit 的信息,这样就把信息隐藏起来了

使用 Stegsolve *各个通道都看看,或者 *Analysis -> Data Extract 合起来看看,有什么熟悉的保存出来

cloacked-pixel

https://github.com/livz/cloacked-pixel
这是一个用来看 LSB 隐写的东西(带密码的 LSB)
可以提取数据,用法很明确了

1
2
3
4
5
6
7
$ python lsb.py
LSB steganogprahy. Hide files within least significant bits of images.

Usage:
lsb.py hide <img_file> <payload_file> <password>
lsb.py extract <stego_file> <out_file> <password>
lsb.py analyse <stego_file>

GIF 信息隐藏

在某一帧图片藏着信息,用 ps 或者爱奇艺万能播放器也可以一帧一帧的看

每一帧图片间隔时间,可能藏着规律,或许是二进制编码、或许是摩斯密码

NTFS 流隐写

安恒的一道题:猫片,先是 LSB 提取一个 png,然后改高度得到完整的取反色,下载文件,得到 RAR,使用 NTFS 流隐写,打开软件,然后用 winrar 解压缩,然后扫描一下,发现一些其他的东西,导出就可以了

image.png
image.png