Skip to content
OpenAdvisories
High · 7.4 CVE-2026-119190 EUVD-2026-113347GHSA-5x38-2vff-x55p

Forge: X.509 basicConstraints bypass in verifyCertificateChain() via deprecated extension OIDs 2.5.29.10 and 2.5.29.13

Published Oct 29, 2026 · Updated Oct 29, 2026 · Assigned by GitHub_M

Description

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.

Affected products

VendorProductAffectedFixed
digitalbazaar forge < 1.4.1 —

Fixed in Linux distributions

Distributions backport fixes, so the version that fixes this vulnerability differs per release — upgrade to at least the version shown. From the distributions' security trackers and advisories.

ReleasePackageFixed inAdvisory
Ubuntu 22.04 LTS node-node-forge No fix yet —
Ubuntu 20.04 LTS node-node-forge No fix yet —

Azure Linux

ReleasePackageFixed inAdvisory
Azure Linux 3 python-tensorboard No fix yet —

Wolfi

ReleasePackageFixed inAdvisory
Wolfi rolling jitsucom-jitsu-console 2.11.0-r42 —
Wolfi rolling kubeflow-centraldashboard 2.0.0-r8 —

Affected packages

EcosystemPackageAffectedFixedRecord
npm node-forge < 1.4.1 1.4.1 GHSA-5x38-2vff-x55p

References