本文转载 https://www.techbliss.org/threads/python-plugin-loader-tut-for-ida-pro-7-0.951/
Many things have changed from older ida pro to 7.0
Alot of functions have been added to 7.0 python sdk, and alot deprecated.

In this little tut, i will explain and brakedown, how to make a python plugin loader for ida pro 7.0 , put in the menu at start up, together with a custom icon, and load the real app.
plugin loader example is from the python editor app found
here https://github.com/techbliss/Python_editor/blob/master/7.0/plugins/Python_editor.py

There are many ways to write this, some have intire plugin code included in the plugin loader or elsewhere like i normally do.

# Created by: Storm Shadow http://www.techbliss.org
import os
import ida_idaapi, ida_kernwin
import idc
from idc import *
from idaapi import *
import sys
sys.path.insert(0 , idaapi.idadir("plugins\\Code editor\\icons"))
import ico
from ico import *PLUGIN_VERSION = "1.4"
IDAVERISONS = "IDA PRO 7.0+"
AUTHORS     = "Storm Shadow"
DATE           = "2017"
TWITTER     = "Twitter @zadow28"def banner():banner_options = (PLUGIN_VERSION, AUTHORS, DATE, TWITTER, IDAVERISONS)banner_titles = "Python Editor v%s - (c) %s - %s - %s - %s" % banner_options# print plugin bannerprint("---[" + banner_titles + "]---\n")banner()# 1) Create the handler class
class MyEditorHandler(idaapi.action_handler_t):def __init__(self):idaapi.action_handler_t.__init__(self)# Run editor when invoked.def activate(self, ctx):g = globals()idahome = idaapi.idadir("plugins\\Code editor")IDAPython_ExecScript(idahome + "\\pyeditor.py", g)def update(self, ctx):return idaapi.AST_ENABLE_ALWAYSclass ripeye(idaapi.plugin_t):flags = idaapi.PLUGIN_FIXcomment = "Run me"help = "Python Editor"wanted_name = "Python Editor"wanted_hotkey = "" #the tooltip horkey goes away when setting it here DONT DO it! and only is shown in File/Plugins menudef editor_menuaction(self):action_desc = idaapi.action_desc_t('my:editoraction',  # The action name. This acts like an ID and must be unique'Python Editor!',  # The action text.MyEditorHandler(),  # The action handler.'Ctrl+H',  # Optional: the action shortcut DO IT  HERE!'Script editor',  # Optional: the action tooltip (available in menus/toolbar)idaapi.load_custom_icon(":/ico/python.png")  # hackish load action icon , if no custom icon use number from 1-150 from internal ida)# 3) Register the actionidaapi.register_action(action_desc)idaapi.attach_action_to_menu('File/Editor...',  # The relative path of where to add the action'my:editoraction',  # The action ID (see above)idaapi.SETMENU_APP)  # We want to append the action after the 'Manual instruction...form = idaapi.get_current_tform()idaapi.attach_action_to_popup(form, None, "my:editoraction", None)def init(self):"""This is called by IDA when it is loading the plugin."""#self._icon_id_file = idaapi.BADADDR# attempt plugin initializationtry:self._install_plugin()# failed to initialize or integrate the plugin, log and skip loadingexcept Exception as e:form = idaapi.get_current_tform()passreturn PLUGIN_KEEPdef _install_plugin(self):"""Initialize & integrate the plugin into IDA."""self.editor_menuaction()self._init()def term(self):passdef run(self, arg = 0):#we need the calls again if we wanna load it via File/Plugins/editoridaapi.msg("Python Editor Loaded to menu \n use Alt+E hot key to quick load ")hackish = MyEditorHandler()hackish.activate(self)def PLUGIN_ENTRY():return ripeye()
idaapi.PLUGIN_FIX = this plugin would be fixed at startup,
ther are many other option like only proccessors etc.,
but we wanna have it fixed.

