Vulnerability Description
In FIPS mode, Libreswan's add_decoded_cert() function calls CERT_ExtractPublicKey() and asserts that the result is not NULL. However, CERT_ExtractPublicKey() returns NULL when public key extraction fails, for example if the RSA exponent is set to 0. A remote attacker can send a malformed X.509 certificate in a CERT payload to trigger the assertion, causing the pluto daemon to abort and restart. Continued exploitation causes a denial of service. No remote code execution is possible. Both IKEv1 and IKEv2 are affected. The vulnerability is only exploitable when both the OS and libreswan are running in FIPS mode and at least one CA certificate is loaded. The CERT payload is processed before peer authentication, so no credentials are needed to exploit this. Configurations using only PreSharedKey (PSK) authentication with no CA certificates loaded in the NSS database are not vulnerable.
CVSS Score
HIGH
Related Weaknesses (CWE)
References
- https://libreswan.org/security/CVE-2026-14957/
- https://libreswan.org/security/CVE-2026-14957/CVE-2026-14957.txt
FAQ
What is CVE-2026-14957?
CVE-2026-14957 is a vulnerability with a CVSS score of 7.5 (HIGH). In FIPS mode, Libreswan's add_decoded_cert() function calls CERT_ExtractPublicKey() and asserts that the result is not NULL. However, CERT_ExtractPublicKey() returns NULL when public key extraction fa...
How severe is CVE-2026-14957?
CVE-2026-14957 has been rated HIGH with a CVSS base score of 7.5/10. Review the CVSS metrics above for detailed severity breakdown.
Is there a patch for CVE-2026-14957?
Check the references section above for vendor advisories and patch information. Review vendor security bulletins for remediation guidance.