CVE-2026-119190
Dashboard / Vulnerabilities / CVE-2026-119190
Summary: Forge: X.509 basicConstraints bypass in verifyCertificateChain() via deprecated extension OIDs 2.5.29.10 and 2.5.29.13
Details: 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.
References: https://github.com/digitalbazaar/forge/releases/tag/v1.4.1, https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/119xxx/CVE-2026-119190.json, https://github.com/digitalbazaar/forge/security/advisories/GHSA-5x38-2vff-x55p, https://nvd.nist.gov/vuln/detail/CVE-2026-119190, https://github.com/digitalbazaar/forge/commit/58c06bc251856b409c30ecb35a93f5f6c9bbc84a
Affected packages
Package
Name:
Purl:
