# eCapture eBPF TLS 明文捕获工具

> 基于 eBPF 的 Linux 与 Android 工具，在 OpenSSL、BoringSSL、GnuTLS、NSS 等 TLS 库以及 Go 的 TLS 实现上挂载 uprobe，记录进程收发的明文，无需代理或安装 CA 证书，便于分析者在自己掌控的主机上检查应用的加密流量。输出模式包括明文文本、NSS 密钥日志，以及内嵌 TLS 密钥、可交给 Wireshark 和 tshark 解读的 pcapng 文件；文本模式还能从捕获的数据流中重建完整的 HTTP/1.1 和 HTTP/2 报文。另有独立模块审计 bash、zsh 命令以及 MySQL、PostgreSQL 查询。

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

## 使用条件与局限

- 审阅时最新版本为 v2.9.0，发布于 2026-10-24；所审阅的 master 提交与该标签完全一致。发布文件包括 Linux amd64、arm64、loong64 压缩包和 .deb 安装包，以及 Android amd64、arm64 压缩包；Docker 镜像仅支持 Linux。README 声明不支持 Windows 和 macOS；独立的 eCaptureQ 图形客户端可从这些系统连接远程 eCapture 服务。
- 需要 x86_64 上 4.18+、aarch64 上 5.5+ 或 LoongArch64 上 6.6+ 的 Linux 内核，或 x86_64、aarch64 架构的 Android。加载 eBPF 程序需要 root；按最小权限指南，也可在 5.8+ 内核上改授 CAP_BPF、CAP_PERFMON 和 CAP_SYS_PTRACE（旧内核为 CAP_SYS_ADMIN），pcapng 模式另需 CAP_NET_ADMIN。从源码构建需要 Go 1.26+、clang 与 LLVM 9+、cmake 3.18.4+、libelf 以及固定版本的 libpcap 子模块；make nocore 可为不支持 BTF 的内核构建。
- 分析者需选定要观察的库或程序：tls 模块通过 ld.so.conf 路径查找系统 OpenSSL，或由 --libssl 指定（也可指向静态链接的程序）；gotls 需要 Go 程序的 ELF 路径；pcapng 模式还需指定网卡和抓包过滤条件。pcap 模式可记录 TCP 上受 TLS 保护的 HTTP/1.x、HTTP/2 以及 QUIC 上的 HTTP/3，而 pcapng 文本数据源只能重建 TCP 上的 HTTP/1.1 和 HTTP/2。项目文档列出了各模块须以 root 运行的端到端测试（make e2e）。
- 采用 Apache-2.0；libpcap 以 git 子模块引入，bin、dist、deps 和 bytecode 目录只有占位文件。捕获的明文和密钥可能包含密码、令牌和个人数据：项目的防御与检测指南要求在生产环境使用前取得书面授权，用 --pid 将捕获限定于选定进程，并按组织政策处理数据，同时说明了如何检测 eBPF 捕获工具。

## 一手来源

1. <https://github.com/gojue/ecapture/blob/e834aa060d9308e0462837f29779753f9059d9ff/README.md>
2. <https://github.com/gojue/ecapture/blob/e834aa060d9308e0462837f29779753f9059d9ff/README.md#L34-L37>
3. <https://github.com/gojue/ecapture/blob/e834aa060d9308e0462837f29779753f9059d9ff/README.md#L120-L198>
4. <https://github.com/gojue/ecapture/blob/e834aa060d9308e0462837f29779753f9059d9ff/docs/compilation.md>
5. <https://github.com/gojue/ecapture/blob/e834aa060d9308e0462837f29779753f9059d9ff/docs/minimum-privileges.md>
6. <https://github.com/gojue/ecapture/blob/e834aa060d9308e0462837f29779753f9059d9ff/docs/defense-detection.md#L151-L166>
7. <https://github.com/gojue/ecapture/blob/e834aa060d9308e0462837f29779753f9059d9ff/docs/e2e-tests.md>
8. <https://github.com/gojue/ecapture/blob/e834aa060d9308e0462837f29779753f9059d9ff/CHANGELOG.md>
9. <https://github.com/gojue/ecapture/blob/e834aa060d9308e0462837f29779753f9059d9ff/.gitmodules>
10. <https://github.com/gojue/ecapture/blob/e834aa060d9308e0462837f29779753f9059d9ff/LICENSE>
11. <https://github.com/gojue/ecapture/releases/tag/v2.9.0>

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

- [USBPcap Windows USB 抓包工具](https://awesomerea.org/zh/resources/usbpcap/index.md) · 工具
- [cantools CAN 总线数据库工具](https://awesomerea.org/zh/resources/cantools/index.md) · 工具
- [inspectrum 无线电信号分析工具](https://awesomerea.org/zh/resources/inspectrum/index.md) · 工具
- [PULSAR 协议学习研究原型](https://awesomerea.org/zh/resources/pulsar/index.md) · 工具
- [CanLab CAN 总线逆向分析工作站](https://awesomerea.org/zh/resources/canlab/index.md) · 工具
- [Facedancer USB 设备仿真与代理库](https://awesomerea.org/zh/resources/facedancer/index.md) · 工具

## 关于此条目

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