CRITICAL🇬🇧 English

CVE-2026-45411

Ucieczka z sandboksa vm2 przez async generator (yield*)

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

Biblioteka vm2 dla Node.js w wersjach przed 3.11.3 zawiera krytyczną podatność umożliwiającą ucieczkę z izolowanego środowiska (sandbox escape). Atakujący może wykonać dowolne polecenia na systemie hosta bez żadnego uwierzytelnienia.

Pokaż oryginał (EN)

vm2 is an open source vm/sandbox for Node.js. Prior to 3.11.3, it is possible to catch a host exception using the yield* expression inside an async generator. When the generator is closed using the return function, the value is awaited on and exceptions thrown in the then call will be caught by the runtime and passed to the yield* iterator as the next value. This allows attackers to write code which can escape from the VM2 sandbox and execute arbitrary commands on the host system. This vulnerability is fixed in 3.11.3.

🤖 Analiza AI
Jak działa

Podatność polega na możliwości przechwycenia wyjątku hosta przy użyciu wyrażenia yield* wewnątrz asynchronicznego generatora. Gdy generator jest zamykany funkcją return, zwracana wartość jest oczekiwana (awaited), a wyjątki rzucane w wywołaniu then są przechwytywane przez środowisko uruchomieniowe i przekazywane z powrotem do iteratora yield* jako kolejna wartość. Mechanizm ten pozwala na wydostanie się kodu z izolowanego kontekstu vm2 i uzyskanie dostępu do środowiska hosta. Atak nie wymaga uprawnień ani interakcji użytkownika.

Skutki

Atakujący może całkowicie opuścić izolowane środowisko vm2 (sandbox escape) i wykonać dowolny kod na systemie hosta, co prowadzi do pełnego naruszenia poufności, integralności i dostępności systemu.

Mitygacja

Należy zaktualizować bibliotekę vm2 do wersji 3.11.3 lub nowszej, w której podatność została naprawiona. Szczegóły dostępne w referencjach producenta na GitHub Security Advisories.

Kogo dotyczy

Biblioteka vm2 w wersjach wcześniejszych niż 3.11.3 dla Node.js.

Uwagi

Podatność jest tożsama klasą błędu z wcześniej zgłaszanymi problemami sandbox escape w vm2 (mechanizm async generator). Poprawka została dostarczona w wersji 3.11.3 zgodnie z informacją w opisie oryginalnym.

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

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

Powiązane podatności

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

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

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

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

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

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

CVE-2026-43999CRITICAL9.9PL ✓ten sam produkt

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

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

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