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
copy-fail-zig — Implementazione in Zig del LPE Linux Copy Fail (CVE-2026-31431) che fornisce un binario autonomo per sfruttare la vulnerabilità per ricerca sulla sicurezza e rilevamento difensivo, inclusa l'iniezione di shellcode e controlli di vulnerabilità di sistema. | Kitploit
Strumenti/GitHubGitHub/emmmmllll/copy-fail-zig
Escalation di PrivilegiFramework di ExploitAnalisi delle VulnerabilitàExploitBinary Exploitation
GitHubemmmmllll/copy-fail-zig

copy-fail-zig

Implementazione in Zig del LPE Linux Copy Fail (CVE-2026-31431) che fornisce un binario autonomo per sfruttare la vulnerabilità per ricerca sulla sicurezza e rilevamento difensivo, inclusa l'iniezione di shellcode e controlli di vulnerabilità di sistema.

Vedi Repository
13 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

Implementazione Zig di Copy Fail (CVE-2026-31431)

Implementazione Zig della proof of concept di 732 Byte per l'LPE Linux Copy Fail (CVE-2026-31431), divulgata da Theori / Xint il 29 aprile 2026. Il writeup è disponibile su copy.fail.

Questa implementazione non ha dipendenze a runtime e può essere eseguita come binario standalone.

Build

Per compilare l'exploit è richiesta la versione 0.16.0 o superiore di zig, installabile da ziglang.org. Per compilare l'exploit, esegui il seguente comando nel terminale:

root@kitploit:~
zig build

Opzionalmente, può essere compilato in modo incrociato per un Target diverso es.

root@kitploit:~
zig build -Dcpu=baseline -Dtarget=aarch64-linux-musl -Doptimize=ReleaseSmall

oppure con payload non compressi

root@kitploit:~
zig build -Dcompress=false

Utilizzo

esegui il binario compilato oppure usa zig per eseguirlo

root@kitploit:~
zig-out/bin/copyfail
OPPURE
zig build run
root@kitploit:~
$ zig-out/bin/copyfail
Utilizzo:
  run     <percorso> <dati> [offset] [-- args...] - Scrive i dati nell'eseguibile all'offset indicato (default 0) e lo esegue
  sudo    <percorso_suid>   [comando...]          - Esegue un comando come root scrivendo shellcode in un binario suid.
                                                (il primo argomento del comando deve essere il percorso completo del programma da eseguire)
  modify  <percorso> <dati> [offset]              - Scrive i dati nel file all'offset indicato (default 0)
  reset   <percorso>                              - Ripristina il file al suo stato originale
  help                                            - Mostra questo messaggio

L'eseguibile può essere eseguito con diversi comandi:

run prima scrive i dati forniti all'offset indicato (default 0) nell'eseguibile al percorso fornito, poi lo esegue. Al termine dell'esecuzione, il file viene ripristinato al suo stato originale usando posix_fadvise.

Esempio:

root@kitploit:~
copyfail run /percorso/a/exe $(cat shellcode_bin) -- /bin/sh

sudo scrive lo shellcode incluso in un binario suid e lo esegue per lanciare un comando come root. Il codice sorgente dello shellcode si trova in payloads/sudo.zig. Il primo argomento del comando deve essere il percorso completo del programma poiché lo shellcode non cerca il programma da eseguire. Al termine dell'esecuzione, il file viene ripristinato come nel comando run.

Esempio:

root@kitploit:~
$ copyfail sudo /usr/bin/su /usr/bin/whoami
root

modify scrive i dati forniti all'offset indicato (default 0) nel file al percorso fornito, senza eseguirlo. Dopo la modifica, il file NON viene ripristinato. Usa il comando reset per ripristinarlo.

Esempio:

root@kitploit:~
copyfail modify /percorso/a/file "Il mio nuovo contenuto" 1337

reset ripristina il file al percorso fornito al suo stato originale usando posix_fadvise. Questo scarta la pagina in cache e leggerà il contenuto dal disco al successivo accesso.

Esempio:

root@kitploit:~
copyfail reset /percorso/a/file

is_vulnerable verifica se il sistema è vulnerabile creando un file temporaneo, scrivendovi dati di test e rileggendoli per vedere se i dati sono stati corrotti.

Esempio:

root@kitploit:~
$ copyfail is_vulnerable
avviso: Il sistema è vulnerabile
OPPURE
info: Il sistema non è vulnerabile

help stampa il messaggio di utilizzo.

Kernel interessati (da copy-fail-c)

root@kitploit:~
limite inferiore:    torvalds/linux 72548b093ee3   agosto 2017, v4.14
                                        (rework di iov_iter di AF_ALG che
                                         ha introdotto la primitiva di
                                         scrittura su file-page tramite splice
                                         nello scatterlist AEAD)

limite superiore:  torvalds/linux a664bf3d603d   aprile 2026, mainline
                                        (annulla l'ottimizzazione in-place
                                         di algif_aead del 2017; separa gli
                                         scatterlist di origine e destinazione
                                         così le pagine della page-cache non
                                         possono più essere una destinazione
                                         crittografica scrivibile)

Nel mezzo: ogni kernel delle principali distribuzioni che non ha backportato la correzione. Ubuntu, RHEL, SUSE, Amazon Linux e Debian sono stati tutti confermati vulnerabili nei loro kernel standard delle immagini cloud al momento della divulgazione. I backport a livello di distribuzione hanno iniziato a essere distribuiti intorno al 2026-04-29 insieme alla divulgazione pubblica. Per verificare se un kernel target è nella finestra, controlla se a664bf3d603d (o il suo backport specifico della distribuzione) è presente nel git log del kernel o nel changelog della distribuzione.

Licenza e crediti

Scoperta e divulgazione originale di CVE-2026-31431: Theori / Xint. Writeup pubblico su copy.fail.

Questa implementazione Zig: Emmmmllll [email protected]

Il compilatore zig e la libreria standard: Zig Software Foundation con termini MIT https://codeberg.org/ziglang/zig.

L'exploit e il payload sono pubblicati per scopi di ricerca sulla sicurezza e rilevamento difensivo. L'uso contro sistemi di cui non si è proprietari o per i quali non si ha esplicita autorizzazione a testare è un problema tuo, non dell'autore.

Scarica lo strumento