Heretek-RE/re-triton
GitHub: Heretek-RE/re-triton
re-triton 将 Triton 符号执行与约束求解库暴露为 MCP server,使 AI 编程助手能够直接对原始机器码执行符号分析、污点跟踪和约束求解。
Stars: 0 | Forks: 0
# re-triton
一个暴露 [Triton](https://github.com/JonathanSalwan/Triton) 库用于符号执行、污点分析和约束求解的 MCP server。
## 工具
| 工具 | 功能 |
|---|---|
| `check_triton` | 确认 Triton 可导入 |
| `emulate_function` | 具体模拟(无符号) |
| `symbolic_explore` | 穿越函数的符号执行 |
| `solve_constraint` | 基于 Z3 的约束求解器 |
| `taint_analysis` | 穿越函数的污点跟踪 |
| `find_magic_bytes` | 求解匹配目标字节的输入 |
## 安装
```
pip install -e ./servers/re-triton
```
`pyproject.toml` 固定了 `triton @ git+https://github.com/JonathanSalwan/Triton`,
这会直接从 Quarkslab 的源码仓库拉取其二进制分析框架。
PyPI 上的 `triton` 包是一个 GPU 编译器,**并不是** `re-triton`
所需要的。从源码构建 Triton 需要 CMake + C++ 工具链;首次安装
可能需要几分钟的时间。
**在 Windows 上尽力而为** — 如果源码构建安装失败,server
将从 `check_triton` 返回一个明确的 "Triton not available" 错误。
## 为什么选择 Triton
Triton 是最容易嵌入到 Python 工具中的符号执行框架。它与 `capstone` 反汇编器配对(我们已经在 `re-lief` 中使用过)。对于 x86/x64/AArch64 上的纯二进制符号执行,这是正确的选择。对于更高级的用例(深度程序分析、复杂约束),`angr` 是黄金标准 —— 它是 v2 的候选者。
## 关于原始字节的说明
Triton 处理的是原始机器码,而不是文件。MCP 工具接受 `code_b64`(base64 编码的字节)—— 调用者(Claude Code,通过 `re-rizin.disassemble_function` 及相关工具)负责从二进制文件中提取相关的字节。
标签:Bash脚本, MCP服务, 二进制分析, 云安全运维, 符号执行, 约束求解, 逆向分析, 逆向工具