Biblioteka vm2, służąca jako sandbox dla kodu Node.js, zawiera krytyczną podatność w wersjach przed 3.11.2. Umożliwia ona atakującemu wykonanie nieautoryzowanych operacji poza izolowanym środowiskiem uruchomieniowym.
▸ Pokaż oryginał (EN)
vm2 is an open source vm/sandbox for Node.js. Prior to 3.11.2, This vulnerability is fixed in 3.11.2.
Podatność sklasyfikowana jako CWE-668 (Exposure of Resource to Wrong Sphere) wskazuje na nieprawidłowe zarządzanie dostępem do zasobów w obrębie mechanizmu izolacji vm2. Kod uruchamiany wewnątrz sandboxa może uzyskać dostęp do zasobów lub kontekstu, które powinny być dla niego niedostępne. Szczegółowy mechanizm techniczny nie został ujawniony w opisie, jednak krytyczna ocena CVSS 9.8 z wektorem sieciowym bez wymaganych uprawnień i interakcji użytkownika wskazuje na poważną wadę izolacji.
Atakujący może doprowadzić do ucieczki z piaskownicy (sandbox escape), co w konsekwencji może skutkować nieautoryzowanym dostępem do poufnych danych, naruszeniem integralności systemu oraz potencjalnie pełnym przejęciem kontroli nad hostem.
Należy zaktualizować bibliotekę vm2 do wersji 3.11.2 lub nowszej, w której podatność została naprawiona. Zaleca się sprawdzenie wszystkich projektów Node.js korzystających z vm2 jako zależności i niezwłoczne zastosowanie aktualizacji.
Biblioteka vm2 dla Node.js w wersjach przed 3.11.2
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:HVm2 Project Vm2
APPVm2 Project< 3.11.2
Powiązane podatności
vm2: mutacja prototypów hosta z poziomu sandbox (prototype pollution)
vm2 (Node.js): ucieczka z sandbox przez BaseHandler.getPrototypeOf (RCE)
Ucieczka z sandboxa w bibliotece vm2 dla Node.js (RCE)
vm2: ominięcie listy dozwolonych modułów i RCE przez builtin 'module'
vm2 (Node.js): ucieczka z sandbox przez zagnieżdżony NodeVM (RCE)