CVE-2022-3602: OpenSSL3 CVE-2022-3602 CVE-2022-3786 vulnerabilities
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 the malicious certificate or for the application to continue certificate verification despite failure to construct a path to a trusted issuer. An attacker can craft a malicious email address to overflow four attacker-controlled bytes on the stack. This buffer overflow could result in a crash (causing a denial of service) or potentially remote code execution.
Many platforms implement stack overflow protections which would mitigate against the risk of remote code execution. The risk may be further mitigated based on stack layout for any given platform/compiler.
Pre-announcements of CVE-2022-3602 described this issue as CRITICAL. Further analysis based on some of the mitigating factors described above have led this to be downgraded to HIGH. Users are still encouraged to upgrade to a new version as soon as possible.
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.
Other sources
OpenSSL is vulnerable to a stack-based buffer overflow, caused by improper bounds checking during X.509 certificate verification. By using a specially-crafted email address, a remote attacker could overflow a buffer and execute arbitrary code or cause the application to crash.
— IBM
Affected Software
Event History
Frequently Asked Questions
What is the severity of CVE-2022-3602?
The severity of CVE-2022-3602 is critical with a CVSS score of 9.8.
Which software is affected by CVE-2022-3602?
CVE-2022-3602 affects the rust/openssl-src package with versions between 300.0.0 and 300.0.11.
How can CVE-2022-3602 be exploited?
CVE-2022-3602 can be exploited by triggering a buffer overrun in X.509 certificate verification during name constraint checking.
What is the Common Weakness Enumeration (CWE) ID for CVE-2022-3602?
CVE-2022-3602 has a Common Weakness Enumeration (CWE) ID of 119, 120, and 787.
Where can I find more information about CVE-2022-3602?
More information about CVE-2022-3602 can be found in the following references: [GitHub Advisory](https://github.com/rustsec/advisory-db/pull/1452), [Commit on GitHub](https://github.com/alexcrichton/openssl-src-rs/commit/4a31c14f31e1a08c18893a37e304dd1dd4b7daa3), [RustSec Advisory](https://rustsec.org/advisories/RUSTSEC-2022-0064.html).