基于动态随机化和只可执行内存的JIT-ROP防御研究
摘要 | 第4-6页 |
Abstract | 第6-7页 |
第一章 绪论 | 第12-24页 |
1.1 研究背景 | 第12-21页 |
1.1.1 缓冲区溢出攻击 | 第13页 |
1.1.2 代码注入攻击 | 第13-15页 |
1.1.3 代码复用攻击 | 第15-21页 |
1.2 研究意义 | 第21页 |
1.3 研究内容 | 第21-22页 |
1.4 论文组织 | 第22-24页 |
第二章 相关工作 | 第24-35页 |
2.1 地址空间随机化 | 第24-30页 |
2.2 只可执行内存 | 第30-32页 |
2.3 分析总结 | 第32-34页 |
2.4 本章小结 | 第34-35页 |
第三章 系统设计 | 第35-44页 |
3.1 假设 | 第35页 |
3.2 取指操作(?)访存操作 | 第35-39页 |
3.3 代码数据的分离和代码结构的重构 | 第39-42页 |
3.4 进程地址空间以页为粒度动态随机化 | 第42-43页 |
3.5 安全增强 | 第43页 |
3.6 本章小结 | 第43-44页 |
第四章 系统实现 | 第44-59页 |
4.1 内核空间组件 | 第44-51页 |
4.1.1 L2L映射表 | 第44-46页 |
4.1.2 内核线程kth_121 | 第46-47页 |
4.1.3 系统调用sys_121 | 第47-50页 |
4.1.4 同步 | 第50页 |
4.1.5 Shadow Stack | 第50-51页 |
4.2 用户空间组件 | 第51-57页 |
4.2.1 反汇编 | 第51-52页 |
4.2.2 代码数据分离 | 第52页 |
4.2.3 静态插桩 | 第52-57页 |
4.2.4 优化 | 第57页 |
4.3 本章小结 | 第57-59页 |
第五章 实验与分析 | 第59-67页 |
5.1 静态插桩 | 第59-61页 |
5.2 防御有效性 | 第61-64页 |
5.3 性能损耗 | 第64-66页 |
5.4 本章小结 | 第66-67页 |
第六章 结论与展望 | 第67-68页 |
6.1 总结 | 第67页 |
6.2 展望 | 第67-68页 |
参考文献 | 第68-72页 |
攻读硕士学位期间参与的科研项目 | 第72页 |
攻读硕士学位期间完成的论文 | 第72-73页 |
致谢 | 第73-74页 |