Forge: ASN.1 resource exhaustion via BIT STRING decoding in asn1.fromDer (digitalbazaar forge)
At a glance
- Source
- NVD
- EPSS
- EPSS 0.43 % · percentile 37 ()
- State
- PUBLISHED
- Published
- Updated
- Assigner
- GitHub_M
- NVD status
- Analyzed
Description
Forge (also called node-forge) is a native implementation of Transport Layer Security in JavaScript. Prior to 1.4.1, the affected implementation used asn1.fromDer(), BIT STRING decoding, maxDepth to process the relevant input or security decision. node-forge decoded ASN.1 stored inside BIT STRING values without consistently applying the configured maxDepth limit and recursively retained copies at each nesting level. Crafted DER containing nested BIT STRINGs could cause excessive recursion, CPU use, and quadratic memory consumption during asn1.fromDer(). This issue is fixed in version 1.4.1.
Weaknesses (CWE)
References
- https://github.com/digitalbazaar/forge/security/advisories/GHSA-rhr8-3pm8-cq29
- https://github.com/digitalbazaar/forge/commit/24035c181f41885ea3ec7279e6c0fcf270b6ec4b
- https://github.com/digitalbazaar/forge/commit/523c8e74c28457daeff044230dce4a36313c5ab7
- https://github.com/digitalbazaar/forge/releases/tag/v1.4.1
Scores
| Version | Score | Vector | Scored by |
|---|---|---|---|
| CVSS 3.1 | HIGH 7.5 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H | GitHub_M |
| CVSS 3.1 | HIGH 7.5 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H | NVD · security-advisories@github.com (Secondary) |
European references
- ENISA EUVD · EUVD-2026-113348
- GCVE · GCVE-0-2026-119191
Affected configurations (NVD CPE)
cpe:2.3:a:digitalbazaar:forge:*:*:*:*:*:*:*:*< 1.4.1
Affected products
| Product | Versions |
|---|---|
| digitalbazaar · forge | affected < 1.4.1 |
Sources
| Source | Licence |
|---|---|
| CVE List (CVEProject cvelistV5) | CVE Program Terms of Use |
| EPSS (FIRST.org) | FIRST — attribution requested |
| ENISA EUVD | ENISA — reproduction authorised, source acknowledged |
| NVD (NIST) via fkie-cad/nvd-json-data-feeds | Public domain — this product uses data from the NVD API but is not endorsed or certified by the NVD |