VU#573195:Go、OpenSSL、Apple、Lib... 笔记

VU#573195:Go、OpenSSL、Apple、LibreSSL、pyca 和 wolfSSL 在 RFC 5280 实现中的名称约束不一致问题”

TLS 库对 X.509 名称约束存在不同的解释,导致证书接受或拒绝行为不一致。这些差异源于实现缺陷以及 RFC 5280 未充分规范的领域。具体而言,DNS 名称比较在处理大小写敏感性方面存在差异;IP 地址处理也存在不同,特别是关于 IPv4 映射的 IPv6 地址。URI 权威部分的解析在提取主机名时,若存在特定字符或组件,则表现出不一致。主体备用名称(SAN)的通配符匹配语义定义不明确,进一步导致分歧。部分问题属于明确的实现缺陷,而另一些则源于 RFC 缺乏明确的指导。这些差异的影响有限,需要同时具备受损的可信签名、易受攻击的验证路径以及使用该身份进行授权的应用程序才会显现。在如服务网格或 CDN 等混合环境中,同一证书可能遭遇不一致的证书验证。CERT/CC 正与受影响的 TLS 库项目合作以解决这些问题。需要高保证级别的运营者应测试其验证器、应用更新,并使用明确的主体备用名称。应用层的允许列表和颁发策略也有助于缓解这些差异。