论文部分内容阅读
随着计算机互联网行业的蓬勃发展,被恶意代码攻击的事件数目呈直线上升态势,进一步带来了杀毒软件的发展。为了对抗杀毒软件,一些恶意代码的研究者通过制造免杀工具来改造病毒,促使杀毒软件无法识别该类病毒,这一过程,称为病毒的免杀。然而,目前大多数的免杀工具都不会集成特征码的查找与修改等功能。在一个恶意程序的免杀修改过程中,通常首先需要特征码的定位,然后由恶意代码的技术研究者根据不同情况做出判断。技术研究者会通过选择一些工具对恶意代码修改,而且在修改的过程中通常需要使用多个软件进行同一种免杀方案的实现。这就导致了需要大量时间去完成恶意代码的免杀。所以,我们提出并实现了一个自动化的恶意代码免杀平台,不仅能够提供一个单一免杀方案的自动化修改功能,而且能够提供通过集成恶意代码中特征码的定位方式以及各种恶意代码修改方式进行的一站式自动化定位修改功能。另外,它还能够为更好地带动防御技术的发展与保护国家网络空间安全贡献一份力量。针对本文中所面临的诸多难题,本文提出了解决方案并进行了实现:一、为解决在恶意代码免杀过程中出现的基础性问题,即恶意代码的特征码定位,本文提出并实现了基于逐块暴露定位算法与机器码对齐技术的可用特征机器码提取技术,该技术未见文献记载。二、为解决在代码段出现的特征码的修改,本文提出并实现了基于内联钩子回环跳转实现指令移动方法的特征机器码擦除技术,该技术未见文献记载。另外对于代码段的修改,实现了等价机器码替换;对于代码段的混淆性,实现了花指令添加。三、为解决导入表中出现的特征码的修改,本文提出并实现了两种方案,一种是基于混淆算法的导入表字符串重新排列的免杀方案,另一种是采用导入表动态加载技术实现的免杀方案。四、为实现通用免杀,本文实现了壳添加方案。最后本文详细描述了测试时的系统环境配置以及各个模块的测试流程,并且通过一个实际的免杀过程测试,对自动化免杀系统界面及使用到的相关功能进行了展示。本文最终实现了一个Window PE恶意代码自动化免杀的系统,为恶意代码的免杀提供了一个更加方便的解决方案,为系统的防御提供了一些反向思路,为我国的网络空间安全的技术研究贡献了一份力量。