2025-09-25
杂项
00
请注意,本文编写于 72 天前,最后修改于 72 天前,其中某些信息可能已经过时。

目录

隐藏在二进制数据中的Flag
1. 常见图片文件的二进制头
PNG文件头
JPEG文件头
BMP文件头
2. 常见的图片隐写方法
2.1 LSB(最低有效位)隐写
2.2 DCT(离散余弯变换)隐写
2.3 调色板隐写
2.4 混合隐写
2.5 将文件直接嵌入图片
2.6 将数据藏在二进制中的隐写术
3. 常用的图片隐写分析工具
3.1 Steghide
3.2 OutGuess
3.6 010editer

隐藏在二进制数据中的Flag

1. 常见图片文件的二进制头

PNG文件头

文件头以89 50 4E 47 0D 0A 1A 0A为标识符

JPEG文件头

文件头以FF D8 FF为标识符。结束以FF D9为标识符

BMP文件头

文件头以42 4D为标识符

2. 常见的图片隐写方法

2.1 LSB(最低有效位)隐写

在每个像素的二进制表示中,修改最后一个位来隐藏数据。例如,一个像素的颜色为11110000,可以修改最低有效位为11110001,从而隐藏一个比特。

2.2 DCT(离散余弯变换)隐写

DCT系数表示图像中的频率信息,隐写数据时会修改低频部分的系数,通常不影响图像质量。主要用于JPEG

2.3 调色板隐写

通过改变图像的调色板,将某些颜色替换成数据编码。颜色的变化很微小,难以察觉。

2.4 混合隐写

通过在不同的区域或多个方法上进行数据嵌入。

2.5 将文件直接嵌入图片

将目标文件的二进制数据直接附加到图片文件的结尾部分,或者使用特定工具将文件嵌入图片内。

2.6 将数据藏在二进制中的隐写术

通过修改图像文件的二进制数据,直接在文件流的非图像区域嵌入数据。这种方法并不直接依赖图像的视觉特性,而是改变文件的结构。例如,可以在文件的末尾添加自定义数据,或者修改文件头中的某些字段来存储隐藏的数据。

3. 常用的图片隐写分析工具

3.1 Steghide

Steghide是一个流行的隐写工具,支持将文本或文件嵌入图像中。

  • 使用方法:通过命令行操作,将文件或信息嵌入到图像中,或者从图像中提取隐藏数据。
  • 示例
    bash
    steghide embed -cf image.jpg -ef secret.txt steghide extract -sf image.jpg

3.2 OutGuess

OutGuess是一种广泛用于JPEG图片的隐写分析工具,支持提取隐藏的数据。

  • 使用方法:通过分析图片的频率信息,OutGuess可以提取出嵌入的数据。

  • 示例

    bash
    outguess -k password -d extracted_data.jpg secret.jpg

3.3 Zsteg

Zsteg是一个专门用于分析PNG和BMP图片的工具,可以检测并提取隐藏的数据。

  • 使用方法:通过Zsteg命令,分析图片的二进制结构,查找可能的隐写数据。

  • 示例

    bash
    zsteg image.png

3.4 Binwalk

Binwalk是一款常用的工具,用于分析二进制文件,可以识别嵌入在图像中的其他文件或数据。

  • 使用方法:Binwalk能够扫描图片文件,查找嵌入的文件系统或数据。

  • 示例

    bash
    binwalk image.jpg

3.5 StegoVeritas

StegoVeritas是一个专用的隐写检测工具,可以帮助分析和提取嵌入在图像中的数据。

  • 使用方法:这是一个图形化工具,拖进去就行。

3.6 010editer

010editer是一个专用于二进制分析的隐写工具,万金油工具,可以用来查看文件头,或者二进制数据。

  • 使用方法:这是一个图形化工具,拖进去就行。
  • 悄悄提一嘴,没有工具的可以用这个二进制分析的网站:https://hexed.it/
  • 实话说还不错。

本文作者:晏秋

本文链接:

版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!