CTF-MISC(隐写篇)
字数 1629 2025-08-15 21:30:23

CTF隐写技术全面解析

一、图片隐写技术

1. JPG文件隐写

基本特征

  • 文件头标识:FF D8
  • 文件结束标识:FF D9

LSB隐写技术

  • 原理:修改图片中RGB颜色通道的最低有效位(LSB)
  • 工具:Stegsolve
    • 操作步骤:
      1. 打开加密图片
      2. 选择Analyse-DataExtract
      3. Bit Planes选中Red、Green、Blue的第0位
      4. Bit Order选中LSBFirst
      5. Bit Plane Order选中RGB/GRB/BGR等组合

例题分析

  • 网鼎杯第二场"套娃":在最后一张图片中使用LSB隐写得到flag

2. PNG文件隐写

基本特征

  • 文件头标识:89 50 4E 47 0D 0A 1A 0A

IDAT隐写技术

  1. 使用pngcheck分析文件:pngcheck.exe -v file.png
  2. 判断异常IDAT串,使用winhex等工具创建新文件
  3. 解压IDAT内容:
    • 使用Python解压IDAT块
    • 常见得到30(0)和31(1)的数据
    • 转换后可能构成二维码等图像

文件高度修改

  • 使用hex编辑器修改PNG文件的高度值
  • 例题:第六届山东省大学生网络安全大赛"漂亮的小姐姐"
    • 修改高度值03 1e为06 1e

PIL图片处理技术

  1. 简单异或或加密
  2. 根据像素进行填充补全
  3. 分析像素色差
  4. 去除相同通道的值
  5. 降噪等高级应用

3. GIF文件隐写

基本特征

  • 文件头标识:47 49 46 38 39(37) 61

文件头修复

  • 例题:2017年山东省省赛misc
    • 修复损坏的GIF文件头为"GIF89a"

帧分离技术

  • 将GIF分离为单帧图片
  • 可能在特定帧中隐藏数据

二、视频隐写技术

工具

  • ffmpeg

主要考点

  1. metadata中隐藏信息
  2. 视频帧中隐藏数据
  3. 将视频转化为图片序列分析

例题分析

  • 2019 RoarCTF"黄金六年"
    1. 使用ffmpeg逐帧分解视频(得到632张图片)
    2. 在特定帧(149,295,492,606)找到二维码
    3. 组合扫描结果作为密码(iwantplayctf)
    4. 视频末尾存在base64编码的RAR文件
    5. 解压得到flag

三、音频隐写技术

常用工具

  • Audacity
  • silienteye
  • MP3StegoDecode

主要考点

  1. 声音波形中隐藏信息(顺序/逆序)
  2. 频谱图中隐藏数据
  3. 音频文件中嵌入其他文件
  4. 摩斯电码

例题分析

  1. 使用Audacity直接查看波形或频谱图获取flag
  2. 使用silenteye工具解密隐藏信息
  3. MP3Stego案例:
    • 合并分段文件(xaa-xag)
    • 使用MP3Stego解密:decode.exe -X -P 密码 1.mp3
    • 例题密码提示:"葫芦小金刚的英文名称"(GourdSmallDiamond)

四、文档隐写技术

WORD隐写

  • 在文档设置中取消隐藏内容
  • 可能包含隐藏文字或水印

五、实用工具总结

  1. 分析工具

    • Stegsolve (LSB分析)
    • pngcheck (PNG文件分析)
    • binwalk (文件分离)
    • ffmpeg (视频处理)
  2. 编辑工具

    • WinHex/HexEditor (十六进制编辑)
    • Photoshop (图片修复)
    • Audacity (音频分析)
  3. 解密工具

    • MP3Stego (音频隐写)
    • silenteye (图像/音频隐写)

六、解题思路总结

  1. 文件识别

    • 检查文件头确认真实类型
    • 使用file命令或十六进制查看器
  2. 基础分析

    • 检查文件元数据(exiftool)
    • 查找异常字符串或数据
  3. 高级分析

    • 根据文件类型选择相应工具
    • 尝试常见隐写技术(LSB,IDAT,帧分离等)
    • 组合多个线索(如视频+二维码+压缩包)
  4. 数据提取

    • 注意文件末尾附加数据
    • 尝试各种编码转换(hex,base64等)
    • 组合分段文件
  5. 密码破解

    • 从图片/视频中提取密码提示
    • 尝试常见密码组合

