Hacker21-punk/pqscan

GitHub: Hacker21-punk/pqscan

PQScan 是一款后量子密码学漏洞扫描器,帮助组织发现当前系统中将被量子计算机破解的经典加密算法并规划迁移。

Stars: 1 | Forks: 0

# 🔬 PQScan ### 后量子密码学漏洞扫描器 **在量子计算机之前发现它。** [![Go 版本](https://img.shields.io/badge/Go-1.25+-00ADD8?style=flat-square&logo=go)](https://golang.org) [![许可证](https://img.shields.io/badge/License-Apache%202.0-blue?style=flat-square)](LICENSE) [![NIST PQC](https://img.shields.io/badge/NIST-FIPS%20203%2F204%2F205-blue?style=flat-square)](https://csrc.nist.gov/projects/post-quantum-cryptography) [![CNSA 2.0](https://img.shields.io/badge/NSA-CNSA%202.0-red?style=flat-square)](https://media.defense.gov/2022/Sep/07/2003071834/-1/-1/0/CSA_CNSA_2.0_ALGORITHMS_.PDF) [功能](#features) · [安装说明](#installation) PQScan Terminal Output
## 问题所在 您的服务器今天协商的每一个 RSA 密钥、每一个 ECDSA 证书、以及每一次 Diffie-Hellman 密钥交换,都将被运行 [Shor 算法](https://en.wikipedia.org/wiki/Shor%27s_algorithm)且具备密码学相关性的量子计算机**完全破解**。 **官方 CNSA 2.0 时间表(NSA 指南):** | 年份 / 里程碑 | 受影响类别 | 要求 | |------------------|-------------------|-------------| | **2025** | 软件/固件签名 | 开始向后量子签名(ML-DSA / LMS / XMSS)过渡 | | **2025** | Web 浏览器和服务器 | 开始向后量子密钥交换(ML-KEM)和签名过渡 | | **2026** | 传统网络设备 | 开始向后量子算法过渡 | | **2030(强制要求)** | 软件/固件签名 | 迁移必须完成;不再接受经典算法 | | **2030(强制要求)** | 传统网络设备 | 迁移必须完成;不再接受经典算法 | | **2033(强制要求)** | Web 浏览器和服务器 | 迁移必须完成;不再接受经典 TLS(ECDHE/RSA) | | **现在** | 所有加密网络流量 | [先收集,后解密](https://en.wikipedia.org/wiki/Harvest_now,_decrypt_later) (HNDL) 攻击正处于活跃状态 | 国家级对手**已经在记录加密流量**,以便将来解密。如果您的数据(商业机密、健康记录、财务数据、律师与客户的通信)需要保密超过 10 年,那么这种威胁**不在未来。它就在当下。** PQScan 会准确告诉您您目前处于什么状态。 ## 功能 ### 🔍 多协议扫描 | 协议 | 端口 | 检测内容 | |----------|-------|-----------| | **TLS/HTTPS** | 443, 8443, 4443 | 密码套件、密钥交换、证书 | | **SSH** | 22, 2222 | 主机密钥算法、密钥交换方法 | | **SMTP** | 25, 465, 587 | STARTTLS 升级、密码协商 | | **IMAP/POP3** | 143, 993, 110, 995 | STARTTLS、直接 TLS | | **数据库** | 5432, 3306 | PostgreSQL, MySQL TLS | | **其他** | 636, 853, 3389 | LDAPS、DNS-over-TLS、RDP | ### 🔐 完整密码枚举 - 逐一测试每个 TLS 版本(SSL 3.0, TLS 1.0–1.3) - 逐一探测 40 多种密码套件 - 测试所有密钥交换组,包括 **PQC 混合**: - X25519Kyber768Draft00 - X25519MLKEM768 - SecP256r1MLKEM768 - 检测服务器密码顺序偏好 - 识别经典的弱密码(3DES, RC4, NULL, EXPORT) ### 📜 证书链分析 - 完整的链遍历:Root CA → Intermediate → Leaf - 每一层的密钥算法和大小 - 签名算法分类 - PQC 和混合证书检测(ML-DSA, SLH-DSA, 复合签名) - OCSP、CRL、CT 日志验证 - 过期时间和有效期分析 ### 📊 输出格式 | 格式 | 标志 | 用例 | |--------|------|----------| | **CLI** | (默认) | 具有颜色编码风险级别的终端 | | **JSON** | `--format json` | CI/CD pipeline、自动化 | | **HTML** | `--format html` | 可分享的 Web 报告 | | **PDF** | `--format pdf` | 高管摘要 | | **CBOM** | `--format cbom` | CycloneDX v1.6 密码学物料清单 | | **审计 PDF** | `--audit` | 包含清除列表和路线图的 7 页 CISO 级别审计报告 | ### 🎯 CISO 审计报告 只需一条命令即可生成一份可直接提交给董事会的 PDF,包含: - **高管摘要**,附带量子风险评分(0–100) - **优先清除列表** —— 按影响排名的紧急行动 - **密码学物料清单** —— 每一个算法、证书和协议 - **迁移路线图** —— 从快速获益到全面采用 PQC 的分阶段计划 - **CNSA 2.0 合规性评估** —— 针对每一个里程碑的通过/失败判定 - **审计证明** —— 准备好签名的合规声明 ## 安装说明 ### 从源码安装(推荐) ``` git clone https://github.com/Hacker21-punk/pqscan.git cd pqscan go build -o pqscan . sudo mv pqscan /usr/local/bin/ ```
标签:EVTX分析, Go, Ruby工具, 加密, 合规检测, 后量子密码学, 密码学, 手动系统调用, 插件系统, 日志审计, 漏洞扫描器, 网络安全, 隐私保护