CVE-2026-50721
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Summary
Libreswan, via the function RSA_authenticate_hash_signature_raw_rsa(), did not correctly verify the length of the authentication hash when the SIG payload of an IKEv1 packet was encoded using PKCS #1 RSA Encryption as per RFC 2313. A remote attacker can use a variation on the Bleichenbacher attack to forge the SIG payload when small public exponents are being used (e.g., e=3), which could lead to impersonation. Additionally, a remote attacker, by encoding a shorter than expected hash in the SIG payload, could trigger an assertion leading to denial-of-service. The daemon aborts and restarts; continued exploitation causes sustained denial of service. Remote code execution is not possible. X.509 certificate verifications of remote IKE peers are not affected.
Affected Software
| Vendor | Product | Version Range | Status |
|---|---|---|---|
| The Libreswan Project | libreswan | 0 <= 5.3 | affected |
| The Libreswan Project | libreswan | 5.3.1 | unaffected |
Weaknesses
- CWE-347: CWE-347: Improper Verification of Cryptographic Signature
- CWE-617: CWE-617: Reachable Assertion
Workarounds
IKEv1 only supports RSA-SHA1 (PKCS#1 Version 1.5) with public key authentication, so there is no way to disable the vulnerable code path within IKEv1. Migrate IKEv1 connections to IKEv2 where authby=ecdsa or authby=rsa-sha2 can be configured. For static tunnel configurations (not Remote Access VPN Client groups), authentication can be changed to use PSK via authby=secret after coordination with the remote peer.
References
- https://libreswan.org/security/CVE-2026-50721/CVE-2026-50721.txt
- https://libreswan.org/security/CVE-2026-50721/
- https://libreswan.org/security/CVE-2026-50722/CVE-2026-50722.txt
- https://www.rfc-editor.org/rfc/rfc2313
Feedback
Was this page helpful?
Glad to hear it! Please tell us how we can improve.
Sorry to hear that. Please tell us how we can improve.