Описание
Уязвимость функции path.resolve() библиотеки vm2 пакетного менеджера NPM связана с некорректным определением символических ссылок в ходе осуществления доступа к файлу. Эксплуатация уязвимости может позволить нарушителю, действующему удаленно, обойти защитный механизм песочницы и выполнить произвольный код
Вендор
Наименование ПО
Версия ПО
Тип ПО
Операционные системы и аппаратные платформы
Уровень опасности уязвимости
Возможные меры по устранению уязвимости
Статус уязвимости
Наличие эксплойта
Информация об устранении
Ссылки на источники
Идентификаторы других систем описаний уязвимостей
- CVE
EPSS
8.5 High
CVSS3
7.1 High
CVSS2
Связанные уязвимости
vm2 is an open source vm/sandbox for Node.js. In 3.10.5, NodeVM's require.root path restriction can be bypassed using filesystem symlinks, allowing sandboxed code to load modules from outside the allowed root directory in host context. Because path validation uses path.resolve() (which does not dereference symlinks) but module loading uses Node's native require() (which does), an attacker can load arbitrary host-realm modules and achieve remote code execution. This vulnerability is fixed in 3.11.0.
vm2 is an open source vm/sandbox for Node.js. In 3.10.5, NodeVM's require.root path restriction can be bypassed using filesystem symlinks, allowing sandboxed code to load modules from outside the allowed root directory in host context. Because path validation uses path.resolve() (which does not dereference symlinks) but module loading uses Node's native require() (which does), an attacker can load arbitrary host-realm modules and achieve remote code execution. This vulnerability is fixed in 3.11.0.
vm2 has a NodeVM require.root bypass via symlink traversal that allows sandbox escape
EPSS
8.5 High
CVSS3
7.1 High
CVSS2