Логотип exploitDog
Консоль
Логотип exploitDog

exploitDog

redhat логотип

CVE-2026-71429

Опубликовано: 03 сент. 2026
Источник: redhat
CVSS3: 6.2
EPSS Низкий

Описание

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.

A flaw was found in stream-json. This vulnerability allows a remote attacker to cause a Denial of Service (DoS) by providing a specially crafted, deeply nested JSON document. The library's path filters, such as pick and ignore, inefficiently process these structures, leading to excessive resource consumption and blocking the Node.js event loop.

Затронутые пакеты

ПлатформаПакетСостояниеРекомендацияРелиз
Red Hat Build of Podman Desktoprh-podman-desktop.gitFix deferred

Показывать по

Дополнительная информация

Статус:

Moderate
Дефект:
CWE-1046
https://bugzilla.redhat.com/show_bug.cgi?id=2528227stream-json: stream-json: Denial of Service due to inefficient processing of deeply nested JSON

EPSS

Процентиль: 2%
0.00112
Низкий

6.2 Medium

CVSS3

Связанные уязвимости

CVSS3: 6.2
nvd
14 дней назад

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.

CVSS3: 6.2
github
15 дней назад

stream-json: pick/ignore/filter/replace filters are O(depth²) on nested input — small crafted JSON blocks the event loop for seconds→minutes (DoS)

CVSS3: 6.2
fstec
2 месяца назад

Уязвимость библиотеки для обработки JSON и JSONC stream-json, связанная с алгоритмической сложностью, позволяющая нарушителю вызвать отказ в обслуживании

EPSS

Процентиль: 2%
0.00112
Низкий

6.2 Medium

CVSS3