# Blackbox Protobuf 无定义 Protobuf 解码与重编码工具

> NCC Group 推出的工具集，可在没有对应 .proto 定义的情况下解码并重新编码 Protocol Buffers 报文。解码器返回报文数据，以及根据线路类型尽力推测生成、可编辑的类型定义；分析者可以为字段命名、修正类型并重新编码修改后的报文，这是 protoc --decode_raw 做不到的。它提供 Python 库及 bbpb 命令行工具、基于 Jython 的 Burp Suite 扩展和 mitmproxy 插件，README 说明它最初用于在移动应用渗透测试中修改报文。

- 类型：工具
- 目标：应用 · 协议
- 类别：协议分析工具
- 关联：基础工具
- 来源复核于：2026-10-18
- 收录于：2026-10-19
- 原始资源：<https://github.com/nccgroup/blackboxprotobuf>
- 一手来源：<https://github.com/nccgroup/blackboxprotobuf/blob/b98861e0f732e902923abc36cc08c40917f34127/README.md>
- 目录页面：<https://awesomerea.org/zh/resources/blackbox-protobuf/>
- 记录 JSON：<https://awesomerea.org/resources/blackbox-protobuf/record.json>
- 英文版：[English](https://awesomerea.org/resources/blackbox-protobuf/index.md)

## 使用条件与局限

- 库与命令行工具可从 PyPI 以 bbpb 安装（1.4.2，要求 Python >=3.8,<4.0）；README 指出 PyPI 上的 blackboxprotobuf 软件包是较早的派生版本。mitmproxy 插件加载 mitmproxy/bbpb.py，并要求在同一环境中安装 bbpb；只有设置 bbpb_project_file 选项，编辑过的类型才能在重启后保留，mitmweb 中也无法使用编辑命令。
- Burp 扩展需要配置了 Jython 2.7+ 的 Burp Suite，并在克隆仓库后运行 git submodule update --init。处理 gRPC 需开启 Burp 的 HTTP/2 支持，且只支持未压缩的 gRPC 负载。
- 字段类型根据线路类型（偶尔结合字段内容）推测，类型定义可能需要分析者修正；字段名称和含义无法恢复，类型发现工具仅列为未来计划。.proto 导入导出使用不完整的解析器，不处理 import 语句。
- 采用 MIT 许可。默认分支最后一次提交于 2025-03-14，与 v1.4.2 发布同日。

## 一手来源

1. <https://github.com/nccgroup/blackboxprotobuf/blob/b98861e0f732e902923abc36cc08c40917f34127/README.md>
2. <https://github.com/nccgroup/blackboxprotobuf/blob/b98861e0f732e902923abc36cc08c40917f34127/lib/README.md>
3. <https://github.com/nccgroup/blackboxprotobuf/blob/b98861e0f732e902923abc36cc08c40917f34127/burp/README.md>
4. <https://github.com/nccgroup/blackboxprotobuf/blob/b98861e0f732e902923abc36cc08c40917f34127/mitmproxy/README.md>
5. <https://github.com/nccgroup/blackboxprotobuf/blob/b98861e0f732e902923abc36cc08c40917f34127/lib/pyproject.toml>
6. <https://github.com/nccgroup/blackboxprotobuf/blob/b98861e0f732e902923abc36cc08c40917f34127/LICENSE>
7. <https://github.com/nccgroup/blackboxprotobuf/releases/tag/v1.4.2>
8. <https://pypi.org/project/bbpb/1.4.2/>

## 同分区更多条目：协议

- [furiousMAC Apple Continuity 协议逆向与解析器](https://awesomerea.org/zh/resources/furiousmac-continuity/index.md) · 工具
- [opendbc 汽车 CAN 报文定义库](https://awesomerea.org/zh/resources/opendbc/index.md) · 工具
- [FISSURE 射频信号分析与协议发现框架](https://awesomerea.org/zh/resources/fissure/index.md) · 工具
- [friTap TLS 密钥提取与流量解密工具](https://awesomerea.org/zh/resources/fritap/index.md) · 工具
- [pbtk Protobuf 逆向工具集](https://awesomerea.org/zh/resources/pbtk/index.md) · 工具
- [SteamKit Steam 网络协议库](https://awesomerea.org/zh/resources/steamkit/index.md) · 工具

## 关于此条目

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