Buffer Overflow Affecting cryptography package, versions [35.0.0,38.0.3)
Threat Intelligence
Do your applications use this vulnerable package?
In a few clicks we can analyze your entire application and see what components are vulnerable in your application, and suggest you quick fixes.
Test your applications- Snyk ID SNYK-PYTHON-CRYPTOGRAPHY-3112180
- published 30 Oct 2022
- disclosed 28 Oct 2022
- credit Paul Dale
Introduced: 28 Oct 2022
CVE-2022-3602 Open this link in a new tabHow to fix?
Upgrade cryptography
to version 38.0.3 or higher.
Overview
Affected versions of this package are vulnerable to Buffer Overflow. A buffer overrun can be triggered in X.509 certificate verification, specifically in name constraint checking by the ossl_punycode_decode
function.
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.
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.
A full break down of this vulnerability can be found in our technical deep dive.
Note: 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.
Changelog
November 1, 2022 - Advisory published.
November 2, 2022 - Node.js listed as affected, in advance of fix.
November 5, 2022 - Node.js fixed versions added.