misc工具使用(图片篇)
Stegsolve
1.File Format:文件格式
可以查看文件的基本信息
2.Data Extract:数据提取
左边部分:
Alpha:决定是否透明
图片隐写,RGB三个通道进行组合,一般以各种组合进行计算,可以只查看单个通道
四个通道都为8bit,取值0-255
右边部分:
Extract By :只有Row和Column两种组合对应zsteg的-o xy和yx组合
Bit Order :MSB是一串数据的最高位,LSB是一串数据的最低位,例如一个16位(双字节)的数据,比如0xFF1A
,那么高位字节就是0xFF
,低位是0x1A
。
Bit Plane Order:穷举排列就行
3.Steregram Solve:立体试图 可以左右控制偏移
4.Frame Browser:帧浏览器 主要是对GIF之类的动图进行分解,把动图一帧帧的放
5.Image Combiner:拼图,图片拼接
zsteg
在LSB隐写中,该工具的方便程度高于stegsolve
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 -c, --channels X 通道 (R/G/B/A) 或任何组合,以逗号分隔 有效值:r,g,b,a,rg,bgr,rgba,r3g2b3,... -l, --limit 已检查 N 个限制字节,0 = 无限制(默认值:256) -b, --bits N 位数,单个 int 值或 '1,3,5' 或范围 '1-8' 高级:指定单个位,如“00001110”或“0x88” --lsb 最低有效位在前 --msb 最高有效位在前 -P, --prime 仅分析/提取素数字节/像素 --invert 反转位 (XOR 0xff) -a, --all 尝试所有已知的方法 -o, --order X 像素迭代顺序(默认值:'auto') 有效值:ALL,xy,yx,XY,YX,xY,Xy,bY,... -E, --extract NAME 提取指定的payload,NAME类似于'1b,rgb,lsb' --[no-]file 使用'file'命令检测数据类型(默认:YES) --no-strings 禁用 ASCII 字符串查找(默认:启用) -s, --strings X ASCII 字符串查找模式:first, all, longest, none (默认:第一) -n, --min-str-len X 最小字符串长度(默认值:8) --shift N 前置 N 个零位 -v, --verbose 详细运行(可以多次使用) -q, --quiet 静音任何警告(可以多次使用) -C, --[no-]color 强制(或禁用)颜色输出(默认值:自动)
作者连接:zed-0xff/zsteg: detect stegano-hidden data in PNG & BMP (github.com)
一般zsteg [filename]先查一下图片,暴力的就是zsteg -a [filename]
SilentEye
这个工具是window下的可以把文字隐藏到图片或者音频的工具,那么这个工具的原理是将数据进行了AES128或者256加密后放入图片,音频中,那么加密条件如下:加密的字段和图片大小有关,越大的图片一般可以容纳数据的大小更大
使用方法很简单就不说了
最重要的是加密特征:
图片上会出现斑点的痕迹,通过stegsolve可以看出明显斑点
steghide
安装:apt-get install steghide
使用方法:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 第一个参数必须是以下之一: 嵌入,--嵌入嵌入数据 extract, --extract 提取数据 info, --info 显示有关封面文件或隐写文件的信息 info <filename> 显示有关 <filename> 的信息 encinfo, --encinfo 显示支持的加密算法列表 version, --version 显示版本信息 license, --license 显示steghide的许可证 help, --help 显示这个使用信息 嵌入选项: -ef, --embedfile 选择要嵌入的文件 -ef <文件名> 嵌入文件 <文件名> -cf, --coverfile 选择封面文件 -cf <文件名> 嵌入文件 <文件名> -p, --passphrase 指定密码 -p <passphrase> 使用 <passphrase> 嵌入数据 -sf, --stegofile 选择隐写文件 -sf <filename> 将结果写入 <filename> 而不是覆盖文件 -e, --encryption 选择加密参数 -e <a>[<m>]|<m>[<a>] 指定加密算法和/或模式 -e none 在嵌入前不加密数据 -z, --compress 在嵌入前压缩数据(默认) -z <l> 使用级别 <l>(1 最佳速度...9 最佳压缩) -Z, --dontcompress 嵌入前不压缩数据 -K, --nochecksum 不嵌入嵌入数据的crc32校验和 -N, --dontembedname 不嵌入原文件名 -f, --force 覆盖现有文件 -q, --quiet 抑制信息消息 -v, --verbose 显示详细信息 提取选项: -sf, --stegofile 选择隐写文件 -sf <文件名> 从 <文件名> 中提取数据 -p, --passphrase 指定密码 -p <passphrase> 使用<passphrase> 提取数据 -xf, --extractfile 选择提取数据的文件名 -xf <文件名> 将提取的数据写入<文件名> -f, --force 覆盖现有文件 -q, --quiet 抑制信息消息 -v, --verbose 显示详细信息 信息命令的选项: -p, --passphrase 指定密码 -p <passphrase> 使用 <passphrase> 获取有关嵌入数据的信息
注意:steghide不支持png格式的图片,支持 JPEG、BMP、WAV 和 AU 文件
官方网站:Steghide (sourceforge.net)
基本语句:
加密
1 steghide embed -cf secret.jpg -ef secret.txt
查看信息
1 steghide --info secret.jpg
解密
1 steghide extract -sf secret.jpg
扩展:利用stegseek爆破密码
Releases · RickdeJager/stegseek (github.com)
下载.deb文件
1 2 3 4 5 6 7 sudo apt install ./stegseek_0.6-1.deb # 使用下面的命令可以对图片的steghide隐写密码进行爆破 time stegseek secret.jpg password.txt # password.txt是字典
然后会生成secret.jpg.out文件,里面的内容就是flag
F5-steganography
F5隐写是一种基于LSB(最低有效位)替换的隐写方法,其原理如下:
将待隐藏的消息转换成二进制编码,例如,将一个字符转换为8位二进制编码。
将载体文件(通常是图像文件)转换为像素序列,即将每个像素点的RGB值转换为二进制编码,通常是24位。
将消息二进制编码的每一位依次嵌入到载体文件像素序列的最低有效位上(即将载体文件像素序列的最低位替换为消息二进制编码的每一位)。
嵌入消息后,可以通过比较载体文件原始像素序列和修改后的像素序列的最低有效位来检测是否存在隐藏的消息。如果最低有效位发生了变化,则可以确定存在隐藏的消息。
工具下载:
1 git clone https://github.com/matthewgao/F5-steganography
加密:
1 2 3 java Embed lopez.bmp lopez.jpg -c "" -e bin.noise -p 123456 其中,“lopez.bmp”(原载体文件)、“lopez.jpg”(嵌入隐藏信息后的载体文件)、“bin.noise”(信息文件)以及“123456”(密码)
解密:
1 java Extract lopez.jpg -p 123456
加密后的图片基本上无法查看出什么问题,只能通过工具去尝试了
stegdetect
建议在window下,kali使用make安装会报错
学习链接:https://blog.csdn.net/qq_53079406/article/details/124596878
命令行用法:
1 2 3 4 stegdetect探测 .\stegdetect.exe -tjopi -s 10.0 yummy.jpeg stegbreak爆破密码 .\stegbreak.exe -r .\rules.ini -f .\password.txt -t p .\yummy.jpeg
批量处理:
1 .\stegdetect.exe -tjopi -s 10.0 *.jpeg
可视化界面:
记得更改敏感度更高一些
这个工具主要是用于探测JSteg、JPHide、OutGuess、Invisible Secrets、F5、appendX和Camouflage等这些隐写工具隐藏的信息,具体的解法需要下载相应的工具进行处理
outguess
kali可以直接安装
1 sudo apt install outguess
链接:https://www.kali.org/tools/outguess/