420 字
2 分钟
MISC——图片隐写之二维码隐写

1793698885880-ejqc62.jpg

在 CTF 中,二维码很少直接让你“掏出手机扫一下”就出 flag。它通常是以破损、反色、缺角、或 01 矩阵的形式出现,考察的是你“修复图形”和“还原数据”的能力。

特征

  • 题目附件直接给了一张二维码图片,但扫不出来。

  • 分离出的文件里,有一张损坏的二维码(缺定位角、中间有污损、颜色反转)。

  • 提取出一段纯文本,内容全是 0 和 1(01 矩阵)。

  • 图片被切成了几块(碎片拼接)。

工具安装:#

apt install zbar-tools zbarimg 图片.png //使用工具进行扫码

如果二维码被反色,可以使用StegSolve工具或者ps进行反相 Linux下命令:convert 原图.png -negate 反色图.png

QRazyBox网页工具

  1. 导入图片:在 Tools -> Extract QR Information 载入图片,它会自动读取格式信息。
  2. 手动填补:
    • 利用左侧的画笔工具,黑色块选“Fill”,白色块选“Empty”。
    • 如果是被遮挡或污损的区域,根据你肉眼看到的边缘规律,手动把它涂黑或涂白。
  3. 自动纠错(关键):涂完之后,点击 Tools -> Reed-Solomon Decoding(或者直接点右上角的 Decode 按钮)。
    • 二维码有约 30% 的纠错能力,你只需补全明显的定位角和格式信息,剩下的残损它会自动帮你算出来并解码。

有时候你从图片的 LSB、文件尾部或者文本里提取出来一长串的 0 和 1,比如:
111111100110101011111110100...时,就有可能时01矩阵隐写,一般可以转换为二维码,可以使用脚本去跑出来。

MISC——图片隐写之二维码隐写
https://imjiazi.top/posts/misc8/
作者
甲子
发布于
2026-11-09
许可协议
CC BY-NC-SA 4.0