Impact
The issue resides in the ASN.1 parsing logic used by node‑forge during RSA PKCS#1 v1.5 signature verification. The code ignores the expected element count inside nested DigestAlgorithm sequences, exposing the library to injection of malformed data. As a result, an attacker can embed garbage bytes that satisfy the parser’s expectations, allowing the construction of a forged signature that the library will accept. This flaw is classified as CWE-1284 and CWE-347, indicating improper element count validation and insufficient access control over the parsing process. A forged signature will appear authentic to any application that relies on this verification, compromising the integrity of signed data.
Affected Systems
All releases up to and including version 1.4.0 of the digitalbazaar forge JavaScript cryptography library are affected. Node.js applications that import forge via npm and perform RSA PKCS#1 v1.5 signature verification, especially those using low‑exponent RSA keys, will be vulnerable. The weakness is confined to the library and does not involve the underlying operating system or runtime.
Risk and Exploitability
The CVSS score of 8.7 classifies this vulnerability as high severity. EPSS data is not available and the issue is not listed in the CISA KEV catalog, indicating that no large‑scale exploits have been reported. Exploitation requires an attacker to supply a specially crafted signature that takes advantage of low‑exponent RSA keys; the attack can be performed remotely if the application accepts signatures from an external source. The impact is restricted to signature forgery, which can lead to unauthorized data processing or bypass of authentication checks, but does not provide direct code execution or denial of service. The likelihood of exploitation depends on the prevalence of low‑exponent keys in the target environment.
OpenCVE Enrichment