| 摘要 | 第1-5页 |
| ABSTRACT | 第5-11页 |
| 第1章 绪论 | 第11-15页 |
| ·研究背景 | 第11-12页 |
| ·rootkit 定义 | 第11页 |
| ·rootkit 发展历史 | 第11-12页 |
| ·研究现状 | 第12-13页 |
| ·反rootkit 现状 | 第12页 |
| ·虚拟机与反rootkit 研究 | 第12-13页 |
| ·论文主要工作 | 第13页 |
| ·论文组织结构 | 第13-15页 |
| 第2章 Linux 系统调用与LKM | 第15-24页 |
| ·Linux 系统调用 | 第15-20页 |
| ·系统调用概述 | 第15-16页 |
| ·系统调用服务函数、系统调用号和系统调用表 | 第16页 |
| ·软件中断int/iret 方式 | 第16-18页 |
| ·sysenter/sysexit 方式 | 第18-20页 |
| ·Linux 内核模块 | 第20-22页 |
| ·可加载内核模块机制 | 第20-21页 |
| ·可加载内核模块结构 | 第21-22页 |
| ·本章小结 | 第22-24页 |
| 第3章 rootkit 的攻击原理 | 第24-47页 |
| ·应用级 rootkit 攻击原理 | 第24页 |
| ·binary kit | 第24页 |
| ·library kit | 第24页 |
| ·内核级 rootkit | 第24页 |
| ·攻击系统调用 | 第24-32页 |
| ·攻击系统调用表 | 第24-26页 |
| ·攻击系统调用入口函数 | 第26-30页 |
| ·攻击系统调用服务函数 | 第30-32页 |
| ·攻击中断描述符表 | 第32页 |
| ·攻击异常表__ex_table | 第32-39页 |
| ·Linux 内核中的异常表__ex_table 出现的背景 | 第33-34页 |
| ·缺页异常 | 第34-35页 |
| ·异常表__ex_table 的实现 | 第35-37页 |
| ·异常表__ex_table 在缺页异常的使用 | 第37-38页 |
| ·利用异常表__ex_table 的攻击思路 | 第38-39页 |
| ·通过调试寄存器攻击 | 第39-46页 |
| ·x86 处理器上的调试寄存器 | 第39-42页 |
| ·攻击原理 | 第42-46页 |
| ·内核级 rootkit 存在形式 | 第46页 |
| ·本章小结 | 第46-47页 |
| 第4章 原型系统设计与实现 | 第47-59页 |
| ·总体思路 | 第47-50页 |
| ·X86 上半虚拟化解决方案lguest | 第47-48页 |
| ·影子页表 | 第48页 |
| ·总体框架 | 第48-49页 |
| ·被监控部分写保护的实现 | 第49页 |
| ·被监控内存区域的组织 | 第49-50页 |
| ·增加类型为 LHCALL_MARKRO 的 hypercall | 第50-51页 |
| ·hypercall LHCALL_MARKRO 的增加 | 第51页 |
| ·hypercall LHCALL_MARKRO 发出的时机 | 第51页 |
| ·Linux 系统进程内核堆栈的获取 | 第51-52页 |
| ·IDTR、GDTR 寄存器写操作的监控 | 第52-53页 |
| ·重要全局数据的处理 | 第53-54页 |
| ·__mointor__属性修饰符的引入 | 第53-54页 |
| ·.monitor 段的引入 | 第54页 |
| ·函数调用链的获取 | 第54-56页 |
| ·写操作合法验证算法 | 第56-58页 |
| ·指令模拟 | 第58页 |
| ·指令模拟的原因 | 第58页 |
| ·指令模拟的实现 | 第58页 |
| ·本章小结 | 第58-59页 |
| 第5章 原型系统验证及性能评价、优化 | 第59-66页 |
| ·原型系统软硬件环境 | 第59页 |
| ·反已有 rootkit 实验结果 | 第59-60页 |
| ·calltrace 算法在 lguest 中的性能优化 | 第60-61页 |
| ·优化原理 | 第60页 |
| ·精确时间测量方法 | 第60页 |
| ·性能优化效果 | 第60-61页 |
| ·原型系统整体性能 | 第61-64页 |
| ·virtbench 性能测试程序 | 第61-62页 |
| ·内核配置选项CONFIG_FRAME_POINTER 对性能影响 | 第62-63页 |
| ·原型系统virtbench 性能测试结果与分析 | 第63-64页 |
| ·本章小结 | 第64-66页 |
| 第6章 全文总结 | 第66-68页 |
| ·工作总结 | 第66-67页 |
| ·后续工作展望 | 第67-68页 |
| 参考文献 | 第68-71页 |
| 在读期间发表的学术论文与取得的研究成果 | 第71-72页 |
| 致谢 | 第72页 |