用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的三目运算符和not in运算符使用示例
Mar 03 Python
Python中分数的相关使用教程
Mar 30 Python
开始着手第一个Django项目
Jul 15 Python
各种Python库安装包下载地址与安装过程详细介绍(Windows版)
Nov 02 Python
对Python 文件夹遍历和文件查找的实例讲解
Apr 26 Python
python3.4实现邮件发送功能
May 28 Python
Python3实现定时任务的四种方式
Jun 03 Python
PYTHON实现SIGN签名的过程解析
Oct 28 Python
pytorch实现onehot编码转为普通label标签
Jan 02 Python
学python爬虫能做什么
Jul 29 Python
Django权限控制的使用
Jan 07 Python
Python实现老照片修复之上色小技巧
Oct 16 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利用header跳转失效的解决方法
2014/10/24 PHP
php在linux下检测mysql同步状态的方法
2015/01/15 PHP
PHP学习笔记(二):变量详解
2015/04/17 PHP
yii2框架中使用下拉菜单的自动搜索yii-widget-select2实例分析
2016/01/09 PHP
PHP单例模式是什么 php实现单例模式的方法
2016/05/14 PHP
php 使用curl模拟登录人人(校内)网的简单实例
2016/06/06 PHP
PHP获取当前执行php文件名的代码
2017/03/02 PHP
php base64 编码与解码实例代码
2017/03/21 PHP
自制PHP框架之设计模式
2017/05/07 PHP
详解thinkphp中的volist标签
2018/01/15 PHP
JavaScript学习历程和心得小结
2010/08/16 Javascript
js对数字的格式化使用说明
2011/01/12 Javascript
js事件冒泡实例分享(已测试)
2013/04/23 Javascript
纯js分页代码(简洁实用)
2013/11/05 Javascript
JavaScript判断变量是否为undefined的两种写法区别
2013/12/04 Javascript
js创建一个input数组并绑定click事件的方法
2014/06/12 Javascript
JavaScript基础教程之alert弹出提示框实例
2014/10/16 Javascript
JS实现两表格里数据来回转移的方法
2015/05/28 Javascript
谈谈对offsetleft兼容性的理解
2015/11/11 Javascript
JavaScript中实现无缝滚动、分享到侧边栏实例代码
2016/04/06 Javascript
JavaScript使用享元模式实现文件上传优化操作示例
2018/08/07 Javascript
3分钟了解vue数据劫持的原理实现
2019/05/01 Javascript
webpack打包html里面img后src为“[object Module]”问题
2019/12/22 Javascript
SublimeText 2编译python出错的解决方法(The system cannot find the file specified)
2013/11/27 Python
详解Python中的循环语句的用法
2015/04/09 Python
Python实现单词拼写检查
2015/04/25 Python
详解MySQL数据类型int(M)中M的含义
2016/11/20 Python
Python 微信爬虫完整实例【单线程与多线程】
2019/07/06 Python
python 通过手机号识别出对应的微信性别(实例代码)
2019/12/22 Python
python使用梯度下降算法实现一个多线性回归
2020/03/24 Python
阿联酋航空官方网站:Emirates
2017/10/17 全球购物
《搭石》教学反思
2014/04/07 职场文书
企业介绍信范文
2015/01/30 职场文书
赡养老人协议书范本
2015/08/06 职场文书
一封真诚的自荐信帮你赢得机会
2019/05/07 职场文书
Python极值整数的边界探讨分析
2021/09/15 Python