
auto-re-agent
上传二进制,AI 自动还原 C/C++ 函数,逆向效率翻倍
项目预览
项目数据
项目介绍
Star 增长趋势
本站每日记录该项目 GitHub 星标变化,观测越久曲线越完整
数据来源:GitHub API 逐日快照 · 收录于 2026-08-09 · 当前星标 ★ 2424
使用教程
ℹ 本教程由 AI 依据该项目 README 整理,个别步骤可能需要按你的环境微调。
环境要求
- Python 3 与 pip 环境
- 本地安装的 Ghidra
- 一个受支持的 AI 提供方(Claude、Codex 或 OpenAI 兼容模型)
- 已认证的 Claude / Codex CLI,或可用的 API 配置
- 一个待分析的目标程序或项目
安装与启动步骤
-
1安装主体与桥
通过 PyPI 安装 auto-re-agent 及 Ghidra 查询桥,需 0.4.0 及以上版本。
python3 -m pip install --upgrade "auto-re-agent[ghidra-bridge]>=0.4.0" -
2装无头导出支持
需要用无头方式运行 Ghidra 导出时,再装 headless extra。
python3 -m pip install --upgrade "auto-re-agent[headless]>=0.4.0" -
3安装开发版
想用 GitHub 上最新开发版本时,用此命令同时安装桥与主体。
python3 -m pip install --upgrade "ghidra-ai-bridge @ git+https://github.com/Dryxio/ghidra-bridge.git@main" "auto-re-agent @ git+https://github.com/Dryxio/reagent.git@main" -
4导出 Ghidra 证据
在你要逆向的项目目录下执行,需 headless extra 与本地 Ghidra 安装。
ghidra-bridge export all -
5确认导出可见
检查导出的证据和配置是否已被桥识别,避免后续分析读不到数据。
ghidra-bridge info -
6编写配置文件
在目标项目里创建 re-agent.yaml,填入 LLM 提供方、密钥、模型等;完整字段见 docs/configuration.md。
-
7运行环境自检
执行 setup check,确认依赖、Ghidra 与 AI 提供方配置是否就绪,再开始重建函数。
re-agent doctor
关键配置
| 配置项 | 必填 | 说明 | 示例 |
|---|---|---|---|
RE_AGENT_LLM_PROVIDER | 是 | 指定使用的 LLM 提供方 | anthropic |
RE_AGENT_LLM_API_KEY | 否 | API 方式接入时的密钥 | sk-xxxxxxxx |
RE_AGENT_LLM_MODEL | 否 | 指定调用的模型名称 | claude-sonnet-4 |
RE_AGENT_LLM_BASE_URL | 否 | OpenAI 兼容接口的基础地址 | https://api.openai.com/v1 |
RE_AGENT_BACKEND_CLI_PATH | 否 | Claude / Codex CLI 可执行文件路径 | /usr/local/bin/codex |
RE_AGENT_BACKEND_TIMEOUT | 否 | 后端调用超时时间 | 300 |
如何确认成功
ghidra-bridge info 能列出导出与配置,且 re-agent doctor 自检通过;随后对一个小函数重建并查看验证结果。
常见问题
Q:如何控制 LLM 成本和运行时长?
A:每函数的审查轮次、调查和尝试次数都在配置中做了上限;提供方日志会记录用量与成本元数据,实际花费取决于所选模型、证据量和目标复杂度。
Q:支持哪些 AI 后端?
A:支持 Claude、Codex 以及 OpenAI 兼容的模型;可以使用已有认证的 Claude 或 Codex CLI,也可以走 API 配置。
Q:应该从什么目标开始?
A:建议先选一个程序并只从一个小函数入手,确认流程跑通后再扩大范围,同时设置较小的模型调用上限。
Q:配置该写在哪里?
A:角色相关的 agents.* 配置、验证、项目 profile、parity 和输出路径都要写在 YAML 里;环境变量只支持有限的几个 LLM 与后端参数。
注意事项
- 配置优先级为:CLI 运行时覆盖 > 支持的环境变量 > re-agent.yaml > dataclass 默认值。
- 当前支持的环境变量仅有 RE_AGENT_LLM_PROVIDER、RE_AGENT_LLM_API_KEY、RE_AGENT_LLM_MODEL、RE_AGENT_LLM_BASE_URL、RE_AGENT_BACKEND_CLI_PATH、RE_AGENT_BACKEND_TIMEOUT。
- 无头导出需要同时安装 headless extra 并具备本地 Ghidra;桥的 Ghidra、导出与 source-map 配置见 ghidra-bridge 文档。
- README 未给出 re-agent.yaml 的完整字段示例,请以 docs/configuration.md 为准。
核心亮点
- 深度融合 Ghidra 和 LLM,自动化反编译和代码重建,减少人工干预
- 支持函数级验证,确保重建代码的准确性,而非简单生成
- 兼容多种主流 LLM(Claude、Codex),灵活适配不同需求
不足之处
- 依赖 Ghidra 环境,安装配置有一定门槛
- 对复杂二进制(如混淆代码)的还原效果可能有限
适用场景
- 恶意软件分析,快速还原关键函数逻辑
- 漏洞研究,辅助理解二进制中的脆弱代码
- 遗留软件维护,从无源码二进制中提取函数实现
替代项目
GhidraMCP、BinGPT、Decompiler Assistant
下一篇:repobrain
同类项目推荐
browsercode
开源
浏览器里直接跑 AI 编程 CLI,免安装零配置
Run AI Agent CLIs in your browser
Agent4SE-Paper-List
开源
一榜收录LLM智能体在软件工程的全部论文,持续更新
Repository for the paper "Large Language Model-Based Agents for Software Engineering···
hivebox
开源
给 AI 代理一个安全沙箱,跑代码不担心搞坏系统
Lightweight Linux sandbox for AI agents. Kernel-native isolation (namespaces, cgroup···
Awesome-GUI-Agents
开源
一页看懂让 AI 操作图形界面的工具与资料
A curated collection of resources, tools, and frameworks for developing GUI Agents.
network-sketcher
开源
用 AI 快速画网络拓扑,一键导出 PPT 和配置表
Network Sketcher is an AI-ready network design tool with Local MCP, Online, and Offl···
flint-chart
开源
让 AI 智能体一句话生成专业图表,还能随手改
Flint is a visualization language that lets AI agents reliably create expressive, go···
full-stack-ai-agent-template
开源
一键生成全栈AI应用,内置Agent、RAG和认证,开箱即用。
Full-stack AI app generator — FastAPI + Next.js with AI Agents, RAG, streaming, aut···
awesome-agi
开源
找AGI资源,看这一个列表就够了
A curated list of amazing resources, papers, articles, and tools related to Artifici···
opencode-goal-plugin
开源
给 AI 编程助手装上目标导航,防止跑偏,专注干完活
OpenCode goal plugin for Codex-style goal mode, /goal slash commands, persistent obj···