隐写
GIF隐写
考察点:文件头,帧间隔,
分离每一帧:
可用它进行分离,讲每一帧分离出来
文件头:
GIF98a,这可说明是个gif文件
修复可用:winhex或者记事本讲头修复
exif隐写
在元数据中隐藏,可以用右键属性查看,也可以用exif工具打开
图片的二进制数据也可以插入文本信息,常见于文件头或文件尾,可以使用linxu的strings名利提取,也可配合grep提高效率**
图种
可以在图片中隐藏一个压缩包,
在图片的数据后面添加一个压缩包,系统对图片进行读取的时候,会忽略 这段数据,对此可用binwalk进行分析,原理就是检测文件头
binwalk使用:
也可用foremost,用法类似,直接输入 foremost 文件名
binwalk -W 文件 文件 比对信息
foremost:
首先进行安装:
apt-get install foremost
PNG隐写
对于一个PNG文件来说,其文件头总是用固定的字节来描述的,剩余的部分由3个以上的PNG数据块按照特定的顺序组成
文件头 89 50 4E 47 0D 0A 1A 0A + 数据块
每个数据块由四个部分组成:
长度+数据块类型码+数据块数据+循环冗余检测
IHDR文件头数据块隐写
一个PNG数据流中只能有一个文件头数据块
其中关注的是前8字节的内容
很明显特征:win下可打开显示,linux下会报错(win对高度不严格)
例如在属性中的宽度有个值,转换为16进制后,在图片的16进制会有相对应的16进制字符,讲其中的高度改大一点就可以了
也可以脚本进行爆破(暂时不懂)
LSB最低有效位隐写
PNG文件中的图象像素一般是由RGB三原色组成的,每种颜色占8位,取值0x00-0xFF,256色,一共256^3色
LSB隐写就是修改RGB颜色分量的最低二进制位,而人类眼睛并不会注意到变化
每个像素可以携带3bit信息
stegdetect
通过分析评估JPG是用什么隐写的
命令行工具
(不是很懂怎么用)
JPG隐写
常见隐写方式jphide隐写,是基于LSB的jpeg隐写算法
盲水印
特点两张相同的图片,也可以用stegsolve
sileneye
音频隐写的工具(tools里没有
mp3隐写
两种方式:
- 题目给了密码,用mp3stego解密
- 附件只给了mp3,可能不是用mp3stego隐藏的数据,也有可能是在音轨的频谱隐藏了数据
压缩包
方式:
- 伪加密
- 明文攻击
- 爆破
伪加密
原理:zip文件头的加密标志位进行修改
基本知识:
一个zip文件由三个部分组成:压缩源文件数据区+压缩源文件目录区+压缩源文件目录结束标志
伪加密是将压缩源文件的目录去的全局方式标志位进行修改,把第二个加密标记位的00 00改为09 00,打开就会有密码
方法一:ZipCenO.jar需要java环境,完成后直接打开
java -jar ZipCenOp.jar r/e xxx.zip
r解密
e加密
方法二:用WinRAR修复
CRC32碰撞
一般给一个压缩包,里面包含一个文本文档,加密文件大小较小(一般4k)
明文攻击
就是已经通过其他手段知道zip加密文件的某些内容,比如在某些网站上发现它的readme.txt文件,或其他文件,这时就可以尝试破解了
用archpr
zip密码爆破
一个数据包有密码,不是伪加密,题目中有提示密码范围的时候,就需要破解,工具archpr
掩码攻击
给出某几个密码,archpr选择掩码
注释隐藏
PDF隐写
用工具里那个pdf隐写的工具,关闭工具时用任务管理器(wbStego4open
使用步骤:
- 打开文件
- 输入密码(可能没有密码,就继续
- 选择保存路径
还有一种:
可直接复制整个pdf到记事本中,可能flag隐藏在某个被遮挡的元素后面
HTML隐写
通过插入制表位和空格使嵌入的数据在浏览器中不可见,最多添加7个空格,使得每8列可以嵌入3位
工具:snow.exe 命令行启用
方法:snow.exe -C -p password file
doc隐藏
doc本质是一个压缩包
基本方式:设置同色字体,设置隐藏字体
可解压
NTFS流隐藏数据
工具扫描
也可命令行
通过插入制表位和空格使嵌入的数据在浏览器中不可见,最多添加7个空格,使得每8列可以嵌入3位
工具:snow.exe 命令行启用
方法:snow.exe -C -p password file
doc隐藏
doc本质是一个压缩包
基本方式:设置同色字体,设置隐藏字体
可解压
NTFS流隐藏数据
工具扫描
也可命令行
只有ra r文件不会丢失流