用python编写第一个IDA插件的实例


Posted in Python onMay 29, 2018

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即可。

以上这篇用python编写第一个IDA插件的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python单链表实现代码实例
Nov 21 Python
Django1.3添加app提示模块不存在的解决方法
Aug 26 Python
使用Python绘制图表大全总结
Feb 11 Python
Python之re操作方法(详解)
Jun 14 Python
python数据结构链表之单向链表(实例讲解)
Jul 25 Python
python中实现指定时间调用函数示例代码
Sep 08 Python
python实现websocket的客户端压力测试
Jun 25 Python
深入学习python多线程与GIL
Aug 26 Python
浅析python,PyCharm,Anaconda三者之间的关系
Nov 27 Python
浅谈python opencv对图像颜色通道进行加减操作溢出
Jun 03 Python
大数据分析用java还是Python
Jul 06 Python
python基础详解之if循环语句
Apr 24 Python
基于python进行桶排序与基数排序的总结
May 29 #Python
Vue的el-scrollbar实现自定义滚动
May 29 #Python
基于Django与ajax之间的json传输方法
May 29 #Python
django ajax json的实例代码
May 29 #Python
Python+selenium实现自动循环扔QQ邮箱漂流瓶
May 29 #Python
PyTorch学习笔记之回归实战
May 28 #Python
Django 使用Ajax进行前后台交互的示例讲解
May 28 #Python
You might like
PHP与C#分别格式化文件大小的代码
2011/05/14 PHP
比较时间段一与时间段二是否有交集的php函数
2011/05/31 PHP
解析关于wamp启动是80端口被占用的问题
2013/06/21 PHP
Yii2 RESTful中api的使用及开发实例详解
2016/07/06 PHP
PHP快速排序算法实现的原理及代码详解
2019/04/03 PHP
Javascript 日期对象Date扩展方法
2009/05/30 Javascript
可以将word转成html的js代码
2010/04/11 Javascript
JavaScript高级程序设计阅读笔记(五) ECMAScript中的运算符(一)
2012/02/27 Javascript
js常用系统函数用法实例分析
2015/01/12 Javascript
JavaScript 模块的循环加载实现方法
2015/12/13 Javascript
jQuery中attr()与prop()函数用法实例详解(附用法区别)
2015/12/29 Javascript
学习JavaScript设计模式之享元模式
2016/01/18 Javascript
深入浅析JS Function()构造函数
2016/08/22 Javascript
JS实现列表的响应式排版(推荐)
2016/09/01 Javascript
HTML中使背景图片自适应浏览器大小实例详解
2017/04/06 Javascript
Vue循环中多个input绑定指定v-model实例
2020/08/31 Javascript
在nodejs中创建child process的方法
2021/01/26 NodeJs
Python正则表达式匹配HTML页面编码
2015/04/08 Python
在Django的视图中使用数据库查询的方法
2015/07/16 Python
python利用正则表达式提取字符串
2016/12/08 Python
python3调用R的示例代码
2018/02/23 Python
python打包exe开机自动启动的实例(windows)
2019/06/28 Python
Pytorch自己加载单通道图片用作数据集训练的实例
2020/01/18 Python
万得城电器土耳其网站:欧洲第一大电子产品零售商
2016/10/07 全球购物
全球摩托车装备领导者:RevZilla
2017/09/04 全球购物
State Cashmere官网:半零售价可持续蒙古羊绒
2020/02/26 全球购物
大学生求职简历的自我评价范文
2013/10/12 职场文书
中英双版中文教师求职信
2013/10/27 职场文书
董事长秘书岗位职责
2013/11/29 职场文书
聊城大学毕业生自荐书
2014/02/01 职场文书
爸爸的花儿落了教学反思
2014/02/20 职场文书
党员公开承诺践诺书
2014/03/25 职场文书
群众路线班子对照检查材料
2014/09/25 职场文书
贷款担保书
2015/01/20 职场文书
导游词之上饶龟峰
2019/10/25 职场文书
Python3中最常用的5种线程锁实例总结
2021/07/07 Python