Python Plugin loader tut for ida pro 7.0相关推荐

  1. IDA Pro 7.0皮肤插件的安装与深色主题(包含背景色、前景色、指令颜色)的设置

    长期以来都用的是IDA Pro的默认白底蓝字的主题,这种配色在夜里十分刺眼,最终决定将其背景换为深色. 主题插件的安装 感谢zyantific大神制作的IDA Pro主题插件,这款插件使用Qt sty ...

  2. 关于ida pro的牛逼插件keypatch

    关于ida pro的牛逼插件keypatch 通常ida在修改二进制文件,自带的edit->patch program->assemble( Ilfak Guilfanov在论坛里也提到, ...

  3. IDA Pro 内存Dump脚本插件

    文章目录 Dump脚本 GUI插件 Dump脚本 在调试时对动态内存进行Dump的方法 #idapython2 buf = idaapi.get_many_bytes(start_address, s ...

  4. IDA Pro 搜索中文字符串

    IDA Pro 搜索中文字符串 IDA 的字符串窗口默认只能显示英文,网上的一些方法是指定启动时的参数可以显示中文 ida64 -DCULTURE=all ida -DCULTURE=all 还有就是 ...

  5. ida pro 反汇编 Android so 库后修改 arm 汇编指令的方法总结

    1 前言 最近博主在学习Android逆向的时候,参照吾爱破解论坛的<教我兄弟学Android逆向系列课程>学习的时候,学到第8章<教我兄弟学Android逆向08 IDA爆破签名验 ...

  6. python反编译luac_Lua程序逆向之为Luac编写IDA Pro文件加载器

    距离上一次讲Lua程序逆向已经有一段时间了,这一次我们书接上回,继续开启Lua程序逆向系列之旅. 在软件逆向工程实践中,为第三方文件编写文件格式分析器与指令反汇编器是一种常见的场景.这一篇的主要目的是 ...

  7. python反编译luac_Lua程序逆向之为Luac编写IDA Pro处理器模块

    上一篇讲解了如何加载一个Luac文件到IDA Pro当中,加载进入idb数据库的内容犹如切好洗净的食材,并不能粗暴的直接展示给用户,还需要IDA Pro中的处理器模块对内容进行下一步的反汇编渲染与指令 ...

  8. [系统安全] 三.IDA Pro反汇编工具初识及逆向工程解密实战

    您可能之前看到过我写的类似文章,为什么还要重复撰写呢?只是想更好地帮助初学者了解病毒逆向分析和系统安全,更加成体系且不破坏之前的系列.因此,我重新开设了这个专栏,准备系统整理和深入学习系统安全.逆向分 ...

  9. 通过一个例子介绍 IDA pro 的简单使用

    From:通过一个例子介绍IDA pro的简单使用 - 知乎 IDA pro 7.6 绿色便携版:http://www.ddooo.com/softdown/215615.htm 配置IDA使用Ana ...

最新文章

  1. Boost:列出设备的测试程序
  2. UIView的生命周期
  3. CSS3笔记之基础篇(二)颜色和渐变色彩
  4. 前 1 号店 CTO 黄哲铿揭秘:微服务架构在超大场景下的应用
  5. iOS开发之tintColor属性详解
  6. 立即更新!SonicWall 公司再次发布SMA 100 0day 固件更新
  7. lLinux编程大全
  8. 模糊查询是如何进行实现的_模糊查找,不是近似查找!在Excel中应该如何进行模糊匹配...
  9. 【leetcode】91. Decode Ways A-Z的字母表示1-26的数字,反向破解多少种字符串的可能性...
  10. spring boot 拦截器 或 Spring AOP 方式记录请求日志
  11. Win10 查看开/关机历史记录、 删除管理员账户密码
  12. 计算机系统非正版,电脑安装正版系统和盗版系统的区别
  13. PHP家庭账单系统,php在线家庭财务管理系统
  14. python网易公开课官网_[Python][爬虫]网易公开课下载器,支持多线程,可分别下载视频及字幕...
  15. 2020年度中国雇主榜发布;全球发布商用5G移动宽带网络数量已达109个 | 美通企业日报...
  16. 省电指南-ESP8266如何降低功耗
  17. Word无法打开该文件,因为文件格式与文件扩展名不匹配。Microsoft Word无法从该位置打开扩展名为.asd的文件。请将此文件移动到原始.asd位置,然后重试。
  18. Android 隐藏虚拟按键
  19. 自考大专计算机专业英语翻译,大专英语自考(上册)课文翻译及习题答案(138页)-原创力文档...
  20. 有哪些在成都开了 20 年以上的味道不错的小饭馆

热门文章

  1. 名著赏读 | 研究生教育的历史,读《探究的场所》
  2. PHP面向对象和面向过程
  3. NOIP2012提高组 开车旅行 解题报告
  4. android截屏元素不全,截图总不全?2招教你网页完整截图和全文拼图
  5. Python同时运行多个函数(多线程)
  6. 中国民生信托荣膺《经济观察报》“年度卓越财富管理信托公司”称号
  7. 将scss文件转换成css文件
  8. 选择25k的996还是18k的965
  9. 分形树——python递归
  10. 在Linux C编程中使用Unicode和UTF-8