摘要 | 第5-6页 |
ABSTRACT | 第6页 |
第一章 引言 | 第9-17页 |
1.1. 研究背景和意义 | 第9-10页 |
1.2. 课题来源 | 第10页 |
1.3. 国内外研究现状 | 第10-12页 |
1.4. 研究内容和目标 | 第12-14页 |
1.4.1. Windows Rootkit 技术原理分析 | 第12页 |
1.4.2. Windows Anti-rootkit 检测技术研究 | 第12-13页 |
1.4.3. 对于一般用户的防御策略 | 第13-14页 |
1.5. 本论文主要创新点 | 第14-16页 |
1.6. 论文组织 | 第16-17页 |
第二章 ROOTKIT 与 ANTI-ROOTKIT 的相关技术概述 | 第17-33页 |
2.1. ROOTKIT 的概念 | 第17-21页 |
2.1.1. Rootkit 的功能 | 第18-19页 |
2.1.2. 背景知识 | 第19页 |
2.1.3. 内核的主要功能 | 第19-20页 |
2.1.4. 将代码导入内核的方法 | 第20-21页 |
2.2. ROOTKIT 使用技术的种类 | 第21-25页 |
2.2.1. 篡改代码执行流程 | 第21-24页 |
2.2.2. 数据对象修改(Data Manipulation) | 第24-25页 |
2.3. ANTI-ROOTKIT 架构以及检测方法 | 第25-27页 |
2.3.1. 单机检测 | 第25-26页 |
2.3.2. 多操作系统检测 | 第26-27页 |
2.4. ROOTKIT 的基本特征和要素 | 第27-30页 |
2.4.1. 内核调用与文件隐藏 | 第27-29页 |
2.4.2. 内核完整性检测恢复 | 第29-30页 |
2.5. ROOTKIT 与 ANTI-ROOTKIT 的结构与目标 | 第30-32页 |
2.6. 本章小结 | 第32-33页 |
第三章 ROOTKIT 与 ANTI-ROOTKIT 软件需求分析 | 第33-41页 |
3.1. ROOTKIT 功能需求 | 第33-36页 |
3.1.1. 从 Directory Object 移除 Driver Object 和 DeviceObject | 第34-35页 |
3.1.2. 从 OBJECT_TYPE 移除 Driver Object | 第35页 |
3.1.3. 从 PsLoadedModuleList 链表中移除 Driver | 第35页 |
3.1.4. 修改 DriverObject 属性 | 第35页 |
3.1.5. 伪造 OBJECT_TYPE | 第35-36页 |
3.1.6. 抹除 PE 结构特征 | 第36页 |
3.2. ROOTKIT 非功能性需求 | 第36页 |
3.3. ANTI-ROOTKIT 功能需求 | 第36-39页 |
3.3.1. 通过微软提供的 API 函数 | 第38页 |
3.3.2. 从 OBJECT_DIRECTORY 结构里面获取驱动以及设备的信息 | 第38页 |
3.3.3. 暴力搜索内存之一 | 第38页 |
3.3.4. 暴力搜索内存之二 | 第38-39页 |
3.4. ANTI-ROOTKIT 非功能性需求 | 第39页 |
3.5. 本章小结 | 第39-41页 |
第四章 ROOTKIT 与 ANTI-ROOTKIT 软件详细设计与实现 | 第41-68页 |
4.1. ROOTKIT 的设计与实现 | 第41-55页 |
4.1.1. 通过移除 DriverObject 实现 RootKit | 第43-45页 |
4.1.2. 从 OBJECT_TYPE 移除 Driver Object | 第45-47页 |
4.1.3. 通过从从 PsLoadedModuleList 移除 Driver 实现 RootKit | 第47-49页 |
4.1.4. 修改 DriverObject 的属性 | 第49-50页 |
4.1.5. 伪造 OBJECT_TYPE | 第50-51页 |
4.1.6. 抹除 PE 结构特征 | 第51页 |
4.1.7. 随机启动的实现 | 第51-53页 |
4.1.8. 其他隐藏功能实现 | 第53-55页 |
4.2. ANTI-ROOTKIT 的设计与实现 | 第55-67页 |
4.2.1. 总体架构 | 第56-57页 |
4.2.2. Anti-Rootkit 系统运行时流程 | 第57页 |
4.2.3. 应用取样模块设计与实现 | 第57-59页 |
4.2.4. 上层控制模块设计与实现 | 第59页 |
4.2.5. 用户交互模块设计与实现 | 第59-60页 |
4.2.6. Rootkit 检测模块实现 | 第60-67页 |
4.3. 本章小结 | 第67-68页 |
第五章 系统测试 | 第68-72页 |
5.1. 功能测试 | 第68-71页 |
5.1.1. Rootkit 测试 | 第68-70页 |
5.1.2. Anti-Rootkit 测试 | 第70-71页 |
5.2. 本章小结 | 第71-72页 |
第六章 总结与展望 | 第72-73页 |
致谢 | 第73-74页 |
参考文献 | 第74-76页 |