PT-2026-94329 · Npm · Vm2
CVSS v3.1
8.5
Alta
| Vetor | AV:N/AC:L/PR:L/UI:N/S:C/C:N/I:H/A:L |
Nome do Software Vulnerável e Versões Afetadas
vm2 versões 2.0.0 through 3.11.6
Description
O NodeVM contém um bypass de denylist de módulos integrados. Quando o incorporador utiliza o curinga de integrados com entradas negativas na configuração
require, as entradas negativas são correspondidas pelo nome exato do módulo em lib/builtin.js. Consequentemente, uma entrada como -fs remove apenas o módulo fs e não remove subcaminhos integrados, como fs/promises. Isso permite que o código em sandbox acesse a API de sistema de arquivos baseada em promessas chamando require('fs/promises') ou require('node:fs/promises'), mesmo quando o fs é negado. Além disso, o tratamento do prefixo node: é inconsistente, pois uma entrada -node:fs/promises não bloqueia require('fs/promises'). Isso pode levar a operações não autorizadas de arquivos no host, incluindo a criação e gravação via fsp.writeFile(), bem como outras operações como cp, mkdir, rename, rm, rmdir, truncate e operações de leitura.Recommendations
Atualizar o vm2 para a versão 3.11.7.
Exploit
Correção
Improper Access Control
Improper Privilege Management
Encontrou algum problema na descrição? Tem algo a acrescentar? Fique à vontade para nos escrever 👾
Identificadores relacionados
Produtos afetados
Vm2