Skip to content
KitploitKITPLOIT
StrumentiBlog
Invia
StrumentiBlog
Invia

Strumenti di Hacking, PenTest e Cybersecurity per il tuo Arsenale di Sicurezza!

Kitploit è una directory di strumenti di hacking, cybersecurity e pentesting. Scopri gli ultimi aggiornamenti dei progetti per trovare vulnerabilità, analizzare sistemi, automatizzare i test e rafforzare la tua sicurezza.

··Feed·Contatto·Privacy·© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
CVE-2026-31431-Copy-Fail — Research artifacts, PoC scripts, and lab assets for the Copy Fail Linux local privilege escalation writeup on https://4xura.com/binex/kernel/copy-fail | Kitploit
Strumenti/GitHubGitHub/4xura/cve-2026-31431-copy-fail
Privilege EscalationExploitationShellcodePapers & ResearchLearning & EducationPayload DevelopmentBinary ExploitationLabs & Practice
GitHub4xura/cve-2026-31431-copy-fail

CVE-2026-31431-Copy-Fail

Research artifacts, PoC scripts, and lab assets for the Copy Fail Linux local privilege escalation writeup on https://4xura.com/binex/kernel/copy-fail

Vedi Repository
73 mesi faNon ancora revisionato

Più Popolari

Vedi tutti →

Scopri gli strumenti più utilizzati dalla nostra community.

Esplora tutti gli strumenti

Sfoglia la nostra collezione di strumenti

Vedi tutti gli strumenti →
Condividi

CVE-2026-31431: Quando la Copia Non è una Copia e il Fallimento Arriva Troppo Tardi

Artefatti e script per l'analisi di CopyFail.

Approfondimento dettagliato:

  • https://4xura.com/binex/kernel/copy-fail/

Struttura

  • proof-of-concept/ contiene le demo con primitive isolate utilizzate nell'analisi.
  • exploit-scripts/ contiene le implementazioni complete dell'exploit in Python, C, Perl e assembly x86_64.
  • bpftrace-scripts/ contiene i piccoli helper di tracciamento utilizzati durante l'analisi a runtime.

Prerequisiti

Solo gli artefatti Perl, assembly e BusyBox richiedono un ELF di sostituzione esterno. Negli esempi seguenti, quel file è chiamato , ma qualsiasi nome file va bene.

payload.pwnkit.elf

Quel payload non viene generato all'interno di questo repository. Costruiscilo prima seguendo il flusso di lavoro del payload dall'analisi, quindi posiziona l'ELF risultante nella stessa directory di lavoro dell'artefatto che vuoi eseguire.

Le PoC primitive e i driver degli exploit Python/C sono direttamente eseguibili così come sono.

1. PoC Primitive

Queste PoC sono principalmente per dimostrazione nell'analisi. Mostrano la primitiva di sovrascrittura in isolamento, non il flusso completo di sostituzione-esecuzione.

Per eseguire la demo Python, entra nella directory PoC ed esegui lo script:

root@kitploit:~
cd proof-of-concept
python3 copyfail_poc.py

Per eseguire la demo C, compila prima e poi esegui il binario risultante:

root@kitploit:~
cd proof-of-concept
gcc -Wall -Wextra -O2 -o copyfail_poc copyfail_poc.c
./copyfail_poc

2. Exploit Python

L'exploit Python è autonomo e mantiene i byte di sostituzione nello script stesso.

Spostati nella directory dell'exploit ed esegui il percorso di destinazione predefinito:

root@kitploit:~
cd exploit-scripts
python3 exploit.py

Se vuoi un nome base target diverso, passalo come primo argomento. Per abilitare i log di sovrascrittura per chunk, imposta DEBUG=1:

root@kitploit:~
python3 exploit.py su
DEBUG=1 python3 exploit.py su

3. Exploit C

L'exploit C è anch'esso autonomo. Se vuoi preparare una sostituzione diversa, modifica prima PAYLOAD_BYTES in exploit-scripts/exploit.c.

Compila il binario statico (opzionale) in questo modo:

root@kitploit:~
cd exploit-scripts
gcc -static -Wall -Wextra -O2 -o exploit exploit.c -lz

Quindi esegui il target predefinito, oppure passa un nome base diverso. Il logging di debug è controllato tramite DEBUG=1:

root@kitploit:~
./exploit
./exploit su
DEBUG=1 ./exploit su

4. Exploit Perl

Questa versione legge un payload ELF esterno invece di incorporare byte di sostituzione nello script.

Eseguilo dalla directory dell'exploit. Senza argomenti aggiuntivi, utilizza il target predefinito e il percorso del payload predefinito:

root@kitploit:~
cd exploit-scripts
perl exploit.pl

Se vuoi scegliere sia il percorso vittima che l'ELF del payload esplicitamente, passali come argomenti. Il logging di debug è anch'esso controllato tramite DEBUG=1:

root@kitploit:~
perl exploit.pl /usr/bin/su ./payload.pwnkit.elf
DEBUG=1 perl exploit.pl /usr/bin/su ./payload.pwnkit.elf

5. Exploit Assembly

Anche questa versione consuma un payload ELF esterno. Nell'esempio sotto è chiamato payload.pwnkit.elf, ma puoi usare qualsiasi nome file. Se lo rinomini, aggiorna la riga incbin in exploit-scripts/exploit.asm di conseguenza.

Compila il driver assembly con nasm e ld:

root@kitploit:~
cd exploit-scripts
nasm -f elf64 exploit.asm -o exploit.o
ld -o exploit_asm exploit.o

Quindi esegui il target predefinito, oppure passa un percorso target completo:

root@kitploit:~
./exploit_asm
./exploit_asm /usr/bin/su

6. Dropper BusyBox

Questo impacchetta il driver assembly e un payload ELF esterno in un unico eseguibile compatibile con BusyBox. L'esempio sotto usa payload.pwnkit.elf, ma qualsiasi nome file payload va bene purché passi lo stesso percorso al packer.

Genera il dropper dalla directory dell'exploit:

root@kitploit:~
cd exploit-scripts
sh mk_busybox_dropper.sh ./exploit_asm ./payload.pwnkit.elf > copyfail-busybox.sh
chmod +x copyfail-busybox.sh

Sul sistema di destinazione, esegui lo script generato con BusyBox sh:

root@kitploit:~
busybox sh ./copyfail-busybox.sh /usr/bin/su

7. Helper Bpftrace

Prima di eseguire gli helper di tracciamento, verifica che i simboli rilevanti siano disponibili:

root@kitploit:~
sudo cat /proc/kallsyms | grep -E 'filemap_splice_read|splice_folio_into_pipe|af_alg_sendmsg|extract_iter_to_sg|crypto_authenc_esn_decrypt|scatterwalk_map_and_copy'

Per osservare le pagine file che entrano nel percorso splice, esegui:

root@kitploit:~
sudo bpftrace ./bpftrace-scripts/bpftrace-filemap-splice.bt

Per osservare i dati supportati da pipe che raggiungono AF_ALG, esegui:

root@kitploit:~
sudo bpftrace ./bpftrace-scripts/bpftrace-af-alg-sendmsg.bt

Per osservare la callback di decifratura vulnerabile authencesn, esegui:

root@kitploit:~
sudo bpftrace ./bpftrace-scripts/bpftrace-authencesn-decrypt.bt
Scarica lo strumento