IDA插件是经过编译的、功能更强大的IDC脚本,与仅仅使用脚本相比,插件能够执行更加复杂的任务。与编写IDC脚本相比,python显得更为轻巧和强大,IDAPython作为IDA的一个插件,具有IDA SDK的大部分功能,能够帮助我们编写实现IDC脚本语言所有功能的python脚本。本文将以一个简单的例子开始展示如何使用python编写并安装一个IDA插件。
1.编写插件文件msg.py
from idaapi import *
class myIdaPlugin(plugin_t):
flags=0
wanted_name="my ida plugin"
wanted_hotkey="F1"
comment="my ida plugin"
help="Something helpful"
def init(self):
msg("Ida plugin init called.\n")
return PLUGIN_OK
def term(self):
msg("Ida plugin term called.\n")
def run(self,arg):
warning("Ida plugin run(%d) called.\n"%arg)
def PLUGIN_ENTRY():
return myIdaPlugin()
2.将msg.py文件置于IDADIR/plugins目录,修改IDADIR/plugins/plugins.cfg文件,将plug_name 值设置为IDA菜单栏显示的菜单,plugin_file值设为msg.py文件全称,记得带上扩展名,否则是系统默认的.plw或.p64,保存后重启IDA即可。