321 字
2 分钟
MISC——图片隐写之JPEG DCT隐写

1793698885880-ejqc62.jpg

JPEG和PNG的LSB隐写在底层逻辑上完全不同:PNG是把数据直接写进像素的最低有效位,而JPEG是有损压缩,像素值会在压缩中变化,所以LSB隐写在JPEG上不成立。

为了在 JPEG 中隐藏信息,出题人通常会将数据嵌入到 DCT(离散余弦变换)的量化系数中。这就是所谓的“压缩域/变换域”隐写。

推断前提:

  • 附件是 .jpg / .jpeg 格式。

  • 常规手段(strings、exiftool、binwalk)均未发现明显线索。

  • 尝试使用 zsteg 或 StegSolve 无任何反应。

我们可以使用stegdetect命令来检验指纹 即stegdetecd 文件名 如果输出类似 jphide(***) 或 outguess,就可以对应去寻找提取工具。

不过stegdetect 是概率性检测,存在误报和漏报。如果它没报出结果,不代表绝对没有隐写,依然需要手动尝试下面最常用的工具。

  1. Steghide 支持JPEG/BM/WAV,方式:steghide info 文件名(查看是否嵌入) 提取:steghide extract -sf 文件名 -p “密码” 如果没有密码可以使用/usr/share/wordlists/rockyou.txt字典爆破
  2. QutGuess //无密码 outguess -r 图片.jpg 输出.txt //带密码 outguess -k “密码” -r 图片.jpg 输出.txt
  3. jpseek 图片.jpg 输出文件.txt
MISC——图片隐写之JPEG DCT隐写
https://imjiazi.top/posts/misc10/
作者
甲子
发布于
2026-11-09
许可协议
CC BY-NC-SA 4.0