CVE-2022-3786 X.509 Email Address Variable Length Buffer Overflow
A buffer overflow in OpenSSL's X.509 name constraint checking allows attackers to cause a denial of service via malicious certificates.
- Exploited in the wild
- Not known
- Login needed
- Not needed
- Attackable
- Over the internet
- Victim action needed
- Not needed
- Fix
- Available
What is CVE-2022-3786?
CVE-2022-3786 is a high-severity memory corruption vulnerability in Fedoraproject Fedora, published on 1 Nov 2022. An attacker can exploit it over the internet without logging in, with no action from the victim.
Official description
A buffer overrun can be triggered in X.509 certificate verification, specifically in name constraint checking. Note that this occurs after certificate chain signature verification and requires either a CA to have signed a malicious certificate or for an application to continue certificate verification despite failure to construct a path to a trusted issuer. An attacker can craft a malicious email address in a certificate to overflow an arbitrary number of bytes containing the `.' character (decimal 46) on the stack. This buffer overflow could result in a crash (causing a denial of service). In a TLS client, this can be triggered by connecting to a malicious server. In a TLS server, this can be triggered if the server requests client authentication and a malicious client connects.
Weakness: CWE-120
Which versions are affected by CVE-2022-3786?
5 open source packages ship an affected version, including openssl-src, node and node-min. It affects 3 products.
| Package | Affected | Fixed in |
|---|---|---|
openssl-src crates.io | From 300.0.0 | 300.0.11 |
openssl-src crates.io | From 300.0.0 | 300.0.11 |
openssl-src crates.io | From 300.0.0 | 300.0.11 |
node Bitnami | From 18.0.0 | 18.11.0, 18.12.1, 19.0.1 |
node-min Bitnami | From 18.0.0 | 18.11.0, 18.12.1, 19.0.1 |
Products include Fedoraproject Fedora, Nodejs Node.js, Openssl Openssl.
How do I fix CVE-2022-3786?
Upgrade openssl-src to 300.0.11 or later.
Upgrade to the fixed version. Memory-safe languages, compiler hardening and fuzzing prevent most new cases. More about Memory corruption.
Is CVE-2022-3786 being exploited?
There is no known exploitation of CVE-2022-3786 in the wild and no public exploit code.
Public exploit code: 1 proofs of concept on GitHub.
Other vulnerabilities in Fedoraproject Fedora
Sources
Also known as ALPINE-CVE-2022-3786, BIT-node-2022-3786, BIT-node-min-2022-3786, CLEANSTART-2026-NT43765, CLEANSTART-2026-PY31996, DEBIAN-CVE-2022-3786 and 3 more.