一种基于PE文件的信息隐藏技术研究
2021-06-05雷冲,梁丽
雷 冲, 梁 丽
(1.四川文理学院 智能制造学院; 2.招生就业处,四川 达州635000)
0 引 言
信息隐藏指把一个特定的信息隐藏在另一个公共载体的信息中而得到的隐蔽载体,非法者不知道这个普通信息中是否隐藏了其他的信息,即便知道也很难提取或去除隐藏的信息.所用载体可以是文本、图像、声音及视频等.[1-2]
PE文件的全称是Portable Executable,意为可移植的可执行的文件,常见的EXE、DLL、SYS,COM等都是PE文件,PE文件是微软Windows操作系统上的程序文件,而PE文件信息隐藏是指利用PE文件的存储空间冗余、结构特性和PE文件执行等特点,在不破坏PE文件的基本特性和使用价值的前提下,将受保护信息隐藏在载体PE文件中,实现版权保护、隐蔽通信等功能.[2]
1 PE文件结构
PE文件结构如图1所示,以Windows 32位操作系统为例,一个标准的PE文件一般由四大部分组成:DOS头、PE头、节表、节内容.其中DOS头由DOS MZ头和DOS Stub构成,DOS MZ头即IMAGE_DOS_HEADER,占据了PE文件的头64个字节,其中最重要的两个字段是e_magic和e_lfanew,e_magic是位于偏移0处的“MZ标志”,其值为0x5A4D,e_lfanew(0x3c处)指出了PE头的起始偏移量,紧接着是DOS Stub,它是一个字节块,其内容随着链接时使用的链接器不同而不同,其大小不固定,在Windows NT系统下被当做是冗余数据.紧接着是PE头,其由四个字节的PE头标识Signature,20个字节的标准PE头和224个字节的扩展PE头组成,紧接着是节表,由多个IMAGE_SECTION_HEADER结构组成,一个IMAGE_SECTION_HEADER结构占40个字节,用来描述一个区块(又名节)的属性和位置信息,它们之间是一一对应关系,有多少个区块就有多少个这样的结构.[3-6]

节内容....reloc节.rsrc节.data节.text节节表n×IMAGE_SECTION_HEADER结构PE头16×IMAGE_DATA_DIRECTORY结构IMAGE_OPTIONAL_HEADER32结构……
