CVE-2022-24771: Improper Verification of Cryptographic Signature in node-forge
Impact
RSA PKCS#1 v1.5 signature verification code is lenient in checking the digest algorithm structure. This can allow a crafted structure that steals padding bytes and uses unchecked portion of the PKCS#1 encoded message to forge a signature when a low public exponent is being used.
Patches
The issue has been addressed in node-forge 1.3.0.
References
For more information, please see "Bleichenbacher's RSA signature forgery based on implementation error" by Hal Finney.
For more information
If you have any questions or comments about this advisory: Open an issue in forge Email us at example email address
Other sources
A flaw was found in the node-forge package. This signature verification leniency allows an attacker to forge a signature.
Forge (also called node-forge) is a native implementation of Transport Layer Security in JavaScript. Prior to version 1.3.0, RSA PKCS#1 v1.5 signature verification code is lenient in checking the digest algorithm structure. This can allow a crafted structure that steals padding bytes and uses unchecked portion of the PKCS#1 encoded message to forge a signature when a low public exponent is being used. The issue has been addressed in node-forge version 1.3.0. There are currently no known workarounds.
Affected Software
Remediation
Event History
Parent advisories
This vulnerability appears in the following advisories.
Frequently Asked Questions
What is the severity of CVE-2022-24771?
CVE-2022-24771 has a severity rating that may lead to serious security implications if exploited due to forgery capabilities.
How do I fix CVE-2022-24771?
To fix CVE-2022-24771, upgrade the Digitalbazaar Forge library to version 1.3.0 or later.
What software is affected by CVE-2022-24771?
CVE-2022-24771 affects the Digitalbazaar Forge library versions prior to 1.3.0.
What does CVE-2022-24771 exploit?
CVE-2022-24771 exploits leniency in digest algorithm structure checks during RSA PKCS#1 v1.5 signature verification.
Is CVE-2022-24771 a remote vulnerability?
CVE-2022-24771 is considered a local vulnerability that could be exploited in scenarios where the affected library is used.