Python · 项目报告

2akouwu/reverify

Verified reverse engineering: AI RE grounded on deterministic tools - results checked against the binary, not hallucinated.

已完成 打开 GitHub
2
566星标
114Fork
0Issue
MIT许可证

分析结果

项目分析

Reverify 是一个面向逆向工程的 AI 辅助分析工具包,核心思路是“模型提出假设,确定性工具验证结果”。它可以对二进制文件进行格式解析、反汇编、字符串提取、AOB 模式扫描、轻量 CPU 仿真、Protobuf/TLV 解析、Frida Hook 脚本生成等操作,并通过 `verify` / `reconstruct` 机制把 AI 的结构、算法、指令等判断与真实二进制字节进行校验,降低大模型在逆向场景中的幻觉风险。项目使用 Python 编写,MIT 许可证,支持 CLI 和 MCP Server,可接入 Claude Code、Cursor 等 AI Agent 工作流。

适用领域 逆向工程 / 二进制分析 / 恶意软件分析 / CTF 安全竞赛 / AI Agent 工具链 / 软件安全研究 / 漏洞研究辅助 / 协议与数据格式分析 / Frida 动态插桩 / 开发者工具
配置难度 中等偏高。基础 CLI 命令安装和运行比较简单,Python 开发者可以快速上手;但要发挥其价值,需要使用者理解二进制格式、汇编、CPU 架构、逆向分析方法,以及如何把 AI 生成的假设转化为可验证的 claim。MCP 与 Agent 工作流集成也需要一定工程配置能力。
商业价值 对安全团队、软件保护团队和需要进行授权二进制分析的研发团队有较高价值。它可以将 AI 的探索能力和确定性工具的验证能力结合起来,提升初步分析、样本 triage、假设验证和报告可信度,尤其适合构建内部自动化逆向助手、恶意软件分析流水线、CTF/培训平台或安全研究辅助工具。其 MIT 许可证和轻量安装方式有利于企业二次集成,但在关键生产安全结论中仍应配合人工复核和成熟逆向平台使用。
01

技术亮点

  • 核心卖点清晰:不是让 AI 直接猜逆向结论,而是通过确定性工具验证 AI 的假设,缓解二进制分析中的大模型幻觉问题。
  • 提供 `VERIFIED`、`REFUTED`、`INCONCLUSIVE` 三态验证结果,并返回实际观测到的字节或证据,适合构建可信分析链路。
  • 支持 CLI 与 MCP Server,既可用于传统命令行工作流,也可集成进 AI Agent 开发环境。
  • 纯 Python 核心降低了安装门槛,不依赖 Ghidra 等重量级工具。
  • 可选启用 capstone、unicorn、lief 等成熟引擎,兼顾轻量使用和高级能力。
  • 覆盖面较广,包括 PE/ELF/Mach-O 解析、x86/x64/ARM/ARM64 反汇编、CPU 仿真、字符串提取、模式扫描、Protobuf/TLV 解析、Frida Hook 生成等。
  • 适合自动化验证场景:CLI 在出现 refuted claim 时可返回非零状态码,便于 CI 或 agent workflow 进行 gating。
  • MIT 许可证对个人、企业和研究用途都比较友好。
  • 项目已有一定社区关注度,566 stars 和 114 forks 表明有一定开发者兴趣。
02

目标用户

  • 安全研究员
  • 恶意软件分析人员
  • CTF 选手
  • 逆向工程师
  • 软件保护与反作弊研究人员
  • 需要分析自有软件或授权软件的开发者
  • 希望将 AI Agent 接入二进制分析流程的团队
  • 使用 Claude Code、Cursor、Codex CLI 等工具的高级开发者
03

