| 摘要 | 第1-5页 |
| ABSTRACT | 第5-8页 |
| 第一章 绪论 | 第8-11页 |
| ·课题背景 | 第8-9页 |
| ·国内外研究现状 | 第9页 |
| ·作者的主要任务 | 第9页 |
| ·本文的结构 | 第9-11页 |
| 第二章 操作系统中可执行文件格式分析 | 第11-27页 |
| ·裸机中的可执行文件格式 | 第11页 |
| ·DOS中的可执行文件格式 | 第11-13页 |
| ·批处理文件 | 第11页 |
| ·设备驱动文件 | 第11页 |
| ·COM文件 | 第11页 |
| ·EXE文件 | 第11-13页 |
| ·Windows下的可执行文件格式 | 第13-23页 |
| ·NE格式 | 第13页 |
| ·PE格式 | 第13-23页 |
| ·LE线性可执行文件格式(Linear Executable) | 第23页 |
| ·UNIX/Linux操作系统中的可执行文件格式 | 第23-27页 |
| ·a.out文件格式分析 | 第23-24页 |
| ·COFF文件格式 | 第24-27页 |
| 第三章 ELF文件格式的分析 | 第27-43页 |
| ·ELF Header部分 | 第28-29页 |
| ·程序头部(Program Header) | 第29-32页 |
| ·节区头部表 | 第32-34页 |
| ·ELF文件的加载和动态连接 | 第34-43页 |
| ·基地址 | 第34-35页 |
| ·程序加载 | 第35-36页 |
| ·程序解释器 | 第36-37页 |
| ·动态加载程序 | 第37页 |
| ·动态节区 | 第37-38页 |
| ·共享目标的依赖关系 | 第38-39页 |
| ·全局偏移表(GOT) | 第39-40页 |
| ·过程链接表(PLT) | 第40-42页 |
| ·初始化和终止函数 | 第42-43页 |
| 第四章 反汇编器的设计与实现 | 第43-54页 |
| ·机器指令的格式 | 第43-44页 |
| ·反汇编器设计原理 | 第44-45页 |
| ·程序的流程和流程图 | 第45页 |
| ·反汇编实例 | 第45-54页 |
| 第五章 Linux下ELF文件病毒的实现与检测 | 第54-66页 |
| ·linux下病毒的历史 | 第54-55页 |
| ·实现一个Linux ELF病毒 | 第55-56页 |
| ·病毒代码的执行流程 | 第56页 |
| ·关键的处理技术 | 第56-62页 |
| ·病毒扫描程序的实现 | 第62-66页 |
| ·主流的病毒检测技术 | 第62-63页 |
| ·特征代码扫描法的原理 | 第63-64页 |
| ·特征码的选取 | 第64-65页 |
| ·静态扫描程序的实现 | 第65-66页 |
| 第六章 结束语 | 第66-67页 |
| ·工作总结 | 第66页 |
| ·问题 | 第66-67页 |
| 致谢 | 第67-68页 |
| 参考文献 | 第68页 |