| 摘要 | 第1-7页 |
| ABSTRACT | 第7-12页 |
| 第一章 绪论 | 第12-17页 |
| ·研究背景 | 第12-13页 |
| ·研究内容 | 第13-15页 |
| ·研究成果 | 第15页 |
| ·论文组织结构 | 第15-17页 |
| 第二章 二进制代码分析的典型方法 | 第17-27页 |
| ·可执行文件与二进制代码 | 第17-18页 |
| ·典型的二进制代码分析方法 | 第18-20页 |
| ·静态方法 | 第18-19页 |
| ·动态方法 | 第19-20页 |
| ·二进制代码常用的分析工具 | 第20页 |
| ·抗分析技术手段的研究 | 第20-25页 |
| ·加壳 | 第20-21页 |
| ·反调试 | 第21-24页 |
| ·代码混淆 | 第24页 |
| ·静态和动态分析方法所面临的挑战 | 第24-25页 |
| ·二进制代码分析的国内外研究现状 | 第25-26页 |
| ·已有分析方法的不足 | 第26-27页 |
| 第三章 二进制代码分析模型的研究 | 第27-39页 |
| ·INTEL 指令格式 | 第27-31页 |
| ·指令前缀 | 第28页 |
| ·操作码 | 第28-29页 |
| ·ModR/M | 第29-30页 |
| ·SIB | 第30页 |
| ·地址偏移 | 第30-31页 |
| ·立即数 | 第31页 |
| ·运行时指令流和数据流的特点 | 第31-33页 |
| ·指令流 | 第31-32页 |
| ·数据流 | 第32-33页 |
| ·程序切片技术的研究 | 第33-36页 |
| ·二进制代码分析模型 | 第36-38页 |
| ·运行时指令流和数据流的截获 | 第36-37页 |
| ·关键信息的提取与分析 | 第37页 |
| ·构建二进制代码分析模型 | 第37-38页 |
| ·本章小结 | 第38-39页 |
| 第四章 基于虚拟机的关键信息提取与分析系统总体架构 | 第39-49页 |
| ·虚拟机技术概述 | 第39-43页 |
| ·进程级虚拟机 | 第40-41页 |
| ·系统级虚拟机 | 第41-43页 |
| ·运行时指令流和数据流的截获 | 第43-45页 |
| ·运行时指令流和数据流的分析 | 第45-47页 |
| ·总体构架 | 第47-48页 |
| ·本章小结 | 第48-49页 |
| 第五章 基于虚拟机的关键信息提取与分析系统的实现 | 第49-69页 |
| ·指令流和数据流信息的截获 | 第49-55页 |
| ·虚拟机bochs 的介绍 | 第49-51页 |
| ·指令流和数据流截获模块的实现 | 第51-52页 |
| ·虚拟机的优化 | 第52-55页 |
| ·分析系统的实现 | 第55-62页 |
| ·预处理—二进制信息解析器 | 第55-56页 |
| ·静态特征分析提取模块 | 第56页 |
| ·转移类指令分析模块 | 第56-57页 |
| ·系统调用分析模块 | 第57页 |
| ·内存读写分析模块 | 第57-58页 |
| ·程序切片分析模块 | 第58-59页 |
| ·密码算法分析模块 | 第59-62页 |
| ·实例分析 | 第62-68页 |
| ·实验一 | 第62-66页 |
| ·实验二 | 第66-68页 |
| ·本章小结 | 第68-69页 |
| 第六章 总结与展望 | 第69-71页 |
| ·全文总结 | 第69-70页 |
| ·工作展望 | 第70-71页 |
| 参考文献 | 第71-74页 |
| 致谢 | 第74-75页 |
| 攻读硕士学位期间已发表或录用的学术论文 | 第75页 |