Katalog CVE

CVE-2026-102992

KrytyczneCVSS 9.2
Opublikowano: Zaktualizowano: Przetłumaczono: NVD NIST

Streszczenie

piscina to implementacja puli wątków dla node.js. Przed wersjami 4.9.4, 5.3.2 i 6.0.0-rc.5, Piscina przechowuje ThreadPool.options w src/index.ts jako zwykły obiekt dziedziczący z Object.prototype. Aplikacje z oddzielnym prymitywem zanieczyszczenia prototypu mogą zatem dostarczać odziedziczone wartości dla opcji wrażliwych na bezpieczeństwo, które nie mają własnych wartości domyślnych. Odziedziczona wartość execArgv jest przekazywana do konstruktora Node.js Worker i może wczytywać kod kontrolowany przez atakującego w wątkach roboczych, odziedziczona funkcja loadBalancer może wykonywać się podczas planowania zadań, a odziedziczone wartości env mogą zmieniać środowiska wątków roboczych. Problem został naprawiony w wersjach 4.9.4, 5.3.2 i 6.0.0-rc.5.

Ocena ryzyka

Ryzyko obejmuje możliwość wykonania nieautoryzowanego kodu w wątkach roboczych, co może prowadzić do naruszenia integralności i poufności aplikacji.

Rekomendacja

Zaleca się aktualizację piscina do wersji 4.9.4, 5.3.2 lub 6.0.0-rc.5 (lub nowszej), które zawierają poprawkę eliminującą podatność.

Inne podatności w piscina

Oryginalny opis (angielski, źródło NVD)

piscina is a node.js worker pool implementation. Prior to 4.9.4, 5.3.2, and 6.0.0-rc.5, Piscina stores ThreadPool.options in src/index.ts as a plain object that inherits from Object.prototype. Applications with a separate prototype-pollution primitive can therefore supply inherited values for security-sensitive options that do not have own defaults. An inherited execArgv value is passed to the Node.js Worker constructor and can preload attacker-controlled code in worker threads, an inherited loadBalancer function can execute during task scheduling, and inherited env values can alter worker environments. This issue is fixed in versions 4.9.4, 5.3.2, and 6.0.0-rc.5.

Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS