9.9 CRITICAL
- CVSS version (CVSS): 3.1
- Attack Vector (AV): Network (N)
- Attack Complexity (AC): Low (L)
- Privileges Required (PR): Low (L)
- User Interaction (UI): None (N)
- Scope (S): Changed (C)
- Confidentiality (C): High (H)
- Integrity (I): High (H)
- Availability (A): High (H)
- Modified Attack Vector (MAV): Network (N)
- Modified Attack Complexity (MAC): Low (L)
- Modified Privileges Required (MPR): Low (L)
- Modified User Interaction (MUI): None (N)
- Modified Confidentiality (MC): High (H)
- Modified Scope (MS): Changed (C)
- Modified Integrity (MI): High (H)
- Modified Availability (MA): High (H)
Activity log
- Created suggestion
vm2: NodeVM builtin allowlist bypass via `module` builtin's `Module._load` allows sandbox escape
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.
References
-
https://github.com/patriksimek/vm2/security/advisories/GHSA-947f-4v7f-x2v8 x_refsource_CONFIRM
Affected products
- ==< 3.11.0
Matching in nixpkgs
pkgs.lvm2
Tools to support Logical Volume Management (LVM) on Linux
pkgs.lvm2_vdo
Tools to support Logical Volume Management (LVM) on Linux
pkgs.lvm2_dmeventd
Tools to support Logical Volume Management (LVM) on Linux
pkgs.docker-machine-kvm2
KVM2 driver for docker-machine
-
nixos-25.11 kvm2-1.37.0
- nixos-25.11-small kvm2-1.37.0
- nixpkgs-25.11-darwin kvm2-1.37.0
Package maintainers
-
@7c6f434c Michael Raskin <7c6f434c@mail.ru>
-
@ajs124 Andreas Schrägle <nix@ajs124.de>
-
@AtkinsChang Atkins Chang <atkinschang+nixpkgs@gmail.com>
-
@tadfisher Tad Fisher <tadfisher@gmail.com>