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
PPPoEject — PoC di privilege escalation locale del kernel Linux per CVE-2026-68121, che concatena PPPoE, FUSE e IP6GRE per corrompere la memoria del kernel e ottenere i privilegi di root. | Kitploit
Strumenti/GitHubGitHub/manizada/pppoeject
Escalation di PrivilegiMemory ForensicsAnalisi delle VulnerabilitàExploitPaper e RicercaSviluppo PayloadBinary Exploitation
GitHubmanizada/pppoeject

PPPoEject

PoC di privilege escalation locale del kernel Linux per CVE-2026-68121, che concatena PPPoE, FUSE e IP6GRE per corrompere la memoria del kernel e ottenere i privilegi di root.

Vedi Repository
12h 28m 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

PPPoEject (CVE-2026-68121)

Writeup

[!WARNING] Il PoC è fornito esclusivamente per aiutare difensori, manutentori e team di sicurezza autorizzati a validare patch, mitigazioni, rilevamenti ed esposizione su sistemi di loro proprietà o che sono esplicitamente autorizzati a testare.

Sei l'unico responsabile di garantire che il tuo utilizzo di questo materiale sia legale, autorizzato, controllato e condotto in un ambiente di test isolato.

[!WARNING] Questo PoC è distruttivo. Corrompe deliberatamente la memoria del kernel in uso. Una sovrascrittura mal posizionata può corrompere memoria del kernel non correlata e bloccare/crashare la macchina.

Eseguilo solo in una VM usa e getta/host sacrificabile.

Il PoC:

  1. Compila helper incorporati e individua la base del kernel text randomizzata con un canale laterale di timing x86-64 prefetch/RDTSCP
  2. costruisce un carrier AF_PACKET TX-ring contenente oggetti struct file falsi e prepara una fdtable popolata verso l'allocazione target
  3. blocca una copia del payload PPPoE su una pagina FUSE controllata dall'attaccante, poi aggiunge IP6GRE a un dispositivo team vuoto su Fedora o attraverso una catena bonding su Ubuntu
  4. fa sì che dev_hard_header() riallochi la testa dell'skb, poi usa il puntatore stale all'header PPPoE per redirigere una voce della fdtable verso il file falso, e
  5. chiude il descrittore rediretto, esegue la callback controllata, installa credenziali root e apre /bin/sh -p.

Il PoC assume e ha come target x86-64 per mantenere le cose semplici. In teoria, il bug non dovrebbe essere specifico per l'architettura, ma bisognerebbe portare molto (dal leak della kernel base al resto della catena).

Requisiti

Enumerazione esaustiva per completezza:

  • Almeno 4 CPU disponibili (importante per i worker PPPoE sender, fdtable reclaimer/carrier, FUSE blocker e trigger/release orchestrator, affinché eseguano lavoro critico per il timing con meno interferenza dello scheduler)
  • Fedora 44 con 6.19.10-300.fc44.x86_64, o Ubuntu 24.04 con 6.8.0-124-generic o 6.8.0-136-generic (puoi provare a rimuovere questi controlli, ma altre distro/versioni del kernel potrebbero richiedere personalizzazione/grooming per target)
  • Un normale account non-root con una voce in passwd e una home directory di sua proprietà
  • Una CPU Intel o AMD x86-64 con RDTSCP, KPTI/PTI inattivo e almeno quattro CPU logiche nella maschera di affinità del processo
  • Creazione non privilegiata di user/network namespace con CAP_NET_ADMIN e CAP_NET_RAW all'interno di quel namespace
  • Accesso in lettura/scrittura a /dev/fuse, più supporto FUSE, PPPoE, IP6GRE, AF_PACKET/TX-ring e team su Fedora o supporto bonding su Ubuntu
  • membarrier privato expedited per layout selezionati di ordine basso
  • Dispositivi Dummy e 802.1Q VLAN per layout selezionati di ordine alto
  • Un limite hard di RLIMIT_NOFILE sufficientemente grande per la geometria del carrier selezionata, verificato a runtime e potenzialmente richiedente fino a 8.192 descrittori

Testato solo con 4GB di RAM e varie configurazioni con 4+ CPU. Altre combinazioni CPU/memoria potrebbero richiedere più grooming e/o potrebbero redirigere la scrittura in memoria non correlata.

Eseguilo come utente non privilegiato con una voce in passwd. La conversione per Ubuntu può richiedere un po' di tempo (ad esempio, 300+ tentativi).

Utilizzo

root@kitploit:~
python3 pppoeject_root_repro.py
Scarica lo strumento
  • Varie cose userspace (che le distro testate in scope dovrebbero avere per la maggior parte di default): Python 3.10+, gcc con header di sviluppo libc e Linux UAPI, taskset, unshare, ip, true e /bin/sh, più aa-exec e il profilo trinity caricato su Ubuntu se unshare -Urn diretto viene negato