| 摘要 | 第4-5页 |
| ABSTRACT | 第5-6页 |
| 第一章 绪论 | 第9-15页 |
| 1.1 选题背景 | 第9-10页 |
| 1.2 国内外研究现状及发展趋势 | 第10-12页 |
| 1.3 论文研究内容及结构安排 | 第12-13页 |
| 参考文献 | 第13-15页 |
| 第二章 Linux平台缓冲区溢出攻击原理及防范分析 | 第15-31页 |
| 2.1 Linux平台地址空间分配及文件格式 | 第15-17页 |
| 2.1.1 进程地址空间分配 | 第15-16页 |
| 2.1.2 ELF文件格式 | 第16-17页 |
| 2.2 Linux平台缓冲区溢出攻击基本原理 | 第17-24页 |
| 2.2.1 栈溢出攻击 | 第18-22页 |
| 2.2.2 堆溢出攻击 | 第22-24页 |
| 2.3 Linux平台缓冲区溢出防范措施 | 第24-29页 |
| 2.3.1 缓冲区溢出攻击代码特征分析 | 第24-26页 |
| 2.3.2 缓冲区溢出攻击的防范方案分析 | 第26-29页 |
| 2.4 小结 | 第29页 |
| 参考文献 | 第29-31页 |
| 第三章 Linux平台可执行文件地址无关技术的实现 | 第31-47页 |
| 3.1 可执行文件地址无关实现的条件及原理 | 第31-35页 |
| 3.1.1 可执行文件地址无关实现条件 | 第32页 |
| 3.1.2 可执行文件地址无关实现原理 | 第32-35页 |
| 3.2 Linux平台可执行文件地址无关实现 | 第35-40页 |
| 3.2.1 实现平台介绍 | 第36页 |
| 3.2.2 实现方案分析 | 第36-37页 |
| 3.2.3 可执行文件的二进制特征分析 | 第37-38页 |
| 3.2.4 可执行文件的运行时特征分析 | 第38-40页 |
| 3.3 Linux平台地址无关对可执行文件的性能影响分析 | 第40-44页 |
| 3.3.1 对文件访问效率的影响分析 | 第41-43页 |
| 3.3.2 对程序规模的影响分析 | 第43-44页 |
| 3.4 局限性分析 | 第44-45页 |
| 3.5 小结 | 第45页 |
| 参考文献 | 第45-47页 |
| 第四章 Linux平台共享库文件地址无关技术的实现 | 第47-61页 |
| 4.1 共享库文件地址无关实现原理 | 第47-50页 |
| 4.1.1 模块间数据访问地址无关实现 | 第47-48页 |
| 4.1.2 模块间函数调用地址无关实现 | 第48-50页 |
| 4.2 Linux平台共享库文件地址无关实现 | 第50-54页 |
| 4.2.1 实现方案分析 | 第50-51页 |
| 4.2.2 共享库文件的二进制特征分析 | 第51-53页 |
| 4.2.3 共享库文件的运行时特征分析 | 第53-54页 |
| 4.3 Linux平台地址无关对共享库文件的性能影响分析 | 第54-58页 |
| 4.3.1 对调用时间的影响分析 | 第55-57页 |
| 4.3.2 对程序规模的影响分析 | 第57-58页 |
| 4.4 局限性分析 | 第58-59页 |
| 4.5 小结 | 第59页 |
| 参考文献 | 第59-61页 |
| 第五章 总结与展望 | 第61-63页 |
| 5.1 工作总结 | 第61-62页 |
| 5.2 下一步工作计划 | 第62-63页 |
| 缩略词对照表 | 第63-65页 |
| 致谢 | 第65页 |