论文部分内容阅读
Rootkit是攻击者在入侵系统后用来保持对系统的超级用户访问权限,创建后门和隐藏攻击痕迹等常采用的一种技术。Rootkit存在于Linux,Solaris和Windows等各种操作系统上。
根据Rootkit的外部表现,Rootkit分两种:可持久的Rootkit和基于内存的Rootkit。其最根本的区别就是被感染的机器重新启动后,两者的持久性。可持久的Rootkit在系统重启后还继续存在,而基于内存的Rootkit则不行。永久型Rootkit因其长期隐秘存在于受害系统中,被认为是计算机安全的重大威胁。
本文概述了当前检测Windows Rootkit的主流技术和一些检测工具。包括最早的基于特征码检测方法。目前发展迅速的启发式检测/行为检测方法,代表的工具有VICE和Patchfinder。Cross-view是新兴的检测Rootkit的方法,本研究就是基于该方法,当前代表作有Rootkit Revealer、Klister和StriderGhostBuster。完整性检测对内存型Rootkit有较好的效果,硬件检测是比较彻底解决Rootkit问题的方法。
本文应用Cross-view方法构建监控系统,通过对隐藏行为的发现来判定系统是否已被装入永久型Windows Rootkit。使用文件系统过滤驱动、钩挂注册表相关系统服务来监视文件系统和注册表的操作,并构造可信的操作信息数据集。并在不可靠的用户态下验证该数据集,以发现隐藏文件、注册表和进程的情况,判定Rootkit的存在。
最后,应用此检测工具,对现有的一些Windows Rootkit进行了检测,并分析了该方法的适用范围。由于使用底层驱动监测、不依赖于特征码,对内核级和将来出现的Rootkit也具有良好的效果。