PT-2024-2720 · Rust+2 · Rust+2
Ry0Tak
·
Publicado
2024-04-09
·
Atualizado
2026-06-12
·
CVE-2024-24576
CVSS v3.1
10
Crítica
| Vetor | AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H |
Nome do software vulnerável e versões afetadas
Versões do Rust anteriores à 1.77.2
Descrição
Uma falha crítica de segurança na biblioteca padrão do Rust poderia ser explorada para atingir usuários do Windows e realizar ataques de injeção de comando. A vulnerabilidade permite que invasores executem comandos de shell arbitrários, contornando a escapagem de argumentos ao invocar arquivos em lote no Windows usando a API
Command. A gravidade dessa vulnerabilidade é crítica para aqueles que invocam arquivos em lote no Windows com argumentos não confiáveis. Nenhuma outra plataforma ou uso é afetado.As APIs
Command::arg e Command::args afirmam em sua documentação que os argumentos serão passados para o processo gerado tal como estão, independentemente do conteúdo dos argumentos, e não serão avaliados por um shell. No entanto, no Windows, a implementação é mais complexa, pois a API do Windows fornece apenas uma única string contendo todos os argumentos ao processo gerado. A biblioteca padrão implementa um escapamento personalizado para argumentos passados a arquivos em lote, mas foi relatado que essa lógica de escapamento não era suficientemente completa, permitindo que argumentos maliciosos resultassem na execução arbitrária do shell.Recomendações
Para resolver o problema, atualize para o Rust 1.77.2 ou posterior. Se você estiver usando uma versão anterior à 1.77.2, considere desativar a execução de arquivos em lote ou restringir o uso da API
Command até que um patch esteja disponível. Além disso, tenha cuidado ao passar entradas não confiáveis como argumentos para a API Command.Exploit
Correção
OS Command Injection
Argument Injection
Encontrou algum problema na descrição? Tem algo a acrescentar? Fique à vontade para nos escrever 👾
Identificadores relacionados
Produtos afetados
Alt Linux
Red Os
Rust