首页/安全/加密与证书速查/CBC 套件退场与 MAC-then-Encrypt 风险
本包目录(305 条)
加密算法基础95 条
TLS 与 HTTPS60 条
证书与 PKI30 条OpenSSL 实战30 条证书运维排查49 条密钥管理41 条

CBC 套件退场与 MAC-then-Encrypt 风险

TLS 1.2 的 CBC 套件因填充与时序问题反复出现攻击(如 Lucky13、POODLE),运维做法是只保留 AEAD 套件,并把协议基线保持在 1.2 及以上。

加密与证书速查安全更新于 2026-10-12
问题根源MAC-then-Encrypt 结构加 CBC 填充可被探测,形成 padding oracle 类攻击面
TLS 1.3移除全部 CBC 套件,仅保留 AEAD
1.2 处置ssl_ciphers 白名单只保留 ECDHE 与 AEAD 组合
验证用 s_client 逐版本确认协商结果中不含 CBC 套件

检查是否仍协商到 CBC

检查是否仍协商到 CBC
openssl s_client -connect example.com:443 -tls1_2 -cipher 'AES128-SHA' </dev/null 2>&1 | grep -E 'Cipher|alert|error' | head -3
openssl s_client -connect example.com:443 -tls1_2 </dev/null 2>&1 | grep 'Cipher is'
遗留客户端只支持 CBC 组合时,常见替代方案是给这些客户端单独入口或升级客户端,而不是让主站整体降级。

易错点

  • 以为禁用 3DES 就等于排除 CBC(AES-CBC 套件仍在列表内)
  • 直接沿用旧配置模板,导致 CBC 甚至 RC4 仍在启用

数据来源与参考

  • RFC 8446 §1.2(相对 1.2 的主要差异,移除 CBC)
  • RFC 7457(已知攻击与缓解)
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