libcurl 中修补的最古老安全漏洞——隐藏超过25年未被发现。
CVE-2026-8932 是 libcurl 中的一个安全漏洞,该库可能在双向 TLS(mTLS) 客户端认证设置更改后错误地重用现有 TLS 连接。
由于某些私钥相关选项未被纳入 libcurl 的连接匹配逻辑,即使客户端证书配置已变更且应强制进行新的 TLS 握手,现有已验证连接仍可能被重用。
注意: 独立 curl 命令行工具不受影响。仅嵌入 libcurl 的应用程序存在漏洞。
当 libcurl 评估现有 TLS 连接是否可以重用时,会比较多个 SSL 参数。
然而,某些mTLS 私钥配置选项被排除在此比较之外。
因此:
可能导致的后果包括:
虽然利用需要特定的应用程序行为,但高度依赖双向 TLS 认证的环境应立即更新。
| 版本 | 状态 |
|---|---|
| 7.7 | ❌ 受影响 |
| 7.x | ❌ 受影响 |
| 8.0.x | ❌ 受影响 |
| 8.20.0 | ❌ 受影响 |
| 8.21.0+ | ✅ 已修复 |
Application
│
▼
Creates TLS connection
│
▼
Authenticates with Client Certificate A
│
▼
Application switches to Certificate B
│
▼
libcurl incorrectly reuses old TLS connection
│
▼
Certificate A remains in use
│
▼
Authentication mismatch
不同于内存损坏漏洞,此问题影响控制 TLS 连接重用的逻辑。
应用程序在更改客户端凭据后期望建立新的认证会话,却可能不知不觉地继续使用旧会话,从而可能突破认证边界。
该漏洞之所以引人注目,是因为:
保持修补 • 保持安全 • 负责任地快乐黑客
| 属性 | 值 |
|---|
| CVE | CVE-2026-8932 |
| 组件 | libcurl |
| 类型 | 不完整的连接匹配 |
| CWE | CWE-305(认证绕过) |
| 严重性 | 低 |
| 受影响版本 | 7.7 – 8.20.0 |
| 修复版本 | 8.21.0 |