CRITICAL🇬🇧 English

CVE-2026-43999

vm2: ominięcie listy dozwolonych modułów i RCE przez builtin 'module'

CVSS 9.9v3.1pub. 2026-05-13upd. 2026-06-30

Podatność w bibliotece vm2 (sandbox dla Node.js) umożliwia ominięcie mechanizmu ograniczania dostępu do wbudowanych modułów Node.js. Atakujący z dostępem do sandboxowanego kodu może uzyskać zdalne wykonanie kodu (RCE) na hoście.

Pokaż oryginał (EN)

vm2 is an open source vm/sandbox for Node.js. Prior to 3.11.0, NodeVM's builtin allowlist can be bypassed when the module builtin is allowed (including via the '*' wildcard). The module builtin exposes Node's Module._load(), which loads any module by name directly in the host context, completely bypassing vm2's builtin restriction. This allows sandboxed code to load excluded builtins like child_process and achieve remote code execution. This vulnerability is fixed in 3.11.0.

🤖 Analiza AI
Jak działa

vm2 implementuje listę dozwolonych modułów wbudowanych (builtin allowlist), jednak moduł 'module' — gdy jest dopuszczony (w tym przez użycie symbolu wieloznacznego '*') — eksponuje funkcję Node.js Module._load(). Funkcja ta ładuje dowolny moduł bezpośrednio w kontekście hosta, całkowicie pomijając restrykcje vm2. Pozwala to sandboxowanemu kodowi na załadowanie wykluczonych modułów, takich jak 'child_process', a następnie na wykonanie dowolnych poleceń systemowych.

Skutki

Atakujący może całkowicie przejąć kontrolę nad procesem Node.js hosta, w tym uzyskać dostęp do systemu plików, uruchamiać dowolne polecenia oraz eskalować atak na dalsze zasoby infrastruktury.

Mitygacja

Należy zaktualizować vm2 do wersji 3.11.0 lub nowszej, w której podatność została naprawiona.

Kogo dotyczy

vm2 w wersjach wcześniejszych niż 3.11.0

Uwagi

Podatność zgłoszona i naprawiona w ramach oficjalnego security advisory repozytorium GitHub projektu vm2.

CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H
  • Vm2 Project Vm2

    APP
    Vm2 Project
    < 3.11.0
🔵
ZWERYFIKUJ U PRODUCENTA
Brak jednoznacznych danych o patchu. Sprawdź referencje od producenta.
Tagi
RCE
CWE
Referencje

Powiązane podatności

CVE-2026-44006CRITICAL10.0PL ✓ten sam produkt

vm2 (Node.js): ucieczka z sandbox przez BaseHandler.getPrototypeOf (RCE)

CVE-2026-44007CRITICAL9.1PL ✓ten sam produkt

vm2 (Node.js): ucieczka z sandbox przez zagnieżdżony NodeVM (RCE)

CVE-2026-43997CRITICAL10.0PL ✓ten sam produkt

Ucieczka z sandboxa w bibliotece vm2 dla Node.js (RCE)

CVE-2026-44005CRITICAL10.0PL ✓ten sam produkt

vm2: mutacja prototypów hosta z poziomu sandbox (prototype pollution)

CVE-2026-44008CRITICAL9.8PL ✓ten sam produkt

Ucieczka z sandboxu vm2 poprzez getter na prototypie tablicy