3 pontos por ragingwind 2024-04-10 | 3 comentários | Compartilhar no WhatsApp

Foi publicado um aviso de segurança para a biblioteca padrão do Rust. Ele está relacionado à vulnerabilidade identificada como CVE-2024-24576 e foi causado, em especial no Windows, por um problema em que os argumentos não eram escapados adequadamente ao chamar arquivos em lote com extensão .bat ou .cmd usando a API Command.

Se um invasor conseguir controlar os argumentos passados ao processo gerado, poderá contornar o escaping e executar comandos de shell arbitrários. Essa vulnerabilidade só é crítica ao chamar arquivos em lote no Windows com argumentos não confiáveis. Outras plataformas ou casos de uso não são afetados.

A causa raiz do problema é que, no Windows, o cmd.exe (usado para executar arquivos em lote) tem sua própria lógica de divisão de argumentos, o que exige que a biblioteca padrão implemente um escaping personalizado para os argumentos passados ao arquivo em lote. Segundo o relato, a lógica de escaping não era suficientemente rigorosa, permitindo que argumentos maliciosos fossem passados e possibilitando a execução arbitrária de shell.

Com ajuda de IA

3 comentários

 
jeiea 2024-04-11

Como é uma questão de escaping no Windows, dá para pensar que isso pode mesmo acontecer.

 
tpdns90321 2024-04-10

Parece semelhante à vulnerabilidade anterior do WinRAR. Ela explorava a forma de execução de arquivos em lote do Windows e as restrições de nomenclatura de arquivos.

 
aer0700 2024-04-10

Realmente, não existe nada fácil neste mundo mesmo T_T