# QBDI 动态二进制插桩框架

> Quarkslab 开发的模块化动态二进制插桩（DBI）框架：在目标进程内部按基本块对程序进行 JIT 重编译，使插桩工具可以在指令执行前后、内存读写以及虚拟机事件上注册回调。引擎以库的形式提供，可在进程中任意位置启动插桩执行，并可通过 C、C++、Python（PyQBDI）或 Frida JavaScript 编写脚本。它不绑定特定注入方式：自带基于 LD_PRELOAD 的 QBDIPreload，用于 Linux 和 macOS 动态可执行文件，并已与 Frida 集成。

- 类型：工具
- 目标：应用 · 二进制
- 类别：调试与动态分析
- 关联：基础工具
- 来源复核于：2026-10-19
- 收录于：2026-10-19
- 原始资源：<https://github.com/QBDI/QBDI>
- 一手来源：<https://github.com/QBDI/QBDI/blob/3318580550215a0c7a64e9c2476e02eb5fc55f14/README.rst>
- 目录页面：<https://awesomerea.org/zh/resources/qbdi/>
- 记录 JSON：<https://awesomerea.org/resources/qbdi/record.json>
- 英文版：[English](https://awesomerea.org/resources/qbdi/index.md)

## 使用条件与局限

- README 的状态表显示，x86-64 和 x86 在 Android、Linux、macOS 和 Windows 上，ARM 在 Android 和 Linux 上，AArch64 在 Android、Linux、macOS 和 iOS 上均支持执行与内存访问信息；iOS 支持被描述为不稳定，且需要越狱设备。审阅时最新版本为 v0.12.1，发布于 2026-01-07，提供 Android、iOS、macOS 和 Windows 软件包；Linux 软件包最后见于 v0.12.0（2025-10-14）。PyPI 上的 PyQBDI 0.12.1 需要 Python 3.8+。
- 所审阅的 dev-next 提交领先 v0.12.1 共 12 个提交；README 说明所有新功能都合并到该分支，且没有固定的发布计划。从源码构建需要 CMake 3.12+、Ninja 或 Make 以及 C++17 工具链，并会静态构建自带的 LLVM，因为 QBDI 使用特定版本 LLVM 的私有 API；各平台的配置脚本涵盖 Linux、macOS、Windows（需原生 Python 3 和 Visual Studio）以及基于 Android NDK 的交叉编译。
- README 说明 QBDI 不处理信号、新线程创建和 C++ 异常。其文档还指出，插桩工具与目标程序共用堆和库，因此堆分配器等不可重入代码应交给插桩范围之外的执行代理处理，且操作系统加载器本身无法插桩。用户需自备目标程序和注入途径。
- LICENSE.txt 说明 QBDI 采用 Apache-2.0 许可，并列出静态链接的组件：LLVM（Apache-2.0 附 LLVM 例外）、spdlog、fmtlib、Catch2、pybind11，以及采用 GPLv3/Apache-2.0 的 SHA-256 实现；GitHub 无法识别这份合并许可文件。

## 一手来源

1. <https://github.com/QBDI/QBDI/blob/3318580550215a0c7a64e9c2476e02eb5fc55f14/README.rst>
2. <https://github.com/QBDI/QBDI/blob/3318580550215a0c7a64e9c2476e02eb5fc55f14/README.rst#L18-L52>
3. <https://github.com/QBDI/QBDI/blob/3318580550215a0c7a64e9c2476e02eb5fc55f14/docs/source/intro.rst>
4. <https://github.com/QBDI/QBDI/blob/3318580550215a0c7a64e9c2476e02eb5fc55f14/docs/source/api_description.rst>
5. <https://github.com/QBDI/QBDI/blob/3318580550215a0c7a64e9c2476e02eb5fc55f14/docs/source/changelog.rst>
6. <https://github.com/QBDI/QBDI/blob/3318580550215a0c7a64e9c2476e02eb5fc55f14/LICENSE.txt>
7. <https://github.com/QBDI/QBDI/releases/tag/v0.12.1>
8. <https://pypi.org/project/PyQBDI/0.12.1/>

## 同分区更多条目：原生二进制

- [binsider ELF 二进制分析终端界面](https://awesomerea.org/zh/resources/binsider/index.md) · 工具
- [iced x86 指令解码与汇编库](https://awesomerea.org/zh/resources/iced/index.md) · 工具
- [hrtng IDA 反编译增强插件](https://awesomerea.org/zh/resources/hrtng/index.md) · 工具
- [BinCAT 二进制静态分析工具包](https://awesomerea.org/zh/resources/bincat/index.md) · 工具
- [GEF GDB 增强扩展](https://awesomerea.org/zh/resources/gef/index.md) · 工具
- [Triton 动态二进制分析库](https://awesomerea.org/zh/resources/triton/index.md) · 工具

## 关于此条目

说明已依据一手来源复核。
原创说明采用 MIT 许可；外部项目、论文与素材保留各自的权利和许可。