配置要求

  • 需要 Python 运行环境,项目主要通过 pip 安装和 CLI 使用。
  • 基础版本可使用纯 Python 核心,不强制依赖 Ghidra、IDA、Binary Ninja 等大型逆向平台。
  • 如需更完整的多架构反汇编和仿真能力,建议安装 `reverify[full]`,以启用 capstone、unicorn、lief。
  • 分析对象应为用户自有或已获得授权的二进制文件;项目明确定位于授权逆向、恶意软件分析、CTF、互操作性研究等合法场景。
  • MCP 集成需要 AI Agent 客户端支持 Model Context Protocol,例如 Claude Code 或 Cursor。
  • 若在自动化流程中使用 `verify`,需要准备 claim JSON 或 claims 文件,支持的 claim 类型包括 `bytes_at`、`pattern_present`、`string_present`、`instructions`、`emulate_result`、`protobuf_field`、`pe_import`。
  • 在 Windows、Linux、macOS 上理论上可运行,但实际后端依赖如 capstone、unicorn、lief 的安装体验可能随平台和 Python 版本变化。
04

适用场景

  • 对未知 PE、ELF、Mach-O 二进制文件进行快速自动化 triage,提取架构、入口点、节区、字符串、导入导出等信息
  • 让 AI Agent 生成关于二进制结构或算法的假设,并使用工具验证其是否符合真实字节内容
  • 在 CI 或自动化分析流程中验证反编译、重构或模式识别结果,若存在 REFUTED 结果则失败退出
  • 通过 AOB 模式扫描查找特定指令序列或签名
  • 对小段机器码进行反汇编和寄存器级仿真,验证算法或函数行为
  • 解析 schema-less Protobuf 或 TLV 数据,辅助协议逆向
  • 生成 Frida Hook 脚本,用于运行时观察函数调用、参数和返回值
  • 辅助恶意样本静态分析,快速识别格式、字符串、导入函数和可疑行为线索
  • 为 AI 逆向工作流提供 MCP 工具,使模型能直接调用确定性解析、反汇编、扫描和验证能力
05

部署与配置

  • 确认本地已安装 Python 和 pip。
  • 基础安装:`pip install reverify`。该方式使用纯 Python 核心,依赖较少,适合快速体验。
  • 完整安装:`pip install "reverify[full]"`。该方式会启用 capstone、unicorn、lief 等成熟后端,获得更强的反汇编、CPU 仿真和 PE/ELF/Mach-O 解析能力。
  • 检查当前启用的后端:`reverify backends`。
  • 快速分析样本:`reverify auto sample.bin --json`。
  • 解析 PE 文件:`reverify parse-pe sample.exe --json`。
  • 反汇编十六进制机器码:`reverify disasm 90505831C0C3 --arch x86_64`。
  • 如果从源码仓库直接运行,可使用:`python reverify/cli.py auto sample.bin --json`,纯标准库场景下也可运行基础功能。
  • 如需接入 AI Agent,启动 MCP Server:`python reverify/mcp_server.py`,然后在 Claude Code、Cursor 等支持 MCP 的工具中配置该服务。
06

风险与注意事项

  • 项目版本仍处于 v0.3.0,虽然 README 称已有成熟引擎和 96 个单元测试,但整体生态和稳定性可能不如 Ghidra、IDA、radare2、Binary Ninja 等成熟工具。
  • AI 辅助逆向的效果高度依赖模型质量、提示词设计和 claim 设计;工具能验证明确假设,但不能保证自动产出完整、正确的逆向结论。
  • 纯 Python fallback 能力可能有限,复杂架构、复杂指令、混淆代码、反调试和壳保护场景下可能需要更强后端或人工介入。
  • README 强调授权使用,但工具可用于二进制分析和 Hook 生成,企业内部使用时需要配合法务、安全规范和样本隔离策略。
  • 如果用于恶意软件分析,仍需在沙箱或隔离环境中运行,避免样本误执行、路径访问或网络访问风险。
  • MCP Server 暴露给 AI Agent 后,需要关注文件系统访问边界、输入样本来源和命令执行权限,防止 Agent 误操作敏感文件。
  • 支持多种格式和后端,但真实复杂二进制中的异常格式、加壳、损坏头部、混淆控制流可能导致解析不完整或 INCONCLUSIVE。
  • 业务团队若缺乏逆向经验,可能误读工具输出,把 VERIFIED 的局部 claim 扩展成未经验证的整体结论。

历史记录

热榜历史快照

2026-09-03 第15名 新收录 · github_search