Zebbern

#5801de 53,624
46.5CVSS total
Vulnerabilidades · 5
Alta
2
Crítica
3
PT-2026-31666
9.0
2026-04-08
Basic-Ftp · Basic-Ftp · CVE-2026-39983
Nome do Software Vulnerável e Versões Afetadas: basic-ftp versões 5.2.0 Descrição: basic-ftp é um cliente FTP para Node.js. Versões anteriores à 5.2.1 são suscetíveis à injeção de comandos FTP devido ao tratamento inadequado de sequências CRLF (r ) dentro de parâmetros de caminho de arquivo usados em APIs de caminho de alto nível como `cd()`, `remove()`, `rename()`, `uploadFrom()`, `downloadTo()`, `list()` e `removeDir()`. A função `protectWhitespace()` não higieniza adequadamente os caminhos, e a função `FtpContext.send()` anexa diretamente r aos comandos, permitindo que caminhos controlados pelo atacante dividam comandos FTP pretendidos. Isso pode levar à exclusão arbitrária de arquivos, manipulação de diretórios, exfiltração de arquivos, potencial execução de comandos do servidor, sequestro de sessão e interrupção do serviço. A vulnerabilidade decorre da interação entre a higienização de caminho insuficiente em `protectWhitespace()` e a gravação direta no socket em `send()`. Os métodos afetados incluem `cd()`, `remove()`, `list()`, `downloadTo()`, `uploadFrom()`, `rename()` e `removeDir()`. Um atacante que controla os parâmetros do caminho do arquivo pode injetar comandos de protocolo FTP arbitrários. Recomendações: Higienize todos os inputs de caminho antes de passá-los para basic-ftp. Rejeite ou remova os caracteres r e de todos os inputs de caminho na função `protectWhitespace()`.