论文部分内容阅读
随着rootkit技术的发展,病毒程序设计者趋于利用rootkit技术来隐藏他们的非法行为,从而达到自己的目的。虽然目前存在各种各样的检测windows rootkit的工具,但这些工具只能检测某些特定的rootkit,无法检测到一些新型的windows rootkit病毒。本文提出了一个新的、基于windows内核对象的rootkit检测技术方法,该方法能够检测到目前windows环境下的大多数rootkit病毒。该方法的基本原理就是通过扫描、检测windows操作系统内核中的关键的内核对象,如:中断描述符表(IDT)、系统服务描述符表(SSDT)、重要PE(Portable Executive)文件、有关记录进程信息的数据结构等等,并对这些内核对象进行更深入、更全面的保护。基于本文提出的windows rootkit检测的研究成果,作者设计了一个新型windows rootkit检测工具,该工具是目前最全面的windows rootkit检测工具。它可以检测IDT/SYSENTER hook、SSDT hook、Inline hook、IAT/EAT hook、驱动函数hook,以及检测隐藏端口信息、隐藏文件信息和隐藏进程信息。论文的主要工作如下:1、对windows rootkit技术的历史背景、定义、分类进行了综述,并详细分析了windows rootkit的各种实现技术,包括:中断描述符表、内核修补技术、PE文件分析。2、研究了现有的各种windows rootkit检测方法。利用这些检测方法对几种著名的windows rootkit以及目前的rootkit技术进行检测,然后对检测情况作了简要的评述,指出了现有检测方法的缺陷以及需要改进之处。3、提出了一种基于windows内核对象的rootkit检测方案,以全面、有效地检测各种现有的windows rootkit。windows内核对象包括:windows系统内核架构对象、windows系统内核PE文件对象、基于windows系统内核功能对象。a)基于windows系统内核架构对象的rootkit检测就是对内核架构各层的检测使用综合的检测方法。例如不将inline hook的检测方法仅仅局限于SSDT表里的函数,而是扩展到凡是有内核函数地址调用的情况,都需要进行inline hook检测。b)基于windows系统内核PE文件对象的rootkit检测方法是检测hook点的内容是否与PE文件相应的地址处的内容相匹配。c)基于windows系统内核功能对象的rootkit检测方法就是依靠系统中大多数相关内核功能对象来检测相关rootkit。4、基于本文提出的检测方案,作者实现了一个windows rootkit的检测工具rootkitchecker.exe,该工具可以全面的、准确的检测目前所有流行的windows rootkit。本文的研究工作对windows rootkit的检测方法提供了比较完整的分析和总结,所提出的基于内核对象检测方法,弥补了现有检测方法的不足,可以有效的检测出各种windows rootkit.