2026.7.13(5)【图片隐写】镜子里面的世界

2026.7.13(5)【图片隐写】镜子里面的世界

📌 题目信息

项目内容
题目名称镜子里面的世界
题目来源BUUCTF
题目类型MISC / 图片隐写
子分类LSB(最低有效位)隐写
考点LSB隐写原理、StegSolve通道提取
难度⭐⭐
最终 Flagflag{st3g0_saurus_wr3cks}


🛠️ 使用工具

  • StegSolve(核心工具,用于LSB隐写提取)
  • zsteg(备用方案,命令行工具)

📝 解题思路

这道题的核心是LSB(最低有效位)隐写。图片中的英文look very closely(仔细观察)暗示了信息隐藏在不易察觉的地方。解题的关键是使用 StegSolve 提取 RGB 三个通道的最低位(0通道)数据。

💡LSB原理:LSB 全称为 Least Significant Bit,即最低有效位。它通过修改每个像素点 RGB 颜色分量的最低二进制位来隐藏信息,而人眼不会注意到这种微小的变化(具体看补充)。


第 1 步:下载附件并初步检查

下载题目附件,解压后得到一张图片(通常为.png格式)。

可以先做快速检查:

  • 查看图片属性,无有用信息
  • binwalkforemost分离,没有额外文件(具体看补充)
  • strings或十六进制编辑器查找flag,无结果

这些常规方法都无效,说明信息是通过 LSB 隐写隐藏在像素中的。


第 2 步:用 StegSolve 打开图片

运行StegSolve,点击File → Open,导入题目图片。


第 3 步:进入 Data Extract 功能

点击菜单栏的Analyse → Data Extract,打开数据提取窗口。


第 4 步:设置提取参数

在 Data Extract 窗口中:

  1. Red、Green、Blue三个通道的Bit Plane全部设为0(即提取每个通道的最低有效位)。
  2. 勾选LSB First(如果 Preview 无结果可以尝试切换MSB First)。
  3. 点击Preview按钮预览提取结果。

此时,预览区域应该会显示隐藏的 Flag 信息。

⚠️注意:如果在 Red/Green/Blue 的 0 通道看到图片左上角出现异色点或文字,就说明是 LSB 隐写。

🔧 备用方案:使用 zsteg(命令行)

如果 StegSolve 不可用,也可以使用zsteg工具一键提取:

zsteg steg.png --all

或者提取特定通道:

zsteg -e b1,rgb,lsb,xy steg.png

zsteg会自动检测并输出隐藏信息。


⚠️ 常见陷阱

特别注意:提取出的 Flag 中,st3g0_saurus之间有一个空格。提交时需要删除这个空格,否则会报错。

  • 提取结果可能显示为:st3g0_ saurus_wr3cks
  • 正确格式应为:st3g0_saurus_wr3cks

🏁 最终 Flag

flag{st3g0_saurus_wr3cks}

⚠️注意:Flag 中的st3g0数字 0而非字母o