论文部分内容阅读
BIOS是计算机系统的重要组成部分,主要负责衔接硬件和操作系统。若能在BIOS中植入特殊逻辑,形成难以检测和清除的BIOS陷门,就可实现包括系统控制权截获、信息获取与状态监控在内的特殊功能。因此开展BIOS陷门关键技术研究不仅具有积极的现实意义,也具有重要的军事意义。本文以解放军信息工程大学未来发展基金项目(No.1201)的研究开发为背景,在分析代表性BIOS二进制文件的内部结构、代码混淆技术及安全机制的基础上,重点研究了BIOS陷门的植入与隐藏技术,设计实现了三种BIOS陷门,并对这些BIOS陷门的性能进行了测试。论文的主要工作和贡献包括:1.研究了BIOS内部安全机制。针对在逆向分析BIOS文件的过程中遇到的BIOS代码混淆问题,结合实例,分析并总结了BIOS中常见的代码混淆方法。在此基础上,通过逆向分析BIOS文件与官方提供的BIOS工具,并对比BIOS文件修改前后的变化情况,成功掌握了BIOS内部安全机制。2.提出了基于可执行模块伪造的模块级陷门植入方法和基于跳转指令目标地址修改的指令级陷门植入方法。前者通过将陷门代码伪造成BIOS可识别的可执行模块,然后将伪造模块植入BIOS文件模块间的空余区域,从而实现模块级陷门的植入。后者将陷门代码植入可执行模块内部空余区域,并将宿主模块内部跳转指令目标地址修改为陷门代码入口地址,从而实现指令级陷门的植入。3.在分析UEFI BIOS运行机制及安全隐患的基础上,提出了基于OS loader劫持的UEFI BIOS陷门植入方法。该方法将UEFI BIOS陷门以UEFI映像文件的形式写入位于磁盘内的UEFI系统分区,并通过劫持UEFI系统分区中的OS loader,实现UEFI BIOS陷门的植入。4.针对可驻留在计算机磁盘内的UEFI BIOS陷门,提出一种基于磁盘冗余空间的数据隐藏方法。该方法在分析磁盘分区策略和簇式文件系统的文件管理机制的基础上,将分散的文件簇冗余空间有机组合以存储敏感数据,并利用存储于分区策略冗余空间的数据结构来保存恢复原始数据所需信息。实验结果表明,基于磁盘冗余空间的数据隐藏方法具有隐蔽性高、系统开销小以及不影响文件系统有效空间大小等特点。5.根据对BIOS陷门关键技术的研究成果,并结合BIOS运行机制及实际需求,设计实现了多种BIOS陷门。这些BIOS陷门已应用于解放军信息工程大学未来发展基金项目(No.1201),而实际的测试结果验证了本文针对BIOS陷门关键技术所做研究的正确性和有效性。