
Exploit di escalation dei privilegi locale per il kernel Linux con audit automatico dei prerequisiti per CVE-2026-46300, che verifica lo stato delle patch, la configurazione XFRM ESP-in-TCP e i namespace utente prima di compilare ed eseguire l'exploit.
Toolkit di Audit ed Exploit LPE per Linux Kernel · Regressione Page-Cache / XFRM ESP-in-TCP (espintcp)
Audit interattivo → Rilevamento dei prerequisiti LPE → Esecuzione automatica dell'exploit (dopo conferma)
⚠️ Avvertenze etiche e legali Questo strumento è solo per test di sicurezza legittimi e autorizzati — pentest su contratto, lab/CTF o asset di propria proprietà. L'uso senza l'autorizzazione del proprietario del sistema è un reato (UU ITE, Computer Fraud and Abuse Act, ecc.). L'utente è l'unico responsabile.
CVE-2026-46300 è una vulnerabilità di Local Privilege Escalation (LPE) nel kernel Linux dovuta a una regressione in skb_try_coalesce() che provoca la corruzione della page-cache, sfruttata attraverso il sottosistema XFRM ESP-in-TCP (espintcp).
Questo repository contiene 2 componenti:
| File | Funzione |
|---|---|
fragnesia.sh | Scanner di audit — verifica i 3 prerequisiti, poi offre l'esecuzione dell'exploit se il target è vulnerabile |
fragnesia.c | Exploit LPE — codice sorgente dell'exploit compilato ed eseguito dallo script |
┌───────────────────────┐
│ fragnesia.sh │
│ Audit 3 pemeriksaan │
└──────────┬────────────┘
▼
CHECKS_TRIGGERED > 0 ?
┌──────┴───────┐
│ Ya │ Tidak → Selesai (target aman)
▼ │
Cek fragnesia.c ada?
┌──────┴───────┐
│ Ya │ Tidak → instruksi, selesai
▼ │
Konfirmasi user [y/N]
┌──────┴───────┐
│ Ya │ Tidak → batal, selesai
▼ │
gcc -O2 -w fragnesia.c -o exp
│
▼
./exp ← eksekusi exploit
Operatore (host su cui viene eseguito lo script):
gcc per la compilazione dell'exploitTarget (per essere potenzialmente vulnerabile):
skb_try_coalesce())CONFIG_XFRM_ESPINTCP / CONFIG_INET_ESPINTCP attivi (=y/m)kernel.unprivileged_userns_clone=1)# 1. Clone
git clone https://github.com/Kentox493/CVE-2026-46300_Fragnesia.git
cd CVE-2026-46300_Fragnesia
# 2. Pastikan script executable
chmod +x fragnesia.sh
# 3. (Opsional) Toolchain bila belum ada
sudo apt update && sudo apt install -y build-essential
# atau (RHEL/Fedora)
sudo dnf groupinstall "Development Tools"
./fragnesia.sh
fragnesia.c e fragnesia.sh devono trovarsi nella stessa directory, poiché lo script cerca l'exploit in modo relativo.
Lo script esegue automaticamente 3 controlli di audit.
Se vi sono indicazioni di vulnerabilità (CHECKS_TRIGGERED > 0), viene mostrato il prompt:
[?] Target terdeteksi vulnerable (2/3). Lanjut kompilasi & eksekusi exploit? [y/N]:
Digitare y → lo script compila ed esegue automaticamente l'exploit.
Digitare qualsiasi altra cosa / Invio → l'esecuzione viene annullata, l'audit termina.
gcc -O2 -w fragnesia.c -o exp
./exp
Verifica hostname + kernel attivo, poi controlla il changelog dei pacchetti del kernel della distro (apt-get changelog / rpm -q --changelog) per verificare la presenza della patch per CVE-2026-46300.
| Risultato | Significato |
|---|---|
VULN | Nessuna patch nel changelog della distro |
SAFE | Patch di CVE-2026-46300 rilevata |
Controlla i flag ESP-in-TCP in /boot/config-$(uname -r) o /proc/config.gz. Fallback: rilevamento dei moduli XFRM/IPsec tramite /lib/modules/ o lsmod.
| Risultato | Significato |
|---|---|
VULN | CONFIG_XFRM_ESPINTCP / CONFIG_INET_ESPINTCP attivi (=y/m) |
SAFE | Sottosistema disabilitato / non compilato |
Controlla kernel.unprivileged_userns_clone (fallback: /proc/sys/user/max_user_namespaces).
| Risultato | Significato |
|---|---|
VULN | Userns abilitato → un utente non privilegiato può ottenere CAP_NET_ADMIN |
SAFE | Userns disabilitato → mitigazione attiva |
UNCERTAIN | Non determinabile → necessaria revisione manuale |
| Punteggio | Verdetto |
|---|---|
| 3/3 VULN |
Questa fase si attiva solo se CHECKS_TRIGGERED > 0. Ciò che viene eseguito dallo script:
# 1. Verifikasi keberadaan fragnesia.c
# 2. Konfirmasi user (default: TIDAK / N)
# 3. Kompilasi exploit:
gcc -O2 -w fragnesia.c -o exp
# 4. Eksekusi:
./exp
Nota sulle flag di compilazione:
-O2 — ottimizzazione livello 2 (fondamentale per la stabilità degli exploit basati su race/timing)-w — sopprime i warning (il sorgente dell'exploit è solitamente pieno di warning di int-conversion ecc.)Gestione errori integrata nello script:
┌──────────────────────────────────────────────────────────────────┐
│ FRAGNESIA (CVE-2026-46300) - HOST VULNERABILITY AUDIT TOOL │
│ Linux Kernel Page-Cache / XFRM espintcp Regression Inspector │
└──────────────────────────────────────────────────────────────────┘
┌──[STEP 1] Host & Kernel Verification
│ [i] INFO │ Hostname : webserver-01
│ [i] INFO │ Active Kernel : 6.8.0-45-generic
│ [!] VULNERABLE │ Patch Changelog -> No security patch found for CVE-2026-46300
└──
┌──[STEP 2] Kernel Subsystems Configuration (XFRM / ESP)
│ [!] VULNERABLE │ ESP-in-TCP Flag -> CONFIG_XFRM_ESPINTCP / CONFIG_INET_ESPINTCP active (=y/m)
└──
┌──[STEP 3] User Namespace Isolation Prerequisite
│ [!] VULNERABLE │ User Namespaces -> Enabled (Allows unprivileged user to gain CAP_NET_ADMIN)
└──
┌──────────────────────────────────────────────────────────────────┐
│ EXECUTIVE AUDIT SUMMARY │
└──────────────────────────────────────────────────────────────────┘
[!] AUDIT RESULT: CRITICAL - TARGET IS HIGHLY VULNERABLE
Semua prasyarat rantai serangan (Kernel patch, ESP subsistem, dan Userns) terpenuhi.
┌──────────────────────────────────────────────────────────────────┐
│ OPSIONAL: EKSEKUSI EXPLOIT FRAGNESIA (LPE) │
└──────────────────────────────────────────────────────────────────┘
[i] fragnesia.c ditemukan (18,432 bytes).
[?] Target terdeteksi vulnerable (3/3). Lanjut kompilasi & eksekusi exploit? [y/N]: y
┌──[STEP 4] Kompilasi & Eksekusi Exploit (fragnesia.c)
│ [i] INFO : Toolchain: gcc (Ubuntu 13.2.0-23ubuntu4) 13.2.0
│ $ gcc -O2 -w fragnesia.c -o exp
│ [✓] Kompilasi berhasil -> ./exp
│ $ ./exp
│ [*] Fragnesia exploit running...
│ [*] Overwriting page cache...
│ [*] Got root! uid=0(root) gid=0(root)
└──
skb_try_coalesce() dal vendor della distro.sudo sysctl -w kernel.unprivileged_userns_clone=0
/etc/sysctl.conf.echo 'install esp4_offload /bin/true' | sudo tee /etc/modprobe.d/disable-esp.conf
sudo update-initramfs -u
exp / processi sospetti in /tmpCAP_NET_ADMIN nei container e negli user namespaceCVE-2026-46300_Fragnesia/
├── fragnesia.sh # Audit scanner + trigger eksekusi exploit (bash)
├── fragnesia.c # Source exploit LPE (C)
└── README.md # Dokumentasi ini
Solo per uso legittimo. Questo strumento è pensato per:
È obbligatorio avere l'autorizzazione scritta del proprietario del sistema prima di eseguire questo strumento su qualsiasi infrastruttura.
Il repository è fornito "così com'è" senza alcuna garanzia. I contributori non sono responsabili per un uso improprio.
Licenza: MIT
skb_try_coalesce() — documentazione dello stack di rete| Elemento | Dettaglio |
|---|
| CVE | CVE-2026-46300 |
| Tipo | Local Privilege Escalation (LPE) |
| Componente | Kernel Linux — page-cache + XFRM ESP-in-TCP (espintcp) |
| Causa principale | Regressione skb_try_coalesce() → corruzione di memoria/page-cache |
| Prerequisiti | 3 condizioni devono essere soddisfatte (vedi tabella di audit) |
| Impatto | Utente non privilegiato → root |
🟥 CRITICAL — intera catena di attacco soddisfatta |
| 1–2/3 VULN | 🟨 MEDIUM / PARZIALMENTE ESPOSTO — mitigazione parziale |
| 0/3 VULN | 🟩 SECURE — patch applicata / componenti disattivati |
| Condizione | Gestione |
|---|
fragnesia.c non presente | Messaggio con istruzioni, nessun crash |
gcc non installato | Messaggio con il comando per installare la toolchain |
| Compilazione fallita | L'exploit non viene eseguito, viene mostrato l'errore del compilatore |
Exit code di ./exp ≠ 0 | Segnalato come fallimento |