CVE-2025-13034CVE-2025-13034是libcurl和curl工具中的一个安全绕过漏洞。当使用CURLOPT_PINNEDPUBLICKEY选项(libcurl)或--pinnedpubkey参数(curl工具)时,curl应该检查服务器证书的公钥以验证对等方的身份。然而,在特定条件下,此检查被跳过,导致curl允许连接而不执行正确的验证,从而无法发现可能的冒充者。该漏洞的触发条件包括:使用QUIC协议连接、ngtcp2使用GnuTLS构建、用户显式禁用标准证书验证。攻击者可利用此漏洞在特定配置下绕过公钥固定校验,冒充合法的服务器端点,窃取敏感数据或进行中间人攻击。
libcurl的CURLOPT_PINNEDPUBLICKEY功能旨在通过比较服务器证书公钥与预先存储的公钥来确保连接的可信性。然而,当满足以下三个条件时,公钥校验逻辑会被绕过:(1) 使用QUIC协议(通过ngtcp2)建立连接;(2) ngtcp2使用GnuTLS库构建;(3) 用户通过CURLOPT_SSL_VERIFYPEER设置为0显式禁用了标准证书验证。在这种情况下,curl会跳过公钥固定检查,直接允许连接。攻击者可以在同一QUIC连接上伪装成目标服务器,诱导客户端连接至恶意端点。由于缺少公钥校验,客户端无法识别服务器身份被伪造,从而导致敏感数据传输至攻击者控制的服务器。