摘要 | 第6-7页 |
Abstract | 第7页 |
第一章 引言 | 第12-17页 |
1.1 研究背景 | 第12-13页 |
1.2 基于ROP的程序攻击发展概况 | 第13-14页 |
1.3 基于ROP的程序防御发展概况 | 第14-15页 |
1.4 本文的研究难点与主要工作 | 第15-16页 |
1.5 本文的组织结构 | 第16-17页 |
第二章 程序攻击与防御研究背景 | 第17-26页 |
2.1 程序攻击研究 | 第17-23页 |
2.1.1 缓冲区溢出攻击与格式化字符串攻击 | 第17-21页 |
2.1.2 代码复用式攻击 | 第21-23页 |
2.2 程序防御研究 | 第23-25页 |
2.2.1 基于序列长度的防御 | 第23页 |
2.2.2 基于编译器的防御 | 第23-24页 |
2.2.3 基于地址随机化的防御 | 第24页 |
2.2.4 基于CFI的防御 | 第24-25页 |
2.3 本章小结 | 第25-26页 |
第三章 基于长序列的自动化攻击的方法 | 第26-34页 |
3.1 修改基于长序列的图灵完备指令集 | 第27-31页 |
3.1.1 修改图灵完备集中的指令 | 第27-30页 |
3.1.2 扩展图灵完备集中的指令 | 第30-31页 |
3.2 指令序列的自动化填充与链接 | 第31-33页 |
3.3 本章小结 | 第33-34页 |
第四章 基于长序列的自动化攻击的框架 | 第34-45页 |
4.1 基于长指令序列的图灵完备集的修改与扩展方案 | 第35-40页 |
4.1.1 指令长度的改变 | 第36-38页 |
4.1.2 栈安全位置的选择 | 第38-39页 |
4.1.3 指令扩展 | 第39-40页 |
4.2 R语言 | 第40-42页 |
4.3 自动化填充与链接方案 | 第42-43页 |
4.4 本章小结 | 第43-45页 |
第五章 ROP自动化攻击工具验证 | 第45-53页 |
5.1 基于Lgadget的优化的图灵完备指令集 | 第45-49页 |
5.1.1 Load/Store型 | 第45-46页 |
5.1.2 算术和逻辑运算型 | 第46-47页 |
5.1.3 流程控制型 | 第47-49页 |
5.1.4 系统调用型 | 第49页 |
5.2 自动化填充和链接程序 | 第49-50页 |
5.3 自动化攻击实例 | 第50-52页 |
5.4 本章小结 | 第52-53页 |
第六章 总结与展望 | 第53-55页 |
6.1 总结 | 第53页 |
6.2 展望与进一步工作 | 第53-55页 |
参考文献 | 第55-62页 |
致谢 | 第62-63页 |
附录 | 第63-64页 |
参与项目 | 第64-66页 |