Это уязвимость неконтролируемого потребления ресурсов (CWE-400), которая может привести к отказу в обслуживании (DoS). В уязвимых версиях Undici, когда включена функция interceptors.deduulate(), данные ответов на дедуплицированные запросы могут накапливаться в памяти для последующих обработчиков. Контролируемая злоумышленником или ненадежная конечная точка восходящего потока может воспользоваться этим с помощью больших или фрагментированных ответов и одновременных идентичных запросов, что приведет к высокому использованию памяти и потенциальному завершению процесса OOM.
Затронутые пользователи — это приложения, которые используют перехватчик дедупликации Undici на конечных точках, которые могут создавать большие или долгоживущие тела ответов. ИсправленияПроблема была исправлена путем изменения поведения дедупликации для потоковой передачи фрагментов ответа нижестоящим обработчикам по мере их поступления (вместо накопления всего тела), а также путем предотвращения поздней дедупликации, когда потоковая передача тела уже началась. Пользователям следует обновиться до первых официальных выпусков Undici (и Node.js, где применимо), которые включают этот патч.
Показать оригинальное описание (EN)
This is an uncontrolled resource consumption vulnerability (CWE-400) that can lead to Denial of Service (DoS). In vulnerable Undici versions, when interceptors.deduplicate() is enabled, response data for deduplicated requests could be accumulated in memory for downstream handlers. An attacker-controlled or untrusted upstream endpoint can exploit this with large/chunked responses and concurrent identical requests, causing high memory usage and potential OOM process termination. Impacted users are applications that use Undici’s deduplication interceptor against endpoints that may produce large or long-lived response bodies. PatchesThe issue has been patched by changing deduplication behavior to stream response chunks to downstream handlers as they arrive (instead of full-body accumulation), and by preventing late deduplication when body streaming has already started. Users should upgrade to the first official Undici (and Node.js, where applicable) releases that include this patch.
Характеристики атаки
Последствия
Строка CVSS v3.1
Тип уязвимости (CWE)
Уязвимые продукты 1
| Конфигурация | От (включительно) | До (исключительно) |
|---|---|---|
|
Nodejs Undici
cpe:2.3:a:nodejs:undici:*:*:*:*:*:node.js:*:*
|
7.17.0
|
7.24.0
|