makb1831/pqc_traffic_analyzer

GitHub: makb1831/pqc_traffic_analyzer

基于 Scapy 的被动网络流量分析工具,用于检测和识别 TLS 1.3 中的后量子密码学及混合密钥交换握手。

Stars: 0 | Forks: 0

# PQC 流量指纹识别工具 (`pqc-traffic-analyzer`) 一个基于 Scapy 的网络分析工具,用于解析、剖析和识别网络传输中的 TLS 1.3 后量子密码学 (PQC) 及混合密钥交换。 有关混合密钥协议和码点注册表(codepoint registry)的详细技术背景,请参阅 [Post-Quantum TLS 1.3 密钥交换机制](docs/pqc_handshake_explanation.md)。 ## 🚀 功能特性 - **离线 PCAP 审计**:解析网络捕获数据,映射密钥协议组。 - **实时握手嗅探**:实时拦截并解析 TLS Client/Server Hello 握手。 - **协议无关 (Protocol Agnostic)**:拦截原始 TCP 流量并检查 TLS 握手记录 (`0x16`),可捕获来自数据库、API (gRPC/WebSockets)、邮件客户端 (STARTTLS) 以及应用程序 (Spotify, Discord) 的流量。 - **深度元数据**:提取协商的 TLS 版本、选定的密码套件、ALPN 值以及握手延迟 (ms)。 - **实时 HTML 仪表盘**:将结果流式传输到 HTML 仪表盘,仪表盘会在嗅探过程中动态更新。 ## 📦 安装说明 1. **克隆仓库**: git clone https://github.com/makb1831/pqc-traffic-analyzer.git cd pqc-traffic-analyzer 2. **配置虚拟环境**: python3 -m venv .venv source .venv/bin/activate pip install -r requirements.txt pip install -e . ## 🛠️ 使用指南 ### 命令行选项 ``` # 分析离线 PCAP 文件 pqc-analyze -f capture.pcap # 将结果保存到报告文件(类型根据扩展名自动检测) pqc-analyze -f capture.pcap -o report.html ``` ## 🖥️ 实时仪表盘监控 要将实时捕获的数据包直接流式传输到浏览器仪表盘: 1. **启动嗅探器并重定向输出**: 在活动的网络接口(例如 `eth0`)上运行 `pqc-analyze`,并将输出指向一个 HTML 文件: sudo .venv/bin/pqc-analyze -i eth0 -o pqc_dashboard.html 2. **打开仪表盘**: 在 Web 浏览器中打开生成的 `pqc_dashboard.html` 文件。 3. **启用自动刷新**: 勾选网页右上角顶部的 **Auto-refresh (5s)** 复选框。仪表盘将每 5 秒自动重新加载一次,以加载后台 CLI 捕获到的新握手信息。 ## 🧪 分步实时捕获测试 ### 1. 配置本地 OpenSSL/Curl (WSL/Linux) ``` # 确保 docker 已安装并正在运行 sudo usermod -aG docker $USER && newgrp docker ``` ### 2. 嗅探流量并连接 1. 在一个终端中,启动实时嗅探器并将结果输出到仪表盘文件: sudo .venv/bin/pqc-analyze -i eth0 -o pqc_dashboard.html 2. 在第二个终端中,向 OQS 测试服务器发送后量子请求: # 通过 Docker 容器 (X25519MLKEM768 混合握手) docker run -it --rm openquantumsafe/curl curl -k https://test.openquantumsafe.org:6671 # 通过本地编译的 Curl (如果已配置) curl -k --curves X25519MLKEM768 https://test.openquantumsafe.org 3. 观察终端输出和正在刷新的 `pqc_dashboard.html` 页面。你将看到捕获的会话显示如下信息: `Group: X25519MLKEM768 (1120B) [TLS 1.3 / 68ms] (PQ Hybrid Key Exchange)` ## 📖 文档 有关详细的指南,请参阅 `docs` 文件夹: - [Post-Quantum TLS 1.3 密钥交换机制](docs/pqc_handshake_explanation.md) - 关于 PQC/混合曲线的理论背景。 - [架构与设计](docs/architecture.md) - 内部设计、状态机跟踪以及 TCP 数据包剖析。 - [开发者与贡献指南](docs/development.md) - 本地设置、构建 liboqs/oqs-provider 以及测试配置。 - [高级用法与嗅探指南](docs/advanced_usage.md) - 无需 root 权限进行嗅探 (`setcap`)、自定义过滤器以及 JSON 报告集成。 ## 🛡️ 许可证 MIT License。
标签:Scapy, TLS 1.3, 后量子密码学, 多模态安全, 安全测试工具, 网络流量分析, 请求拦截, 逆向工具, 防御绕过