Torna agli aggiornamenti
UpdatedJul 28, 2026

Copy-Fail-CVE-2026-31431-Lab — Updated!

Riprodotta la LPE senza file CVE‑2026‑31431 (“Copy Fail”) su Kali Linux, quindi costruiti rilevamenti auditd, Sigma e YARA per intercettare questo exploit stealth del kernel che non lascia tracce su disco.

Condividi

Copy Fail (CVE-2026-31431) — Laboratorio di Riproduzione & Rilevamento Exploit

Questo repository documenta la riproduzione end-to-end, l'ingegneria del rilevamento e la risposta agli incidenti per CVE-2026-31431 ("Copy Fail"), una critica vulnerabilità di escalation dei privilegi locale nel kernel Linux che interessa i kernel dalla versione 4.14 fino alla 7.0-rc.


Risultati Chiave

  • ✅ Sfruttato con successo CVE-2026-31431 su Kali Linux 2026.1 (kernel 6.18.12+kali-amd64)
  • ✅ Implementate regole di rilevamento a livello di syscall auditd
  • ✅ Create regole Sigma e YARA per il rilevamento cross-platform
  • ✅ Sviluppato un playbook completo per la risposta agli incidenti

Perché è Importante

Copy Fail è un difetto logico, non una corruzione di memoria. È deterministico, interessa praticamente ogni distribuzione Linux rilasciata dal 2017, ed è completamente fileless—il tradizionale monitoraggio dell'integrità dei file (AIDE, Tripwire) non può vederlo. Un proof-of-concept funzionante occupa solo 732 byte di Python.


Ambiente di Laboratorio

ComponenteDettagli
HypervisorVirtualBox
VM targetKali Linux 2026.1
Kernel6.18.12+kali-amd64
PoC dell'exploittheori-io/copy-fail-CVE-2026-31431
Rilevamentoauditd, Sigma, YARA

Passaggi di Riproduzione

1. Verifica Versione Kali e Kernel

Il laboratorio inizia confermando che il target esegua un kernel vulnerabile.

Versione Kali Dettagli del kernel e della release Kali Linux 2026.1.

Versione Kernel Output di uname -r che mostra il kernel vulnerabile 6.18.12+kali-amd64.

2. Verifica del Modulo Vulnerabile

L'exploit richiede il modulo kernel algif_aead e il template crittografico authencesn.

Modulo Caricato lsmod e modinfo confermano che algif_aead è disponibile; /proc/crypto mostra il template vulnerabile authencesn.

3. Versione Python

Il PoC utilizza os.splice, che richiede Python 3.10+. Verifichiamo l'interprete.

Versione Python Python 3.12 è installato e pronto.

4. Check di Vulnerabilità (Non Distruttivo)

Prima di eseguire l'exploit completo, un controllo sicuro conferma che il sistema è vulnerabile.

Check di Vulnerabilità Il checker riporta "potenzialmente vulnerabile", aprendo la strada allo sfruttamento.

5. Creazione di un Utente Non Privilegiato

Viene creato un account testuser non privilegiato per simulare un attaccante senza diritti speciali.

ID Testuser id mostra UID 1001, confermando l'accesso non root.

6. Clonazione ed Esecuzione dell'Exploit

Il PoC ufficiale di Theori viene clonato ed eseguito dall'account non privilegiato.

PoC Clonato Repository dell'exploit clonato con successo.

Esecuzione Exploit L'exploit Python sovrascrive la cache delle pagine e fa detonare il binario /usr/bin/su corrotto.

Shell Root Ottenuta L'output di whoami e id prova l'escalation completa a root.

7. Verifica della Natura Fileless (Nessuna Modifica su Disco)

L'exploit corrompe solo la cache delle pagine in memoria. Il file /usr/bin/su su disco mantiene il suo checksum originale.

SHA256 Match Il sha256sum corrisponde all'hash del pacchetto originale anche dopo lo sfruttamento, confermando l'assenza di modifiche su disco.


Ingegneria del Rilevamento

Copy Fail non può essere rilevato dal monitoraggio dell'integrità dei file. Invece, ci concentriamo sulle primitive a livello di syscall che utilizza.

Regole auditd

Implementiamo regole auditd personalizzate che si attivano per:

  • Creazione di socket AF_ALG (famiglia 38)
  • Utilizzo della syscall splice()
  • Accesso in lettura a binari setuid da parte di processi non privilegiati

Regole auditd Caricate Tutte le regole personalizzate sono attive, verificate con auditctl -l.

Dopo aver eseguito l'exploit una seconda volta, vediamo alert per le syscall esatte utilizzate:

Alert auditd – Socket AF_ALG ausearch mostra un evento di creazione socket AF_ALG dal processo testuser.

Alert auditd – splice() ausearch mostra un evento splice() dallo stesso PID, una forte correlazione.

Regola Sigma

Una regola Sigma traduce i risultati di auditd in un formato SIEM vendor-neutral.

Regola Sigma Regola YAML Sigma che rileva la creazione di socket AF_ALG e le chiamate splice().

Regola YARA

Una regola YARA aiuta a identificare il codice dell'exploit Copy Fail su disco.

Regola YARA Regola YARA che corrisponde alla stringa authencesn, alle costanti dei socket e ai riferimenti a splice() trovati nei PoC.

Riepilogo Copertura del Rilevamento

LivelloCosa VedeStato
auditdSocket AF_ALG + syscall splice✅ Implementato
SigmaPattern di syscall tramite SIEM✅ Regola pronta
YARACodice PoC su disco✅ Regola pronta
FIM (AIDE/Tripwire)Modifiche ai fileCieco – nessuna scrittura su disco

Playbook di Risposta agli Incidenti

Un report completo di risposta agli incidenti è disponibile in reports/incident-copy-fail.md. Include:

  • Riepilogo esecutivo
  • Indicatori di compromissione (IoCs)
  • Mappatura MITRE ATT&CK (T1068, T1611)
  • Passaggi di contenimento ed eradicazione
  • Lezioni apprese riguardo agli attacchi fileless

Mitigazione

Mitigazione immediata (senza bisogno di riavvio):

echo "install algif_aead /bin/false" | sudo tee /etc/modprobe.d/disable-algif.conf
sudo rmmod algif_aead

Categorie