论文部分内容阅读
Rootkit是一种隐藏进程、文件、注册表等系统信息的技术,它往往被病毒、木马等恶意程序所利用,帮助它们隐藏恶意行为以避免被用户和安全软件所发现。可以说,Rootkit在系统上的存在为病毒、木马等恶意程序提供了保护伞,也给系统及其使用者带来安全隐患。因此,对于系统中Rootkit技术及其检测方法的研究是当前计算机系统安全研究的热点之一。
不同操作系统中的Rootkit的实现技术是千差万别的,本论文以Windows中的Rootkit为研究对象,研究了Rootkit在Windows中进行信息隐藏的机制,包括:系统文件钩子、系统服务描述符表钩子以及直接内核对象修改等;并有针对性的设计和实现了一个Rootkit检测工具原型VITAL(Valorous windows rootki TpALadin)。该工具通过对Windows的系统文件进行MD5加密校验来检测其完整性并发现Rootkit的内联钩子,通过高低层视角信息比较来发现系统中被Rootkit隐藏的进程,还通过比较内存映像和系统DLL文件的差别来发现Rootkit在Windows内核系统服务描述符表中的钩子。
在实现系统文件完整性检测模块的过程中,为了克服由Windows补丁多,更新频繁所带来的系统文件版本多样性的困难,本论文为VITAL设计和实现了补丁追踪的功能,及时兼容最新发布的系统补丁;在实现隐藏进程检测模块的过程中,为了获取Windows的底层信息,本论文参考了当前针对Windows内核进行逆向工程的研究成果。考虑到未来Rootkit技术的发展,本论文还为VITAL设计了一种基于DLL(动态链接库)的插件规约,以便于实现其检测功能的扩展。在开发VITAL的过程中,各检测模块都遵循相应的规约进行开发,并被封装成DLL插件。最后,本论文通过对黑客之门等Rootkit的检测实验论证了VITAL具有较强的检测功能和较低的系统开销。