摘要 | 第4-5页 |
ABSTRACT | 第5页 |
目录 | 第6-8页 |
图录 | 第8-9页 |
表录 | 第9-10页 |
第一章 绪论 | 第10-18页 |
1.1 课题研究背景及意义 | 第10页 |
1.2 国内外研究现状 | 第10-14页 |
1.2.1 内核漏洞检测技术研究 | 第11-13页 |
1.2.2 内核漏洞利用技术研究 | 第13-14页 |
1.3 主要研究内容及成果 | 第14-15页 |
1.4 论文的组织结构 | 第15-18页 |
第二章 针对WTVTA模式的静态漏洞检测技术研究 | 第18-30页 |
2.1 WTVTA内核漏洞模式分析 | 第18-23页 |
2.1.1 WTVTA模式内核漏洞案例 | 第18-22页 |
2.1.2 WTVTA模式内核漏洞特征 | 第22-23页 |
2.2 WTVTA模式内核DeviceIoControl漏洞检测算法 | 第23-27页 |
2.2.1 算法基本定义 | 第23-24页 |
2.2.2 计算函数不动点 | 第24-26页 |
2.2.3 漏洞模式判定 | 第26-27页 |
2.3 实验测试与结果分析 | 第27-29页 |
2.4 本章小结 | 第29-30页 |
第三章 内核驱动动态Fuzzing测试技术研究 | 第30-52页 |
3.1 总体测试框架 | 第30页 |
3.2 接口信息捕获技术研究 | 第30-36页 |
3.2.1 动态捕获技术 | 第31页 |
3.2.2 案例分析及关键问题 | 第31-32页 |
3.2.3 静态捕获技术 | 第32-36页 |
3.3 测试用例生成技术研究 | 第36-45页 |
3.3.1 检查约束信息收集 | 第36-40页 |
3.3.2 外部测试向量获取 | 第40-43页 |
3.3.3 模糊启发式变异规则 | 第43-44页 |
3.3.4 反馈式测试用例生成 | 第44-45页 |
3.4 基于通信的内核fuzzing测试技术研究 | 第45-47页 |
3.4.1 向内核驱动发送测试用例 | 第46页 |
3.4.2 控制台与测试程序通信流程 | 第46-47页 |
3.5 实验数据及分析 | 第47-51页 |
3.5.1 实验环境 | 第47-48页 |
3.5.2 接口捕获对比测试 | 第48-49页 |
3.5.3 测试用例生成对比测试 | 第49-50页 |
3.5.4 漏报误报率测试 | 第50页 |
3.5.5 真实内核DeviceIoControl漏洞安全测试 | 第50-51页 |
3.6 本章小结 | 第51-52页 |
第四章 Windows内核漏洞利用技术研究 | 第52-68页 |
4.1 内核DeviceIoControl漏洞利用技术 | 第52-56页 |
4.1.1 改写HalDispatchTable进行跳转 | 第52-53页 |
4.1.2 改写GDT和LDT表添加调用门 | 第53-55页 |
4.1.3 内核态ShellCode构造 | 第55-56页 |
4.2 内核漏洞利用缓解技术分析 | 第56-61页 |
4.2.1 内核DEP提升 | 第56-58页 |
4.2.2 内核ASLR提升 | 第58页 |
4.2.3 启用SMEP | 第58-60页 |
4.2.4 NULL Page保护 | 第60页 |
4.2.5 其他漏洞利用缓解技术 | 第60-61页 |
4.3 内核漏洞利用缓解技术对抗 | 第61-66页 |
4.3.1 利用驱动Dispatch跳转表进行跳转 | 第62-63页 |
4.3.2 利用Windows ACL描述符进行提权 | 第63-66页 |
4.4 本章小结 | 第66-68页 |
结束语 | 第68-72页 |
致谢 | 第72-74页 |
参考文献 | 第74-78页 |
作者简历 | 第78页 |