PT-2026-33550 · Npm · Compressing

CVE-2026-40931

·

Publicado

2026-04-17

·

Atualizado

2026-06-02

CVSS v3.1

8.4

Alta

VetorAV:L/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
Nome do Software Vulnerável e Versões Afetadas compressing versões anteriores a 1.10.5 compressing versões anteriores a 2.1.1
Description Existe uma falha de bypass em uma correção parcial na biblioteca Node.js compressing. A função isPathWithinParent() em lib/utils.js baseia-se em uma validação lógica de string usando path.resolve() para verificar se um caminho resolvido começa com o diretório de destino. No entanto, ela não considera o estado real do sistema de arquivos, criando uma divergência entre o caminho lógico e o caminho físico. Um invasor pode explorar isso usando uma técnica de Envenenamento de Diretório (Directory Poisoning) com links simbólicos pré-existentes. Por exemplo, se um link simbólico for plantado no diretório de destino apontando para uma área sensível do sistema, a biblioteca pode validar o caminho como seguro enquanto o sistema operacional segue o link para gravar arquivos fora da raiz de extração pretendida. Isso pode levar a gravações arbitrárias de arquivos, resultando potencialmente em escalonamento de privilégios ou execução remota de código ao sobrescrever arquivos de configuração ou binários do sistema. Um vetor de ataque principal é a cadeia de suprimentos via Git clone, já que o Git preserva links simbólicos durante o processo de clonagem, implantando automaticamente o link malicioso na máquina da vítima.
Recommendations Atualize para a versão 1.10.5 ou posterior. Atualize para a versão 2.1.1 ou posterior. Como medida paliativa temporária, restrinja o uso da função isPathWithinParent() ou evite extrair arquivos não confiáveis em diretórios onde links simbólicos possam já existir.

Exploit

Correção

Link Following

Encontrou algum problema na descrição? Tem algo a acrescentar? Fique à vontade para nos escrever 👾

Enumeração de Fraquezas

Identificadores relacionados

CVE-2026-40931
GHSA-4C3Q-X735-J3R5

Produtos afetados

Compressing