通过系统性地应用这些技术和工具,可以有效解决CTF比赛中的各类隐写题目。

CTF隐写技术全面解析 一、图片隐写技术 1. JPG文件隐写 基本特征 文件头标识:FF D8 文件结束标识:FF D9 LSB隐写技术 原理:修改图片中RGB颜色通道的最低有效位(LSB) 工具:Stegsolve 操作步骤: 打开加密图片 选择Analyse-DataExtract Bit Planes选中Red、Green、Blue的第0位 Bit Order选中LSBFirst Bit Plane Order选中RGB/GRB/BGR等组合 例题分析 网鼎杯第二场"套娃":在最后一张图片中使用LSB隐写得到flag 2. PNG文件隐写 基本特征 文件头标识:89 50 4E 47 0D 0A 1A 0A IDAT隐写技术 使用pngcheck分析文件: pngcheck.exe -v file.png 判断异常IDAT串,使用winhex等工具创建新文件 解压IDAT内容: 使用Python解压IDAT块 常见得到30(0)和31(1)的数据 转换后可能构成二维码等图像 文件高度修改 使用hex编辑器修改PNG文件的高度值 例题:第六届山东省大学生网络安全大赛"漂亮的小姐姐" 修改高度值03 1e为06 1e PIL图片处理技术 简单异或或加密 根据像素进行填充补全 分析像素色差 去除相同通道的值 降噪等高级应用 3. GIF文件隐写 基本特征 文件头标识:47 49 46 38 39(37) 61 文件头修复 例题:2017年山东省省赛misc 修复损坏的GIF文件头为"GIF89a" 帧分离技术 将GIF分离为单帧图片 可能在特定帧中隐藏数据 二、视频隐写技术 工具 ffmpeg 主要考点 metadata中隐藏信息 视频帧中隐藏数据 将视频转化为图片序列分析 例题分析 2019 RoarCTF"黄金六年" 使用ffmpeg逐帧分解视频(得到632张图片) 在特定帧(149,295,492,606)找到二维码 组合扫描结果作为密码(iwantplayctf) 视频末尾存在base64编码的RAR文件 解压得到flag 三、音频隐写技术 常用工具 Audacity silienteye MP3StegoDecode 主要考点 声音波形中隐藏信息(顺序/逆序) 频谱图中隐藏数据 音频文件中嵌入其他文件 摩斯电码 例题分析 使用Audacity直接查看波形或频谱图获取flag 使用silenteye工具解密隐藏信息 MP3Stego案例: 合并分段文件(xaa-xag) 使用MP3Stego解密: decode.exe -X -P 密码 1.mp3 例题密码提示:"葫芦小金刚的英文名称"(GourdSmallDiamond) 四、文档隐写技术 WORD隐写 在文档设置中取消隐藏内容 可能包含隐藏文字或水印 五、实用工具总结 分析工具 : Stegsolve (LSB分析) pngcheck (PNG文件分析) binwalk (文件分离) ffmpeg (视频处理) 编辑工具 : WinHex/HexEditor (十六进制编辑) Photoshop (图片修复) Audacity (音频分析) 解密工具 : MP3Stego (音频隐写) silenteye (图像/音频隐写) 六、解题思路总结 文件识别 : 检查文件头确认真实类型 使用file命令或十六进制查看器 基础分析 : 检查文件元数据(exiftool) 查找异常字符串或数据 高级分析 : 根据文件类型选择相应工具 尝试常见隐写技术(LSB,IDAT,帧分离等) 组合多个线索(如视频+二维码+压缩包) 数据提取 : 注意文件末尾附加数据 尝试各种编码转换(hex,base64等) 组合分段文件 密码破解 : 从图片/视频中提取密码提示 尝试常见密码组合 通过系统性地应用这些技术和工具,可以有效解决CTF比赛中的各类隐写题目。