
PoC em Rust para CVE-2025-32463 (sudo chroot "chwoot" Escalação de Privilégio Local)
AVISO
Este código é apenas para fins educacionais e de pesquisa.
Não o utilize em sistemas que não lhe pertençam ou para os quais não tenha permissão para testar.
O autor não se responsabiliza por qualquer uso indevido, dano ou consequências legais decorrentes do uso deste código.
Esta é uma implementação do exploit da vulnerabilidade sudo chroot (CVE-2025-32463) que escrevi em Rust com base no advisory do sudo e no advisory da Stratascale. O exploit permite executar código arbitrário na forma de uma biblioteca compartilhada devido a um bug na forma como o sudo lida com chroot.
Ao passar a opção chroot para o sudo, você pode fornecer um arquivo /etc/nsswitch.conf malicioso dentro do diretório chroot que instrui o sudo a carregar um objeto compartilhado arbitrário. Este PoC abusa disso para conceder acesso root a um usuário não privilegiado.
Usando os binários fornecidos em Releases, basta executar o seguinte para obter root:
./sudo_chroot_exploit
Isso utiliza um payload de biblioteca compartilhada que simplesmente inicia um shell root.
O código do payload (C) está disponível em /payload. Também há um Makefile fornecido para compilar o código. Você pode modificar ou substituir o payload conforme achar necessário.
Para especificar um payload diferente do padrão, execute o seguinte comando:
/sudo_chroot_exploit -i custom_payload.so