在 Manus 中运行任何 Skill
一键导入
一键导入
一键在 Manus 中运行任何 Skill
开始使用$pwd:
$ git log --oneline --stat
stars:161
forks:26
updated:2026年4月29日 07:48
SKILL.md
| name | IDA-Skill |
| description | IDA Pro 逆向分析。通过 IDAPython 脚本获取反汇编、反编译、字符串、导入表、交叉引用等信息。 |
仅支持静态分析 - 禁止调试、执行任何二进制文件。
对新样本进行初始化分析,自动生成 i64 数据库并提取所有基础信息:
示例:
python skills/IDA-Skill/tools/init_analysis.py target.exe
python skills/IDA-Skill/tools/init_analysis.py target.exe ./result
输出文件:
analysis.txt - 基本信息 + 导出表 + OEP反编译imports.txt - 导入表strings_use_subagent_to_analyse.txt - 字符串(按编码分类,已过滤噪点)遵循自顶向下的分析策略:
利用以下信息辅助定位关键函数:
idautils.XrefsTo() 查找函数调用关系推荐工作流:
exec_ida.py 执行 IDAPython 代码片段ida_hexrays.decompile(ea)idautils.XrefsTo(ea) / idautils.XrefsFrom(ea)禁止直接读取 strings_use_subagent_to_analyse.txt!
strings_use_subagent_to_analyse.txt 文件通常包含数千行字符串,直接读取会:
正确做法:
初始化分析后,使用 exec_ida.py 对 i64 数据库执行 IDAPython 代码进行深入分析。
从标准输入读取代码,配合 PowerShell here-string 语法使用。
⚠️ 必须使用 here-string 语法,不要手动转义引号!
✅ 正确做法:
使用模板
@'
原生 Python 文本
'@ | python skills/IDA-Skill/tools/exec_ida.py target.i64 --code-std
案例:
@'
print("Entry Point:", hex(idc.get_inf_attr(idc.INF_START_EA)))
for func_ea in idautils.Functions():
print(hex(func_ea), idc.get_func_name(func_ea))
'@ | python skills/IDA-Skill/tools/exec_ida.py target.i64 --code-std
Here-String 语法规则:
@' 必须在行尾'@ 必须单独在行首(前面不能有空格)执行脚本文件,适合复杂代码或需要重复使用的脚本。
python skills/IDA-Skill/tools/exec_ida.py target.i64 --file analyze.py
idautils.Functions() - 遍历所有函数idc.get_func_name(ea) - 获取函数名ida_funcs.get_func(ea) - 获取函数对象idc.set_name(ea, name) - 重命名ida_hexrays.decompile(ea) - 反编译函数,返回伪代码idautils.Strings() - 遍历字符串idc.get_strlit_contents(ea) - 获取字符串内容idautils.XrefsTo(ea) - 谁引用了这个地址idautils.XrefsFrom(ea) - 这个地址引用了谁ida_bytes.get_bytes(ea, size) - 读取字节ida_bytes.patch_bytes(ea, data) - 修改字节所有工具通过 exec_ida.py 执行,具体用法查询 TOOLS.md。
| 分析目标 | 推荐文档 |
|---|---|
| 分析恶意样本 | 恶意软件分析 |
| 挖掘安全漏洞 | 漏洞分析 |
| 还原通信协议 | 协议逆向 |
| 识别加密算法 | 算法还原 |
| 处理混淆代码 | 反混淆 |
| 分析内核驱动 | 驱动分析 |
| 逆向嵌入式固件 | 固件分析 |
| 游戏外挂分析 | 游戏逆向 |
| 移动应用逆向 | 移动应用分析 |
| 识别第三方库 | 静态库/SDK 分析 |
| 基础操作技巧 | 通用技巧 |