Live › vulnerability › CVE-2026-118781
node-forge, a JavaScript TLS and crypto library, could enter an infinite loop in its bundled modInverse routine when given a negative value or modulus. An attacker who controls the RSA public exponent passed to key generation, or a direct modInverse operand, can pin the Node.js process at full CPU and block it.
Summary written from the sources below. Check the originals before acting.
First seen by InfraStack 2026-10-29 19:26 UTC. All times on this page are UTC.
Applications that use node-forge in Node.js and pass attacker-influenced RSA public exponents into key generation or direct modInverse operands are exposed. Parsing DER, PEM, JWK, PKCS#12, X.509 or TLS data does not trigger it, so applications that only parse untrusted certificates or keys can likely skip it.
No product ranges from the sources yet.
node-forge in your lockfile, for example with npm ls node-forge.node-forge 1.4.1Each row is the first time that source carried this signal. The analyst’s rows are its own findings.
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.
This page as .md · .json · in your agent: get_signal("CVE-2026-118781")
NVD data is provided by NIST and is public domain. Posts quoted belong to their authors.