CVEvulnerability

CVE-2026-118781

2.9 LOW EPSS 0.12% Published 2026-10-29 Modified 2026-10-30 Official page ↗

Exploitation and prioritisation

EPSS
0.12% chance of exploitation in the next 30 days · in the top 98.2% of all CVEs (2026-11-03)
CISA SSVC: exploitation
none
CISA SSVC: automatable
no
CISA SSVC: technical impact
partial
EU Vulnerability Database
EUVD-2026-113339

Affected packages

EcosystemPackageVulnerableFixed inAdvisory
npmnode-forge< 1.4.11.4.1GHSA-h6cr-wjv9-3cpp
Status
Undergoing Analysis
Published
2026-10-29
Last modified
2026-10-30
Assigner
[email protected]
CVSS 3.1 ([email protected])
2.9 LOW — CVSS:3.1/AV:L/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:L
Weaknesses
CWE-835

Description

Forge (also called node-forge) is a native implementation of Transport Layer Security in JavaScript. Prior to 1.4.1, the affected implementation used BigInteger.prototype.modInverse(), bnModInverse(), lib/jsbn.js, RSA public exponent e to process the relevant input or security decision. node-forge's bundled jsbn implementation entered an infinite loop when BigInteger.prototype.modInverse() received a negative value or modulus. An attacker who could control the RSA public exponent passed to key generation, or a direct modInverse() operand, could block the Node.js event loop at full CPU. Parsed DER, PEM, JWK, PKCS#12, X.509, and TLS values are unsigned and cannot trigger this issue. This issue is fixed in version 1.4.1.

Related

Weakness · CWE (1)

  • CWE-835 Loop with Unreachable Exit Condition weakness

Referenced by GitHub Advisory · alias (1)

  • GHSA-h6cr-wjv9-3cpp Forge: Denial of Service via infinite loop in BigInteger.modInverse() with negative input (incomplete fix of CVE-2026-33891) advisory · npm

References