Skip to content

协议与密码套件

证书层检查之外,TLS 协议层本身的配置同样决定安全性。这一组能力关注:握手出了什么版本、什么套件、能不能前向保密、能不能恢复会话。

命令一览

命令作用
scan-protocols <domain>探测支持的 TLS 版本(1.0/1.1/1.2/1.3)
scan-ciphers <domain>探测支持的密码套件(安全/弱)
check-pfs <domain>前向保密支持(ECDHE/DHE)
check-session-resumption <domain>会话恢复(Session ID / RFC 5077 Ticket)
check-wildcard <domain>泛解析证书模式与风险

TLS 握手里这一组在看什么

协议层 vs 证书层

证书层(scan-cert-security 的前 12 项)只看证书这个数据结构;本页这组能力看的是握手过程——协商出的版本、套件、扩展。前者可离线,后者必须在线握手。

TLS 版本扫描

bash
cert-skills scan-protocols example.com

逐个尝试 TLS 1.0 / 1.1 / 1.2 / 1.3 协商,报告支持/不支持。判定"是否安全"的规则:

密码套件扫描

bash
cert-skills scan-ciphers example.com
cert-skills scan-ciphers example.com --tls-version 1.3

逐个探测套件,分"安全"(AES-GCM / ChaCha20)和"弱"(RC4 / 3DES / NULL / EXPORT)。--tls-version1.2/1.3 切换扫描的套件集。

前向保密:PFS

bash
cert-skills check-pfs example.com

前向保密(Perfect Forward Secrecy)保证:即使服务器私钥泄露,过去的会话密钥也无法被反推。关键在密钥交换算法:

check-pfs 列出 PFS 套件和非 PFS 套件。现代标准要求至少支持一种 ECDHE 套件。

会话恢复

bash
cert-skills check-session-resumption example.com

TLS 会话恢复让客户端复用之前的协商结果,省一次完整握手。两种机制:

机制规范原理
Session IDRFC 5077 前服务器存会话状态,客户端带 ID 复用
Session TicketRFC 5077服务器把状态加密成 Ticket 给客户端,无状态

恢复支持提升握手性能,但需注意 Ticket 的密钥轮换管理。

泛解析证书

bash
cert-skills check-wildcard example.com

*.example.com 一张证保护所有子域,方便但有风险:

check-wildcard 分析泛解析层级、覆盖域名列表、风险等级。

与安全评分的关系

协议层结果是 analyze 评分的重要扣分来源:

协议层问题评分影响
支持 TLS 1.0/1.1High (−20)
弱套件 RC4/3DES/NULLHigh (−20)
无 PFS 套件计入 TLS 检查
缺 OCSP StaplingLow (−5)
缺 HSTSMedium (−10)

下一步