stream-json: pick/ignore/filter/replace filters are O(depth²) on nested input — small crafted JSON blocks the event loop for seconds→minutes (DoS)
Published Sep 3, 2026
6.2
MEDIUMCVSS 3.1
EPSS 0.16%
Description
stream-json is a micro-library of stream components for processing JSON and JSONC with a minimal memory footprint. Prior to 3.5.0, the path filters pick, ignore, filter, and replace in src/core/filters/filter-base.js recompute the full path string from the nesting stack for every checkable token. Because the stack length equals the current nesting depth and a checkable token is emitted at every level, a depth D document costs O(D²) rather than O(D) to process. The issue is triggered by nesting depth rather than byte volume, including the documented pick({filter: 'data'}) traversal-until-match path, so an application that sends untrusted JSON through a string or RegExp filter can block the Node.js event loop and cause denial of service with a small deeply nested document. The streamArray, streamObject, and streamValues streamers are not affected because they use the constant-time asm.depth getter. This issue is fixed in version 3.5.0.
Affected products
-
- Version < 3.5.0StatusaffectedConstraints-
- Version
Default status is the baseline for the product, each version can override it (e.g. patched versions marked unaffected).
| Vendor | Product | Default status | Versions | ||||||
|---|---|---|---|---|---|---|---|---|---|
| Uhop | Stream-Json | n/a |
|
No data.
No data.
Red Hat Build of Podman Desktop
rh-podman-desktop.git
Fix deferred
| Product | Package | State | Advisory |
|---|---|---|---|
| Red Hat Build of Podman Desktop | rh-podman-desktop.git | Fix deferred | n/a |
stream-json
npm
Introduced 0 Fixed 3.5.0
| Ecosystem | Package | Introduced | Fixed |
|---|---|---|---|
| npm | stream-json | 0 | 3.5.0 |
Remediation
No remediation recorded yet.
Metrics
No CVSS v4.0 score for this CVE.
CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
No CVSS v3.0 score for this CVE.
No CVSS v2.0 score for this CVE.
This CVE is not in the KEV list.
CISA SSVC (Vulnrichment)
Stakeholder-Specific Vulnerability Categorization from CISA ADP.
Exploitation
PoCAutomatable
NoTechnical Impact
PartialDecision
n/aAssessed Sep 4, 2026 · SSVC 2.0.3
Estimated probability of exploitation in the wild in the next 30 days (FIRST EPSS). As of Oct 1, 2026.
Score over time
Sep–Oct 2026- EPSS v5
Percentile over time
- EPSS v5
Table of values (2 key points)
Flat stretches are collapsed; showing up to 120 newest points.
| Date | Score | Percentile | Model |
|---|---|---|---|
| Oct 1, 2026 | 0.16% (0.00160) | 4.57th | v5 (v2026.06.15) |
| Sep 4, 2026 | 0.11% (0.00112) | 1.52th | v5 (v2026.06.15) |
References (7)
- https://access.redhat.com/security/cve/CVE-2026-71429 Vendor Advisory
- https://bugzilla.redhat.com/show_bug.cgi?id=2528227 Issue Tracking
- https://github.com/advisories/GHSA-528h-pc64-c93x Advisory
- https://github.com/uhop/stream-json/commit/a869fb98aaef9225556f49901a8f55954ff856e6 x_refsource_MISC
- https://github.com/uhop/stream-json/security/advisories/GHSA-528h-pc64-c93x exploitx_refsource_CONFIRM
- https://nvd.nist.gov/vuln/detail/CVE-2026-71429
- https://www.cve.org/CVERecord?id=CVE-2026-71429
| Link | Providers | Tags |
|---|---|---|
| https://access.redhat.com/security/cve/CVE-2026-71429 | Vendor Advisory | |
| https://bugzilla.redhat.com/show_bug.cgi?id=2528227 | Issue Tracking | |
| https://github.com/advisories/GHSA-528h-pc64-c93x | Advisory | |
| https://github.com/uhop/stream-json/commit/a869fb98aaef9225556f49901a8f55954ff856e6 | x_refsource_MISC | |
| https://github.com/uhop/stream-json/security/advisories/GHSA-528h-pc64-c93x | exploitx_refsource_CONFIRM | |
| https://nvd.nist.gov/vuln/detail/CVE-2026-71429 | ||
| https://www.cve.org/CVERecord?id=CVE-2026-71429 |
Change history (0)
No recorded changes yet.