# 11 IDAPYTHON --- IDA 脚本
IDA Pro(前身为 Ilfak Guilfanov)以其强大的静态分析功能当之无愧的成为逆向工程的首选。让我们记住它的缔造者,Hex-Rays SA (布鲁塞尔)。IDA 如今已经能够在大多数平台上运行,能够分析大部分平台的二进制文件,同时提供了一个内置的调试器。IDA 的扩展能力也是极其强大的, 提供了 IDC(IDA 的脚本语言)和 SDK(让开发者扩展方便 IDA 插件)。
2004 年 Gergely 和 Ero Carrera 开发了 IDAPython 插件,将强大的 Python 和 IDA 结合起 来,使得自动化分析变得异常简单。而如今 IDAPython 被广泛的使用于各种商业产品( Zynamics 的 BinNavi ) 和 开 源 工 程 ( PaiMei 和 PyEm ) 中 。 这 一 章 , 我 们 要 学 会 IDAPython(以 IDA Pro 5.2 为目标)的安装以及重要的函数的使用,最后通过几个简单的例子 进一步熟悉 IDA 自动化分析。
- 序
- 1 搭建开发环境
- 1.1 操作系统准备
- 1.2 获取和安装 Python2.5
- 1.3 配置 Eclipse 和 PyDev
- 2 调试器设计
- 2.1 通用 CPU 寄存器
- 2.2 栈
- 2.3 调试事件
- 2.4 断点
- 3 自己动手写一个 windows 调试器
- 3.2 获得 CPU 寄存器状态
- 3.3 实现调试事件处理
- 3.4 全能的断点
- 4 PyDBG---纯 PYTHON 调试器
- 4.1 扩展断点处理
- 4.2 处理访问违例
- 4.3 进程快照
- 5 IMMUNITY----最好的调试器
- 5.1 安装 Immunity 调试器
- 5.2 Immunity Debugger 101
- 5.3 Exploit 开发
- 5.4 搞定反调试机制
- 6 HOOKING
- 6.1 用 PyDbg 实现 Soft Hooking
- 6.2 Hard Hooking
- 7 Dll 和代码注入
- 7.1 创建远线程
- 7.2 邪恶的代码
- 8 FUZZING
- 8.1 Bug 的分类
- 8.2 File Fuzzer
- 8.3 改进你的 Fuzzer
- 9 SULLEY
- 9.1 安装 Sulley
- 9.2 Sulley primitives
- 9.3 猎杀 WarFTPD
- 10 Fuzzing Windows 驱动
- 10.1 驱动通信
- 10.2 用 Immunity fuzzing 驱动
- 10.4 构建 Driver Fuzzer
- 11 IDAPYTHON --- IDA 脚本
- 11.1 安装 IDAPython
- 11.2 IDAPython 函数
- 11.3 脚本例子
- 12 PyEmu
- 12.1 安装 PyEmu
- 12.2 PyEmu 一览
- 12.3 IDAPyEmu