A equipe de linguagem Rust publicou um lançamento pontual do Rust para corrigir uma vulnerabilidade crítica na biblioteca padrão que poderia beneficiar um invasor ao usar o Windows.
Rust 1.77.2, publicado em 9 de abril, inclui uma correção para CVE-2024-24576. Antes deste lançamento, a biblioteca padrão do Rust não escapava adequadamente dos argumentos ao invocar arquivos em lote com o bat
e cmd
extensões no Windows usando o Command
API. Um invasor que controlasse argumentos passados para um processo gerado poderia executar comandos shell arbitrários, ignorando o escape. Esta vulnerabilidade se torna crítica se arquivos em lote forem invocados no Windows com argumentos não confiáveis. Nenhuma outra plataforma ou uso foi afetado. Os desenvolvedores que já usam Rust podem obter o Rust 1.77.2 usando o comando: rustup update stable
.
Rust 1.77.2 é um lançamento pontual, seguindo Rust 1.77.1 por aproximadamente 12 dias. A versão 1.77.1 abordou uma situação que afetava o gerenciador de pacotes Cargo no Rust 1.77, que foi anunciado em 21 de março. No Rust 1.77, o Cargo permitiu que os desenvolvedores removessem informações de depuração nas compilações de lançamento por padrão. No entanto, devido a um problema pré-existente, debuginfo
a remoção não se comportou da maneira esperada no Windows com o conjunto de ferramentas MSVC. Rust 1.77.1 agora desabilita o novo comportamento do Cargo no Windows para destinos que usam MSVC. Existem planos para reativar debuginfo
remoção no modo de liberação em uma versão subsequente do Rust.