本书共分10章。第1章到第3章简要介绍了软件逆向分析技术的相关基础知识;第4章和第5章从反汇编和中间表示两个方面为反编译奠定基础;第6章到第9章针对反编译的若干关键技术展开详细介绍;第10章则为反编译测试相关的一些可用资源。全书以IA-64可执行代码为例进行讲解,但相关技术可以向其他平台推广。
第1章 绪论
1.1 软件逆向分析
1.1.1 与安全相关的逆向分析
1.1.2 针对软件开发的逆向分析
1.1.3 本书的主要内容
1.2 软件逆向分析的历史
1.3 软件逆向分析的各个阶段
1.3.1 文件装载
1.3.2 指令解码
1.3.3 语义映射
1.3.4 相关图构造
1.3.5 过程分析
1.3.6 类型分析
1.3.7 结果输出
1.4 逆向分析框架
1.4.1 静态分析框架
1.4.2 动态分析框架
1.4.3 动静结合的分析框架
第2章 指令系统
2.1 指令系统概述
2.2 机器指令与汇编指令
2.2.1 机器指令
2.2.2 汇编指令
2.3 LA.6 4体系结构的特点
2.3.1 显式并行机制_
2.3.2 IA.64微处理器体系结构
2.4 指令格式
本章小结
第3章 可执行文件
3.1 可执行文件概述
3.2 可执行文件格式
3.2.1 ELF文件的3种主要类型
3.2.2 文件格式
3.2.3 数据表示
3.2.4 文件头
3.2.5 节
3.2.6 字符串表
3.2.7 符号表
3.3 一个简单的ELF文件分析
3.3.1 文件头分析
3.3.2 section信息分析
本章小结
第4章 反汇编技术
4.1 反汇编技术简介
4.2 反汇编算法流程
4.2.1 线性扫描算法
4.2.2 递归扫描算法
4.3 反汇编工具的自动构造方法
4.3.1 自动构造工具
4.3.2 利用自动构造方法构建IA-64反汇编器
4.4 常用反汇编工具介绍
4.4.1 IDAPro介绍
4.4.2 ILDasm介绍
本章小结
第5章 指令的语义抽象
5.1 语义描述语言
5.1.1 SSL简介
5.1.2 SSL文法的设计
5.1.3 SSL文法的扩展
5.2 中间表示
5.2.1 低级中间表示(RTL)
5.2.2 高级中间表示(HRTL)
5.3 指令的语义抽象技术
5.3.1 语义抽象技术简介
5.3.2 指令语义的SSL描述
5.3.3 指令语义的高级模拟
5.4 基于SSL的IA.64指令语义抽象技术
5.4.1 IA.64的体系结构特征描述
5.4.2 整数指令的语义描述
5.5 基于模拟的IA.64指令语义抽象技术
5.5.1 IA.64浮点特性
5.5.2 浮点指令的语义模拟
5.5.3 浮点并行指令的语义模拟
本章小结
第6章 基本数据类型分析
第7章 高级控制流恢复
第8章 过程恢复技术
第9章 部分编译优化效果的消除
第10章 程序的调试与测试
参考文献
猜您喜欢
评论