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
自动化分析。
11.1
安装
IDAPython
从
http://idapython.googlecode.com/files/idapython-1.0.0.zip
下
载
我
们
需
要
的
压
缩
包
。
这
个
版
本
比
较
早
,
建
议
大
家
安
装
idapython-1.2.0_ida5.4_py2.5_win32.zip
的版本,这个版本也可以用于
ida5.5
。
下载完后解压缩,将主目录下的
python
文件夹,复制到
IDA
的安装目录下(默认为
C:\Program
Files\IDA
)
,将
plugins
目录下
python.plw
复
制到
IDA
的
plugins
目录下(默认为
C:\Program Files\IDA\plugins.
)
。
就当的驱动
IDA
,随意加载一个可执行文件,一旦初始化分析完成,就会看到底部的输出窗口中包含了
IDAPython
的信息,记得不加载文件
的时候是不会出现的。如图
11-1
。