CVE-2026-44724
WysokieCVSS 7.8Prawdopodobieństwo exploitacji (EPSS)
Podwyższone ryzykoPercentyl 56 - wyżej niż 56% wszystkich znanych CVE
Streszczenie
Biblioteka systeminformation dla Node.js w wersjach od 4.17.0 do 5.31.5 zawiera podatność na wstrzyknięcie poleceń w funkcji networkInterfaces() na systemie Linux. Problem występuje, gdy aktywna nazwa profilu połączenia Network Managera zawiera znaki specjalne powłoki, które nie są odpowiednio sanityzowane przed użyciem w poleceniach powłoki.
Ocena ryzyka
Atakujący może wykorzystać tę podatność do wykonania dowolnych poleceń systemowych z uprawnieniami procesu Node.js, co może prowadzić do przejęcia kontroli nad serwerem lub wycieku danych.
Rekomendacja
Należy natychmiast zaktualizować bibliotekę systeminformation do wersji 5.31.6 lub nowszej, która zawiera poprawkę usuwającą podatność.
Inne podatności w systeminformation
Zobacz wszystkie- CVE-2021-21315WysokieAktywnie exploitowane
Biblioteka systeminformation dla Node.js w wersji przed 5.3.1 zawiera podatność na wstrzyknięcie poleceń. Problem został naprawiony w wersji 5.3.1.
- CVE-2026-116674Średnie
W bibliotece systeminformation funkcja networkStats(ifaces) w lib/network.js na systemach FreeBSD, OpenBSD i NetBSD przechowuje dane interfejsów w obiekcie _network i indeksuje je oczyszczoną nazwą interfejsu kontrolowaną przez wywołującego. Przekazanie wartości proto powoduje użycie odziedziczonej wartości Object.prototype zamiast utworzenia własnego wpisu, przez co calcNetworkSpeed() zapisuje właściwości rx_bytes, tx_bytes, rx_sec, tx_sec, ms, last_ms i operstate na Object.prototype. Zanieczyszczone nazwy właściwości są stałe, a wartości pochodzą ze statystyk interfejsów, ale kolizje nazw i wyliczalne klucze mogą zaburzyć logikę aplikacji, serializację, scalanie konfiguracji, walidację lub wyszukiwanie; naprawiono w wersji 5.33.13.
- CVE-2026-116673Niskie
W bibliotece systeminformation dla Node.js w wersjach przed 5.33.14 implementacja `networkStats(iface)` używa wartości interfejsu podanej przez wywołującego w sprawdzeniu `fs.existsSync()` oraz do budowania ścieżek `/sys/class/net/<iface>`, bez weryfikacji, że jest to pojedynczy segment nazwy interfejsu ani że rozwiązana ścieżka pozostaje w `/sys/class/net`. Atakujący kontrolujący parametr `iface` może wykorzystać komponenty katalogu nadrzędnego i przejście przez dowiązania symboliczne, aby uzyskać pierwszą linię pliku czytelnego dla procesu Node.js. Wymaga to lokalnej konfiguracji systemu plików; problem naprawiono w wersji 5.33.14.
- CVE-2026-116576Wysokie
W bibliotece systeminformation przed wersją 5.33.16 funkcja services() w lib/processes.js wstawia nazwę usługi podaną przez wywołującego do filtra PowerShell Get-CimInstance po oczyszczeniu przez sanitizeShellString(). Na Windows sanityzator usuwa cudzysłowy ASCII, ale dopuszcza znaki cudzysłowów Unicode akceptowane przez PowerShell, co pozwala wstrzyknąć wyrażenie PowerShell wykonane przez util.powerShell() z uprawnieniami konta procesu Node.js.
- CVE-2026-50289Wysokie
Biblioteka systeminformation dla Node.js przed wersją 5.31.7 jest podatna na wstrzyknięcie poleceń systemu operacyjnego przez funkcję networkInterfaces() na Linuksie. Problem wynika z nieprawidłowego przetwarzania dyrektywy source w plikach konfiguracyjnych sieci, co pozwala na wykonanie dowolnych poleceń.
- CVE-2026-26318Wysokie
Biblioteka systeminformation dla Node.js przed wersją 5.31.0 zawiera podatność na wstrzyknięcie poleceń przez niesanitowane dane wyjściowe funkcji `locate` w metodzie `versions()`. Atakujący może wykorzystać tę lukę do wykonania dowolnych poleceń systemowych.
- CVE-2026-26280Wysokie
Biblioteka systeminformation dla Node.js zawiera podatność na wstrzykiwanie poleceń w funkcji `wifiNetworks()`. W kodzie ponawiania skanowania sieci Wi-Fi parametr `iface` nie jest sanityzowany, co pozwala atakującemu na wykonanie dowolnych poleceń systemowych.
Oryginalny opis (angielski, źródło NVD)
systeminformation is a System and OS information library for node.js. From 4.17.0 to 5.31.5, on Linux, systeminformation is vulnerable to command injection in networkInterfaces() when an active NetworkManager connection profile name contains shell metacharacters. The vulnerable value is obtained internally from real nmcli device status output. The library sanitizes the network interface name before using it in shell commands, but it does not apply equivalent sanitization to the parsed NetworkManager connection profile name. That unsanitized connectionName is then interpolated into three shell command strings executed through execSync(). This vulnerability is fixed in 5.31.6.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

