数据的隐藏方法
数据的隐藏方法
目录
(睁大眼睛)
隐写技术
一、前言:
最近 5 年恶意软件中利用的隐写技术已有所增多。 攻击者可以利用这些技术成功将恶意软件渗透过防火墙、 Web应用过滤软件、 入侵防御系统 以及其他没有被侦察的网络层的防御系统,基本方法:将数据隐藏到载体文件中
隐写后原始信息被掩盖或者不可见。 在数字隐写术中, 人们通常会使用某种程序将消息或文件嵌入到一个载体文件中, 然后把这个载体文件直接传给接收者或者发布到网站上供接收者下载。 接收者获取载体文件后, 再用同样的程序把隐藏的消息或文件恢复。 有些隐藏程序会使用密码来保护隐藏消息, 还有些程序除密码外, 还会通过加密来保护隐藏数据。
二、数字信息的隐藏, 主要分两大类
2.1、插入:
通过插入方法隐藏消息会插入一些额外内容, 除了被隐藏的消息外, 还有文件制作工具的标识, 这入方法隐藏消息会插入一些额外内容, 除了被隐藏的消息外, 还有文件制作工具的标识, 这个标识记录了隐写程序处理隐藏栽荷的地点。 这种方法通常会利用文件格式中的空白部分。
2.2、替换:
通过替换方法隐藏消息会改变消息中的宇节或者交换宇节顺序。 它不会在栽体文 件中增加任何新的内容, 而是通过修改宇节或者调整宇节位置让人们看不到或者听不到文件内容。 例如,LSB (Least Significant Bit, 最低有效位
三、插入方法
3.1、插入和隐写的本质区别:
在隐写术中, 很重要的一点就是从原始数据或者原始承载文件的角度考虑问题。 使用插入方法, 不会改变原始数据, 而是为文件增加了额外数据。 使用修改方法则恰恰相反: 未增加额外数据, 却改变了原始数据。 对于整个文件来说, 这两个方法都修改了文件;但对千数据而言, 插入方法增加了数据, 而修改方法改变了原始数据。 通过后面内容的学习, 你会很快发现, 不少隐写程序同时应用了这两种方法。
3.2、追加插入法
(软件有:JPEGX www.nerdlogic.com)
在文件末尾附加数据应该是数字隐写术里最常用、最简单的方法。可以在很多类型的文件后追加数据,却不会导致文件破坏。WinHex是一个16进制的编辑软件,可以通过它查看文件的原始格式,它可以显示文件的所有数据,包括换行符和可执行代码。而且所有的数据都是以两位十六进制格式显示的,中间部分显示的是以十六进制表示的文件数据,左列显示的是计数器和偏移址,用于跟踪不同内容在文件中的位置。右列是以ASCII码格式表示的文件数据
(由于ASCII码的局限性,并不是所有的十六进制数据都有与之对应的ASCII码)
正常的JPEG文件末尾有一个标为"OxFF OxD9" 的文件结束符(End oflmage, EOI)。
使用编辑软件打开并写入语句。用WinHex打开这个修改过的文件就可以看到附加在文件末尾的数据,附加的数据是紧跟在文件结束符OxFFOxD9后面的。
当浏览文件时,EOI之上的数据隐藏通常会被忽略,但是它通常会表明存在带有隐藏数据的修改过的文件。
3.3、前置插入法
任何可以插入批注内容的文件都可能被插入数据,毫不影响视觉效果。
例如,HTML文件和JPEG文件都很容易用来嵌入数据。
以JPEG文件为例,我们最多可以在其中 插入65533个字节的批注信息,而这些内容在浏览图像的时候都是看不到的。JPEG文件被文件标识符分成不同的区域,每个标识符都以OxFF开头。这些标识符标识着文件的布局、格式和其他详细信息,具体如表3.1所示。
3.4、JPHS使用方法:
3.4.1、 原理:
在JPEG文件首部,有很多数据区域可以用来隐藏信息。使用JPHideandSeek修改后的JPEG文件与原始文件的对比图。请注意JPEG应用程序标识符OxFF OxEO和帧起始标识符OxFFOxCO这两个标识符之间插人和修改的数据。
JPHideandSeek:(windows界面化下载)
你可以毫不费力地在 JPEG 文件的批注区域 隐藏大量的数据, 尽管在公共区域 最多可以插入65 533个字节的批注信息, 但必须至少插入两个字节。 批注区是数据隐藏的绝好位置,因为在 APPO 标识符的作用下, 解码器(图像浏览器)无法识别的原数据都被忽略掉了, 浏览图像时自然就看不到了。
3.4.2、使用方法:
(在上面我这个博客里有详细的使用讲解)
四、 修改方法
4.1、原理:
最常用的隐写修改方法就是修改文件中 个或者多个字节的最低有效位 基本上就是把0改成1或者把1改成0。 这样修改后生成的图像就有了渲染效果, 把这些比特位重组还原后才可以看到原始的隐藏消息, 而人们仅靠视觉或听觉是不可能发现 这些改动的。
4.2、LSB修改方法
最低有效位(LSB)修改法利用的是24位调色板。 调色板中有红、 绿、 蓝三原色, 这一点和电视机分量视频的视频显示原理类似, 分量视频就是使用红、 绿、 蓝三根线把视频信号传输到电视机上的。
在一个图像的24位调色板中, 每8位表示一个原色, 也就是说红、 绿、 蓝分别有256个色调
由于人眼只能识别红、 绿、 蓝3种颜色,因此需要通过混合这 3种颜色来指定24位图像的每个像素的颜色。查看图像内容的时候,你会看到3个十六进制数字(3元组),它们分别代表红色、绿色和蓝色。
在LSB修改法中,8位颜色值的最后一位(最低有效位)由1改为0,由0改为1,或者保待不变
每个字节的最低有效位的组合表示插入的隐藏内容。如果是文本信息的话,这些最低有效位重新组合后,每8位就代表一个ASCII字符
这种隐藏方法通过普通的手段几乎是检测不到的。 通常只有通过统计分析方法才能将其以独立的形式被检测到。 LSB修改后的图像产生的颜色, 肉眼基本上看不出两者的差别。
通过文件中最低有效位传递消息提供了 一个存储信息的隐藏方法, 而且还不会改变文件
大小。 对比原始文件和修改后的文件可以发现文件被修改过, 但前提是你手上有原始文件。
这种修改方法适用于24位的图像文件, 例如JPEG文件和24位的BMP文件。 这类文“
件格式(ROB图像) 也叫做 “真彩色” 文件格式。LSB修改法同样也适用于8位的BMP图
像文件,和使用ImageHide时的情况样。利用这种隐写修改法的常用程序有:
(自我经验:百分之90以上好评的,差不多都可以下)
S-Tools(找了一圈只有csdn里面可以下载)
ImageHide(这个在网上可以随便搜到)
Steganos(也可以搜到)
- 点赞
- 收藏
- 关注作者
评论(0)