| 摘要 | 第5-6页 |
| Abstract | 第6页 |
| 第一章 绪论 | 第10-16页 |
| 1.1 研究背景和意义 | 第10页 |
| 1.2 Rootkit的发展和研究概况 | 第10-11页 |
| 1.2.1 国外Rootkit的研究与发展 | 第10-11页 |
| 1.2.2 国内Rootkit的研究与发展 | 第11页 |
| 1.3 Rootkit概述 | 第11-14页 |
| 1.3.1 Rootkit的主要特征 | 第12-13页 |
| 1.3.2 Rootkit的关键技术 | 第13页 |
| 1.3.3 Rootkit已有的检测方法 | 第13-14页 |
| 1.4 本次研究的主要工作 | 第14页 |
| 1.5 本文组织结构 | 第14-15页 |
| 1.6 本章小结 | 第15-16页 |
| 第二章 Android系统中Rootkit研究 | 第16-27页 |
| 2.1 基础知识介绍 | 第16-20页 |
| 2.1.1 Android系统架构 | 第16-17页 |
| 2.1.2 Android内核原理 | 第17-18页 |
| 2.1.3 VFS虚拟文件系统介绍 | 第18-20页 |
| 2.2 Android系统下Rootkit加载过程 | 第20-22页 |
| 2.2.1 LKM原理 | 第20-22页 |
| 2.2.2 Rootkit的载入 | 第22页 |
| 2.3 Android系统下Rootkit的隐藏 | 第22-26页 |
| 2.3.1 hook系统调用 | 第22-23页 |
| 2.3.2 通过inline hook系统函数隐藏文件 | 第23-24页 |
| 2.3.3 隐藏内核模块 | 第24页 |
| 2.3.4 Android系统中的带外隐藏 | 第24-26页 |
| 2.4 本章小结 | 第26-27页 |
| 第三章 Android系统中Rootkit的实现 | 第27-46页 |
| 3.1 hook系统调用的实现 | 第27-31页 |
| 3.1.1 获取系统调用表地址 | 第27-28页 |
| 3.1.2 编写自定义函数实现hook系统调用 | 第28-31页 |
| 3.2 inline hook系统函数的实现 | 第31-33页 |
| 3.3 模块隐藏的实现 | 第33-34页 |
| 3.4 带外隐藏的实现 | 第34-39页 |
| 3.4.1 实验分析系统文件截断函数原理 | 第34-37页 |
| 3.4.2 编程实现带外隐藏 | 第37-39页 |
| 3.5 数据收集与通信 | 第39-40页 |
| 3.6 实验结果与分析 | 第40-44页 |
| 3.6.1 hook系统调用表实验 | 第40页 |
| 3.6.2 inline hook系统函数实验 | 第40-41页 |
| 3.6.3 模块隐藏实验 | 第41-42页 |
| 3.6.4 带外隐藏实验 | 第42-44页 |
| 3.7 本章小结 | 第44-46页 |
| 第四章 Android系统中Rootkit的检测与防范 | 第46-55页 |
| 4.1 重hook系统调用 | 第46-47页 |
| 4.2 清空带外数据 | 第47-48页 |
| 4.3 创建模块监控链表 | 第48-51页 |
| 4.4 实验结果与分析 | 第51-54页 |
| 4.4.1 重hook系统调用实验 | 第51-52页 |
| 4.4.2 清空带外数据实验 | 第52-53页 |
| 4.4.3 内核模块监控链表实验 | 第53-54页 |
| 4.5 本章小结 | 第54-55页 |
| 结论 | 第55-59页 |
| 参考文献 | 第57-59页 |
| 攻读学位期间发表的论文与研究成果清单 | 第59-60页 |
| 致谢 | 第60页 |