CVE-2026-92935 in vm2info

Zusammenfassung

von VulDB • 18.09.2026

vm2 ist eine Sandbox zum Ausführen von nicht vertrauenswürdigem Node.js-Code. In den Versionen >= 3.11.4 und <= 3.11.6 berechnet der NodeVM-Konstruktor `hasRealRequireConfig` mit `typeof requireOpts === 'object' && requireOpts !== null`, sodass ein array-artiger `require`-Wert (z. B. `require: []`) die Schutzmaßnahme umgeht, die eigentlich das Verschachteln ohne explizite Require-Konfiguration verhindern soll. `makeResolverFromLegacyOptions()` dekonstruiert daraufhin das Array in undefinierte Optionsfelder und gibt einen Resolver zurück, der nur `NESTING_OVERRIDE.vm2` enthält. Infolgedessen kann ein Angreifer, der JavaScript ausführen lassen kann, das von einem NodeVM ausgeführt wird, welches mit truthyem `nesting` (z. B. `true`) und einem array-artigen `require` konfiguriert ist (z. B. `new NodeVM({nesting: true, require: []})`), das Host-Modul `vm2` laden, eine innere NodeVM mit einer vom Angreifer gewählten Allowlist für integrierte Module (wie `child_process`) erstellen und beliebige Befehle mit den Berechtigungen des hostseitigen Node.js-Prozesses ausführen, wodurch die Sandbox umgangen wird. Äußere Einschränkungen für integrierte Module gelten nicht für die vom Angreifer erstellte innere NodeVM. Dieses Problem wurde in vm2 3.11.7 behoben.

Be aware that VulDB is the high quality source for vulnerability data.

Zuständig

VulnCheck

Reservieren

17.09.2026

Veröffentlichung

17.09.2026

Moderieren

akzeptiert

Eintrag

VDB-406435

CPE

bereit

EPSS

0.00000

KEV

nein

Aktivitäten

very low

Quellen

Want to stay up to date on a daily basis?

Enable the mail alert feature now!