Co się stało?
W sandboksie vm2 środowiska uruchomieniowego JavaScript typu open source Node.js usunięto kilka luk bezpieczeństwa. Wraz z wersją 3.11.4 deweloperzy usunęli łącznie cztery „krytyczne" podatności, z których każda otrzymała najwyższy możliwy wynik CVSS 10.0: CVE-2026-47208, CVE-2026-47137, CVE-2026-47140 oraz CVE-2026-47131. Wszystkie cztery luki to możliwości ucieczki z sandboksa, dzięki którym atakujący mogli skompromitować komputery hosta za pomocą złośliwego kodu.
Szczegóły
Sedno problemu polega na tym, że procesy process oraz inspector/promises nie znajdują się na czarnej liście Node.js. Atakujący mogli to wykorzystać do ucieczki z sandboksa. Dodatkowo można łączyć różne funkcje, aby za pomocą konstruktora TypeError uzyskać dostęp do systemu hosta.
Oprócz czterech krytycznych luk poprawka usuwa kolejną „krytyczną" podatność (CVE-2026-47210), która w kontekście WebAssembly JSPI umożliwia dodatkową ucieczkę z sandboksa. Ponadto deweloperzy usunęli trzy luki bezpieczeństwa o poziomie zagrożenia „wysoki" (CVE-2026-47139, CVE-2026-47209, CVE-2026-47135).
Dalsze szczegóły techniczne dotyczące poszczególnych podatności znajdują się w sekcji bezpieczeństwa na stronie GitHub projektu.
Klasyfikacja
vm2 od początku maja regularnie trafia na nagłówki, ponieważ atakującym wielokrotnie udawało się pokonać sandboks. Niedawno deweloperzy usunęli dwie kolejne „krytyczne" luki bezpieczeństwa (CVE-2026-26956, CVE-2026-45411). Obecne odkrycia wpisują się zatem w dłuższą serię problemów bezpieczeństwa dotyczących tego rozwiązania sandboksowego.
Dla branży techniki bezpieczeństwa ten rozwój sytuacji jest istotny, ponieważ wiele aplikacji i usług opiera się na Node.js – także w otoczeniu systemów zarządzania wideo, platform kontroli dostępu czy internetowych interfejsów zarządzania systemami alarmowymi. Skompromitowany sandboks może w najgorszym przypadku doprowadzić do tego, że atakujący przejmą kontrolę nad leżącym u podstaw systemem hosta, a tym samym potencjalnie uzyskają dostęp również do podłączonej infrastruktury bezpieczeństwa.
Wskazówki praktyczne
- Administratorzy powinni niezwłocznie zaktualizować dotknięte systemy do wersji 3.11.4, aby usunąć wskazane luki.
- Systemy wykorzystujące vm2 w połączeniu z aplikacjami Node.js powinny zostać sprawdzone pod kątem powierzchni ataku – szczególnie tam, gdzie eksploatowane są internetowe interfejsy zarządzania techniką bezpieczeństwa.
- Nawet jeśli dotychczas nie jest znane aktywne wykorzystywanie tych podatności, nie należy odkładać instalacji poprawek, ponieważ przy wartości CVSS wynoszącej 10.0 teoretyczny potencjał szkód jest maksymalny.
- Sekcję bezpieczeństwa na stronie GitHub projektu vm2 należy regularnie sprawdzać pod kątem nowych ostrzeżeń, ponieważ krytyczne luki pojawiały się już wielokrotnie w krótkich odstępach czasu.
Perspektywy
Wobec nagromadzenia krytycznych luk bezpieczeństwa od początku maja należy zakładać, że badania nad bezpieczeństwem vm2 pozostaną aktywne i mogą ujawnić kolejne podatności. Dla operatorów systemów opartych na Node.js i vm2 oznacza to, że procesy zarządzania poprawkami powinny zostać konsekwentnie ustanowione i regularnie weryfikowane. Szczegóły dotyczące ewentualnego aktywnego wykorzystywania obecnych luk nie są jeszcze znane, dlatego czujność i szybkie instalowanie poprawek pozostają obecnie najważniejszymi środkami ochrony.