9.0 SP1还没捂热,就发布了9.1,相比之下9.1修了不少bug,分析程序更快更丝滑,还有signatures-bundle和IDA Feeds可以使用
实测9.0的patch脚本可用于9.1,并且大部分9.0的插件可用于9.1,由于二者配置方法类似便不多赘述
更新部分如下(2025/04/14):
初始化IDA
参考Binwalker师傅编写的7.7绿色版的IDA_InitTool
使用python实现禁用IDA自动更新和设置IDAPython路径的功能(默认使用嵌入的python3.11.9
配置和使用IDA Feeds插件
泄露文件中包括了符号库signatures-bundles-9.1.zip,物尽其用配置了一波该插件
配置和使用IDA MCP插件
实测自动化分析效果和WPeChatGPT差不多,但能看到分析过程,需要注意消耗的token更多
提供配置好的IDA9.1压缩包,初次使用前运行InitIDA.exe后即可使用(WPeChatgpt需要手动配置api和模型) IDA Professional 9.1.7z 链接: b2aK9s2c8@1M7s2y4Q4x3@1q4Q4x3V1k6Q4x3V1k6H3j5h3&6Q4x3X3g2T1j5h3W2V1N6g2)9J5k6h3y4G2L8g2)9J5c8Y4y4Q4x3V1j5I4y4V1S2C8z5f1k6B7c8i4W2Y4j5U0q4&6L8$3S2g2P5X3u0D9P5r3c8r3N6#2)9K6c8Y4m8%4k6q4)9K6c8o6S2H3N6i4b7`. 提取码: 8put
声明: 文章资源仅作学习交流使用,不得用于商业或者非法用途,请测试后尽快删除,购买正版进行支持
参考Binwalker师傅IDA7.7绿色版的IDA_InitTool.exe
功能为: 修改注册表,实现禁用自动更新和设置IDAPython路径;创建桌面快捷方式
使用pyinstaller打包为InitIDA.exe
运行效果如下
详情参考官网IDA Feeds
基本使用只能顺序扫描,完全使用支持并行扫描,需要配置以下依赖:
具体步骤:
首先使用idapython安装和激活idalib
使用idapython,指定pip下载idalib/python目录下setup.py指定的内容
下载idafeeds的依赖(RPyc)
requirements.txt:
配置ida_feeds/config.json的flair路径
修改config.sample.json并复制一份命名为config.json即可
下载并解压signatures-bundles-9.1.zip后,将文件夹内的子文件夹符号库复制到~\IDA Professional 9.1\sig文件夹下即可
插件在Edit>plugins>IDA Feeds启动
使用步骤:
先选择指定符号库,再选择扫描模式
选中符号库的某个符号文件,按ctrl+a选中所有符号,再点击运行探测
按住ctrl,选中所有匹配到的签名,点击Apply signatures
符号恢复效果如下,能恢复很多常见库函数符号
参考
[分享]基于mcp-server实现的ida自动化分析
c89K9s2c8@1M7s2y4Q4x3@1q4Q4x3V1k6Q4x3V1k6Y4K9i4c8Z5N6h3u0Q4x3X3g2U0L8$3#2Q4x3V1k6E0M7X3g2^5L8$3c8A6j5g2)9J5c8X3W2V1j5g2)9J5k6s2m8J5L8#2)9J5k6r3#2U0M7l9`.`.
能连接或者探测到本地mcp server的任意插件均可
到VSCode的插件商城安装Cline插件后,配置模型和API,可选择自动授权
首先使用idapython下载ida-pro-mcp程序(注意不要和系统python混淆)
之后进入IDAPython的Scripts目录运行ida-pro-mcp.exe(若IDAPython不为系统python则需要手动进入该目录运行)
需要先安装对应插件(如Cline),再运行ida-pro-mcp,否则不会生成配置文件
成功生成配置文件后,到IDA中运行MCP-Server
如果Cline能检测到server则配置成功
之后提问进行自动化分析
和WPeChatgpt分析结果对比
解决办法: 使用git congig --global --get http.proxy 查询网络代理,设置本地代理后即可成功拉取
报错如下:
使用了许久的ida7.7想更新到ida9,虽然成功安装并patch但IDAPython环境和插件没有配置好用起来不顺手
本文简单介绍IDA Pro 9.0.241217 SP1的安装步骤,IDAPython的配置,以及常用插件的地址和安装方法
打包了配置好的IDA9 SP1,设置IDAPython路径即可使用,使用方法文末简介
附件:
IDAPlugins.zip
IdaPro9Beta-Keygen-iRabbit.py
IDA Professional 9.0.7z
链接: 45dK9s2c8@1M7s2y4Q4x3@1q4Q4x3V1k6Q4x3V1k6H3j5h3&6Q4x3X3g2T1j5h3W2V1N6g2)9J5k6h3y4G2L8g2)9J5c8Y4y4Q4x3V1j5I4k6f1y4E0P5r3u0b7y4X3&6z5d9r3@1#2M7i4Z5@1x3i4u0r3j5X3g2@1k6#2)9K6c8Y4m8%4k6q4)9K6c8o6g2Z5k6s2p5`.
地址[Disassemblers]IDA Pro 9.0.241217 SP1
参考如下步骤
keygen修补成功输出如下,windows平台patch ida.dll和ida32.dll
ida9的新快捷键用起来不习惯, 可在options>shortcuts,取消勾选use new shortcuts使用老快捷键
options>general>Number of opcode bytes, 输入10在大部分情况下够用
灵感来源IDA 9.0.20241216 (SP1)安装教程 由于不想交钱故自己折腾
大部分插件的运行依赖于IDAPython环境,而IDAPython并不神秘,使用官方的Python解释器即可
python目录内是idapython脚本相关模块
PyQt5文件夹内可以发现不同python版本的库(ida插件图形化)
所以ida9的python版本需要在3.8-3.13之间(推荐3.10和3.11)
最初我直接使用ida7.7绿色版的python3.8,大部分插件仍然可以运行,但findcrypt报错
网上冲浪听说ida9使用python 3.11更稳定,故安装该版本,下载后直接运行即可
2a2K9s2c8@1M7s2y4Q4x3@1q4Q4x3V1k6Q4x3V1k6%4N6%4N6Q4x3X3g2H3P5i4c8Z5L8$3&6Q4x3X3g2G2M7X3N6Q4x3V1k6X3N6s2m8Q4x3V1k6H3P5i4c8Z5L8$3&6Q4x3V1j5K6i4K6u0W2x3e0q4Q4x3X3f1&6i4K6u0r3M7s2W2@1K9r3!0F1i4K6u0V1x3#2)9J5k6e0p5I4i4K6u0W2z5g2)9J5k6r3q4E0k6o6j5@1i4K6u0W2k6i4S2W2
为方便使用我安装到了IDA根目录内并命名为python311(不需要添加到环境变量)
安装完python后,需要手动设置idapython路径,运行ida根目录的idapyswitch即可
可以参考IDA Pro 切换 Python 版本
以下为插件名及其功能介绍
下面简介各插件的地址,功能,安装方法
955K9s2c8@1M7s2y4Q4x3@1q4Q4x3V1k6Q4x3V1k6Y4K9i4c8Z5N6h3u0Q4x3X3g2U0L8$3#2Q4x3V1k6x3y4s2W2K6i4K6u0r3e0r3q4*7P5f1W2p5b7b7`.`.
将LazyIDA.py复制到plugins目录下即可
使用前需要安装keystone-engine和six模块(py3.11自带six无需额外安装)
注意: 是keystone-engine不是keystone
项目地址: e77K9s2c8@1M7s2y4Q4x3@1q4Q4x3V1k6Q4x3V1k6Y4K9i4c8Z5N6h3u0Q4x3X3g2U0L8$3#2Q4x3V1k6C8k6i4W2K6N6r3!0F1k6g2)9J5k6r3g2F1k6$3W2F1k6g2)9J5c8X3E0W2P5i4m8S2N6r3y4Z5
适配IDA9的keypatch: https://bbs.kanxue.com/thread-282852.htm
将Keypatch.py复制到plugins目录下即可
dacK9s2c8@1M7s2y4Q4x3@1q4Q4x3V1k6Q4x3V1k6Y4K9i4c8Z5N6h3u0Q4x3X3g2U0L8$3#2Q4x3V1k6Y4j5h3q4K6k6h3c8W2L8r3g2F1i4K6u0r3M7r3q4@1j5$3S2A6L8X3M7`.
将Patching文件夹和Patching.py复制到plugins目录下即可
使用前需要idapython安装yara-pyhon(注意不是yara)
地址: 642K9s2c8@1M7s2y4Q4x3@1q4Q4x3V1k6Q4x3V1k6Y4K9i4c8Z5N6h3u0Q4x3X3g2U0L8$3#2Q4x3V1k6H3L8$3I4&6L8h3!0J5k6W2)9J5c8X3k6A6L8X3c8U0M7Y4W2H3N6q4)9J5k6s2W2S2M7X3p5`.
将findcrypt3.py和findcrypt3.rules复制到ida/plugins目录下即可
注意: 该插件在python3.8环境下无法运行
去除OLLVM混淆,如果安装了Hrtng可以不安装该插件
使用前需要idapython安装z3
下载地址
将d810文件夹和d810.py复制到plugins目录下即可
自动恢复常见函数的枚举
ff2K9s2c8@1M7s2y4Q4x3@1q4Q4x3V1k6Q4x3V1k6Y4K9i4c8Z5N6h3u0Q4x3X3g2U0L8$3#2Q4x3V1k6B7N6h3&6J5L8$3&6Q4x3V1k6S2N6i4c8G2i4K6u0V1k6h3&6#2L8b7`.`.
下载后将项目plugin目录内的所有文件:
enumlib
auto_enum.py
ida-plugin.json
复制到ida/plugins下即可
高亮括号,重定义关键函数声明,栈字符串识别,反ollvm等功能
766K9s2c8@1M7s2y4Q4x3@1q4Q4x3V1k6Q4x3V1k6Y4K9i4c8Z5N6h3u0Q4x3X3g2U0L8$3#2Q4x3V1k6w2j5i4y4H3k6i4u0K6K9%4W2x3j5h3u0Q4x3V1k6Z5M7Y4c8F1k6H3`.`.
下载release包后解压,复制plugins/windows/9.0/hrtng.dll到ida/plugins目录下即可
d66K9s2c8@1M7s2y4Q4x3@1q4Q4x3V1k6Q4x3V1k6Y4K9i4c8Z5N6h3u0Q4x3X3g2U0L8$3#2Q4x3V1k6Z5k6i4u0G2M7$3W2Q4x3V1k6U0L8r3q4K6M7$3W2F1k6X3!0J5L8h3g2J5
反编译C++时, 可以根据RTTI等信息综合恢复类Class的相关信息,例如继承信息,类名等。
下载release包后将Classinformer64.dll复制到ida/plugins目录下即可
d3eK9s2c8@1M7s2y4Q4x3@1q4Q4x3V1k6Q4x3V1k6Y4K9i4c8Z5N6h3u0Q4x3X3g2U0L8$3#2Q4x3V1k6V1j5h3&6A6k6$3q4J5k6%4g2Q4x3V1k6V1k6g2u0q4k6X3g2J5k6h3&6U0K9h3&6Y4
调试时使用,追踪栈和寄存器指向的内容
将dereferencing.py和dereferencing文件夹复制到ida/plugins
自动识别结构体,显示C++虚函数,生成函数结构树等
949K9s2c8@1M7s2y4Q4x3@1q4Q4x3V1k6Q4x3V1k6%4N6%4N6Q4x3X3f1#2x3Y4m8G2K9X3W2W2i4K6u0W2j5$3&6Q4x3V1k6X3L8%4u0#2L8g2)9J5k6i4m8Z5M7q4)9K6c8X3#2G2k6q4)9K6c8s2k6A6k6i4N6@1K9s2u0W2j5h3c8Q4x3U0k6S2L8i4m8Q4x3@1u0@1K9h3c8Q4x3@1b7I4z5e0V1&6z5e0l9#2i4K6t1$3j5h3#2H3i4K6y4n7K9r3W2Y4K9r3I4A6k6$3S2@1i4K6y4p5d9r3g2^5f1X3q4&6M7@1y4G2k6r3g2j5M7r3I4G2M7X3g2J5
479K9s2c8@1M7s2y4Q4x3@1q4Q4x3V1k6Q4x3V1k6Y4K9i4c8Z5N6h3u0Q4x3X3g2U0L8$3#2Q4x3V1k6w2M7X3W2W2N6s2Z5%4i4K6u0r3d9f1c8m8i4K6u0V1c8r3q4@1j5f1g2^5M7r3!0J5N6q4m8D9N6i4x3`.
shift+e 数据提取强化版,将DataExportPlus.py复制到plugins目录下即可
项目地址61fK9s2c8@1M7s2y4Q4x3@1q4Q4x3V1k6Q4x3V1k6Y4K9i4c8Z5N6h3u0Q4x3X3g2U0L8$3#2Q4x3V1k6b7M7U0l9J5x3e0c8Q4x3V1k6X3K9h3&6V1K9r3q4K6K9l9`.`.
该插件可以搜索出被魔改的哈希算法
把findhash.xml和findhash.py复制到plugins目录下即可
项目地址 f79K9s2c8@1M7s2y4Q4x3@1q4Q4x3V1k6Q4x3V1k6Y4K9i4c8Z5N6h3u0Q4x3X3g2U0L8$3#2Q4x3V1k6i4f1r3g2S2j5$3g2Q4x3X3c8t1j5@1S2Q4x3V1k6i4f1r3g2o6K9r3q4@1c8#2m8f1 该项目基于**Gepetto **
安装插件依赖
依赖文件requirements.txt内容如下
修改WPeChatGPT.py
默认支持OpenAI和DeepSeek模型,修改PLUGIN_NAME和model_api_key即可切换模型
由于OpenAI API不易申请,DeepSeek关闭了申请渠道,故使用火山引擎的API(后文介绍)
使用其他模型需要手动添加以下两个elif分支(根据自己的模型设置)
复制WPeChatGPT.py和Auto-WPeGPT_WPeace到ida/plugins
使用效果如下
该插件使用OpenAI SDK,默认支持OpenAI和DeepSeek模型,使用前需要申请api
推荐火山引擎,每个模型送50万免费token fe1K9s2c8@1M7s2y4Q4x3@1q4Q4x3V1k6Q4x3V1k6%4N6%4N6Q4x3X3g2$3L8$3I4U0k6h3&6Y4K9h3&6W2i4K6u0W2j5$3!0E0i4K6u0o6 使用时注意token用量,扣钱了阿giao连蛋都不给你补
模型广场中,选择需要的模型,点击立即体验
立即体验默认提供GUI界面,选择API接入
创建API Key,名称任意,创建后复制并保存API Key,后续使用模型依赖该Key(注意不要泄露 )
之后选择自定义推理接入点>创建推理接入点
自行设置接入点名称,模型,确认接入
选择模型
创建好后复制模型id和之前的API Key
填充model_api_key和MODEL后,重启IDA即可使用插件
下载地址[下载]bindiff_binexport for windows
将binexport12_ida64.dll和bindiff8_ida64.dll复制到ida/plugins
或C:\Users\用户名\AppData\Roaming\Hex-Rays\IDA Pro\plugins下即可
同时支持32和64位样本
问题描述: 报错如下
推测是该路径为ida默认的设置路径,ida9.0和ida7.7的设置发生了冲突
备份保存一份7.7的IDA Pro设置后,删除C:\Users\admin\AppData\Roaming\Hex-Rays\IDA Pro\plugins下的文件即可解决报错
但是支持IDA9 SP1的插件没有找到,只有适用于RC1的:c81K9s2c8@1M7s2y4Q4x3@1q4Q4x3V1k6Q4x3V1k6Y4K9i4c8Z5N6h3u0Q4x3X3g2U0L8$3#2Q4x3V1k6*7K9r3g2X3L8%4S2Q4x3V1k6n7K9h3&6V1K9h3k6X3i4K6g2X3k6X3!0J5i4K6g2X3d9f1c8m8z5g2)9J5k6e0l9`.
如果大佬们有适用于SP1的bindiff麻烦分享一下
解压IDA Professional 9.0.7z后,运行根目录的idapyswitch设置idapython路径即可使用
首次打开文件时,会询问是否使用新快捷键,选择No
之后弹出许可证协议,选择Agree
连接ida server更新,直接点ok
import
os
import
winreg
import
win32com.client
def
set_ida_reg(py_dll_path):
try
:
key_path
=
r
"SOFTWARE\Hex-Rays\IDA"
key
=
winreg.CreateKey(winreg.HKEY_CURRENT_USER, key_path)
with key:
winreg.SetValueEx(key,
"AutoCheckUpdates"
,
0
, winreg.REG_DWORD,
0
)
winreg.SetValueEx(key,
"AutoRequestUpdates"
,
0
, winreg.REG_DWORD,
0
)
winreg.SetValueEx(key,
"AutoUseLumina"
,
0
, winreg.REG_DWORD,
0
)
print
(
"Ban IDA AutoUpdate succeeded"
)
if
py_dll_path:
winreg.SetValueEx(key,
"Python3TargetDLL"
,
0
, winreg.REG_SZ, py_dll_path)
print
(
"Setting IDAPython Path succeeded"
)
return
True
except
Exception as e:
print
(f
"注册表操作失败: {e}"
)
return
False
def
create_shortcut(target):
name
=
"IDA Pro 9.1"
desc
=
"The Interactive Disassembler"
try
:
desktop
=
os.path.join(os.path.expanduser(
"~"
),
"Desktop"
)
shortcut_path
=
os.path.join(desktop, f
"{name}.lnk"
)
shell
=
win32com.client.Dispatch(
"WScript.Shell"
)
shortcut
=
shell.CreateShortcut(shortcut_path)
shortcut.TargetPath
=
target
shortcut.WorkingDirectory
=
os.path.dirname(target)
shortcut.Description
=
desc
shortcut.Save()
print
(
"Create shortcut succeeded"
)
except
Exception as e:
print
(
"Create shortcut failed: "
, e)
def
check_python_env(py_dir):
py_dll
=
os.path.join(py_dir,
"python3.dll"
)
if
os.path.isdir(py_dir)
=
=
False
:
print
(
"\nError: embedded python directory not found!"
)
return
False
if
os.path.isfile(py_dll)
=
=
False
:
print
(
"\nError: embedded python3.dll not found!"
)
return
False
return
True
def
main():
print
(
"============================================================================================"
)
print
(
" IDA Initilizer created by OrientalGlass (Refer to Binwalker's IDA_InitTool)"
)
print
(
"============================================================================================"
)
cwd
=
os.getcwd()
ida_path
=
os.path.join(cwd,
"ida.exe"
)
py_dir
=
os.path.join(cwd,
"python311"
)
py_dll
=
os.path.join(py_dir,
"python3.dll"
)
if
os.path.exists(ida_path)
=
=
False
:
print
(
"Error: please run this script in IDA directory"
)
return
else
:
print
(f
"IDA Path: {ida_path}"
)
print
(
"\n------------------------------------------------------------"
)
choice
=
input
(
"\nUse default initialization settings?(Y/N y/n): "
).lower()
choice_yes_items
=
('
','
y
','
Y
','
yes')
if
choice
in
choice_yes_items
and
check_python_env(py_dir):
set_ida_reg(py_dll)
create_shortcut(ida_path)
else
:
py_choice
=
input
(
"\nUse embedded idapython?(Y/N y/n): "
).lower()
if
py_choice
in
choice_yes_items
and
check_python_env(py_dir):
set_ida_reg(py_dll)
sc_choice
=
input
(
"\nCreate desktop shortcut?(Y/N y/n): "
).lower()
if
sc_choice
in
choice_yes_items:
create_shortcut(ida_path)
if
__name__
=
=
"__main__"
:
main()
[注意]看雪招聘,专注安全领域的专业人才平台!
最后于 3天前
被东方玻璃编辑
,原因: 添加IDA 9.1初始化,IDAFeeds和IDAMCP插件安装教程
上传的附件: