p PatchFirst

CVE-2026-14957

CVE-2026-14957 · FIPS mode assertion failure via malicious CERT payload

This page contains facts from public vulnerability sources. Check the original advisory before updating.

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 7.5 · High · EPSS 0.5% · Fix available

Published
Updated

Stack: system

Affected products and versions

  • libreswan

    Versions
    • ≥ 3.0, ≤ 5.3.1: Affected (semver)
    • 5.3.2: Not affected (semver)

    No fix published

  • libreswan Debian:12

    Versions
    • 4.10-2
    • 4.10-2+deb12u1
    • 4.11-1
    • 4.12-1
    • 4.12-2
    • 4.12-3
    • 4.14-1
    • 4.14-1.1
    • 4.15-1
    • 5.0~rc2-1
    • 5.0~rc2-2
    • 5.2-1
    • 5.2-2
    • 5.2-2.1
    • 5.2-2.2
    • 5.2-2.3
    • 5.2-2.4
    • 5.2-2.5
    Affected ranges
    • ECOSYSTEM: (−∞, +∞)

    No fix published

  • libreswan Debian:13

    Versions
    • 5.2-2.2
    • 5.2-2.3
    • 5.2-2.4
    • 5.2-2.5
    Affected ranges
    • ECOSYSTEM: (−∞, +∞)

    No fix published

  • libreswan Debian:14

    Versions
    • 5.2-2.2
    • 5.2-2.3
    • 5.2-2.4
    Affected ranges
    • ECOSYSTEM: < 5.2-2.5

    Update to 5.2-2.5

  • libreswan Ubuntu:18.04:LTS

    Versions
    • 3.20-7build1
    • 3.21-2
    • 3.22-1
    • 3.22-2
    • 3.22-3
    • 3.22-4
    • 3.23-1
    • 3.23-4
    Affected ranges
    • ECOSYSTEM: (−∞, +∞)

    No fix published

  • libreswan Ubuntu:20.04:LTS

    Versions
    • 3.29-2
    • 3.29-2build1
    Affected ranges
    • ECOSYSTEM: (−∞, +∞)

    No fix published

  • libreswan Ubuntu:22.04:LTS

    Versions
    • 3.32-3ubuntu3
    Affected ranges
    • ECOSYSTEM: (−∞, +∞)

    No fix published

  • libreswan Ubuntu:24.04:LTS

    Versions
    • 4.11-1ubuntu1
    • 4.12-1ubuntu1
    • 4.14-1ubuntu1
    • 4.14-1ubuntu2
    Affected ranges
    • ECOSYSTEM: (−∞, +∞)

    No fix published

  • libreswan Ubuntu:26.10

    Versions
    • 5.2-2.2ubuntu2
    Affected ranges
    • ECOSYSTEM: (−∞, +∞)

    No fix published

  • libreswan Ubuntu:26.04:LTS

    Versions
    • 5.2-2.2ubuntu1
    • 5.2-2.2ubuntu2
    Affected ranges
    • ECOSYSTEM: (−∞, +∞)

    No fix published

Original sources

Check your server →