0x1. 安装以及本地库加载:
现在用的是火星信息安全研究院 http://www.h4ck.org.cn的版本,这个版本里面已经集成了IDAPython,pyside,pyqt等,还有丰富的插件。免去了很多安装上的麻烦。
安装好的idapython会出现idapython的输入命令框。
ida的下载可以参考或者问度娘:
http://www.52pojie.cn/thread-319763-1-1.html
0x2. idapython中的库介绍
0x3. 加载本地库:
需要注意的是,如何ida中的python与系统本身的python是不同的,通过使用查找模块路径可以发现两个python的不同。
import os
import inspect
inspect.getfile(os)
或者:
import a_module
print a_module.__file__
输入如上可以发现,系统返回如下:
而在ida中则
由于python在加载模块是根据sys.path来判断的,而由于两个python的sys.path并不一样。
所以为了使用系统的库,需要将包含该模块的路径,加入到idapython的sys.path中去。比如,如果idapython需要使用系统中安装的matplotlib。
step1. 查看系统中matplotlib安装的位置:
step2. 使用sys.path.append将其加入到idapython的路径中去
0x4 demo
idapython 的project中有很多的示例,可以供初步的参考。https://github.com/idapython/src/