Descripción
Cuando se compila con wolfSSL, curl puede validar correctamente un hash de clave pública anclada contra una clave que el par TLS no posee. Durante el handshake TLS, wolfSSL valida la conexión, pero el análisis posterior que curl hace del mismo certificado, engañado por un campo de longitud de validez manipulado, extrae y compara una clave embebida distinta, con lo que autoriza incorrectamente la clave pública anclada.
Qué hacer
Revisa si usas el producto afectado y en qué versión, y aplica la actualización o la mitigación que indique el aviso del fabricante. CISA no ha confirmado que se esté explotando; si eso cambia, esta ficha pasa a «explotada» y te avisamos en el boletín.
Versiones afectadas
- curl Afectadas: 8.22.0 a 8.22.0 · 8.21.0 a 8.21.0 · 8.20.0 a 8.20.0 · 8.19.0 a 8.19.0 · 8.18.0 a 8.18.0 · 8.17.0 a 8.17.0 · 8.16.0 a 8.16.0 · 8.15.0 a 8.15.0 · 8.14.1 a 8.14.1 · 8.14.0 a 8.14.0
Según el registro de la vulnerabilidad en CVE.org, tal como lo publicó el fabricante. Confirma tu versión exacta en el aviso del fabricante.
Referencias
- Referencia en curl.securl.se/docs/CVE-2026-87866.json
- Referencia en curl.securl.se/docs/CVE-2026-87866.html
- Referencia en hackerone.comhackerone.com/reports/3989514
Ver el texto original en inglés (CVE.org)
wolfSSL public-key pinning bypass
When built with wolfSSL, curl can successfully validate a pinned public key hash against a key the TLS peer does not possess. During the TLS handshake, wolfSSL validates the connection, but curl's subsequent re-parsing of the same certificate - tricked by a manipulated validity length field - extracts and matches a different embedded key, incorrectly authorizing the pinned public key.