Forge: X.509 pathLenConstraint not enforced by verifyCertificateChain() for CA certificates without keyUsage (digitalbazaar forge)

CVE-2026-119189
MEDIUM 5.9

At a glance

Source
CVE.org
State
PUBLISHED
Published
Updated
Assigner
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 enforced an X.509 CA certificate's basicConstraints.pathLenConstraint only when that certificate also carried a keyUsage extension. Exploitation requires a path-length-constrained CA without keyUsage that chains to a root trusted by the application, and an attacker who holds that CA's private key or obtains a subordinate CA certificate from it. The attacker could then construct a chain exceeding the declared path length that still passed pki.verifyCertificateChain(). Public web PKI CA certificates normally include keyUsage; private PKIs with CA certificates created without it are more likely to be affected. This issue is fixed in version 1.4.1.

Weaknesses (CWE)

  • CWE-295 — Improper Certificate Validation

References

Scores

VersionScoreVectorScored by
CVSS 3.1MEDIUM 5.9CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:H/A:NGitHub_M

European references

Affected products

ProductVersions
digitalbazaar Ā· forgeaffected < 1.4.1

Sources

SourceLicence
CVE List (CVEProject cvelistV5)CVE Program Terms of Use
ENISA EUVDENISA — reproduction authorised, source acknowledged