Live › vulnerability › CVE-2026-119190
node-forge parses deprecated extension OIDs 2.5.29.10 and 2.5.29.13 as basicConstraints, and its certificate chain check uses the first one it finds. A certificate holder can place a permissive deprecated extension ahead of the real basicConstraints, so the chain is accepted as a CA and can issue certificates for arbitrary names, enabling server or client impersonation.
Summary written from the sources below. Check the originals before acting.
First seen by InfraStack 2026-10-29 20:26 UTC. All times on this page are UTC.
Applications that use node-forge's pki.verifyCertificateChain() to validate certificates from a CA they trust, and that could receive certificates from a CA that copies extensions from signing requests. The risk depends on a trusted CA issuing a certificate with an attacker-supplied deprecated-OID extension, so applications with a private, fully controlled CA are less exposed. Projects that do not use node-forge for certificate chain validation can skip it.
No product ranges from the sources yet.
node-forge appears in your lockfiles, for example npm ls node-forgenpm ls node-forge or node -p "require('node-forge/package.json').version", and compare it to 1.4.1pki.verifyCertificateChain() in code that trusts certificates issued by a CA your application controls or does not fully trustnode-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, node-forge parsed deprecated extension OIDs 2.5.29.10 and 2.5.29.13 as basicConstraints, and pki.verifyCertificateChain() used the first extension with that name. Exploitation requires a CA trusted by the application to issue a certificate carrying an attacker-supplied deprecated-OID extension, commonly because the CA copies extensions from a certificate signing request. By placing a permissive deprecated extension before the genuine 2.5.29.19 basicConstraints extension, the certificate holder could have the certificate accepted as a CA and issue certificates for arbitrary names, enabling server or client impersonation. If the issuing CA adds a keyUsage extension without keyCertSign, node-forge rejects the chain. This issue is fixed in version 1.4.1.
This page as .md · .json · in your agent: get_signal("CVE-2026-119190")
NVD data is provided by NIST and is public domain. Posts quoted belong to their authors.