Skip to content
KitploitKITPLOIT
OutilsBlog
Soumettre
OutilsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

··Flux·Contact·Confidentialité·© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
PPPoEject — PoC d'élévation de privilèges locale du noyau Linux pour CVE-2026-68121, enchaînant PPPoE, FUSE et IP6GRE pour corrompre la mémoire du noyau et obtenir les droits root. | Kitploit
Outils/GitHubGitHub/manizada/pppoeject
Escalade de PrivilègesCriminalistique MémoireAnalyse des VulnérabilitésExploitationArticles et RechercheDéveloppement de Charges UtilesExploitation de Binaires
GitHubmanizada/pppoeject

PPPoEject

PoC d'élévation de privilèges locale du noyau Linux pour CVE-2026-68121, enchaînant PPPoE, FUSE et IP6GRE pour corrompre la mémoire du noyau et obtenir les droits root.

Voir le dépôt
il y a 13h 13mPas encore vérifié

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
Partager

PPPoEject (CVE-2026-68121)

Writeup

[!WARNING] Le PoC est fourni uniquement pour aider les défenseurs, les mainteneurs et les équipes de sécurité autorisées à valider les correctifs, les atténuations, les détections et l'exposition sur des systèmes qu'ils possèdent ou qu'ils sont explicitement autorisés à tester.

Vous êtes seul responsable de vous assurer que votre utilisation de ce matériel est légale, autorisée, contrôlée et effectuée dans un environnement de test isolé.

[!WARNING] Ce PoC est destructeur. Il corrompt délibérément la mémoire du noyau en direct. Un écrasement mal placé peut corrompre de la mémoire noyau sans rapport et bloquer/planter la machine.

À exécuter uniquement dans une VM jetable ou un hôte temporaire.

Le PoC :

  1. Compile des helpers embarqués et localise la base de texte du noyau randomisée avec un canal auxiliaire temporel prefetch/RDTSCP x86-64
  2. construit un porteur AF_PACKET TX-ring contenant de faux objets struct file et prépare une fdtable peuplée vers l'allocation cible
  3. bloque une copie de charge utile PPPoE sur une page FUSE contrôlée par l'attaquant, puis ajoute IP6GRE à un périphérique team vide sur Fedora ou via une chaîne bonding sur Ubuntu
  4. fait en sorte que dev_hard_header() réalloue la tête du skb, puis utilise le pointeur d'en-tête PPPoE obsolète pour rediriger une entrée de fdtable vers le faux fichier, et
  5. ferme le descripteur redirigé, exécute le callback contrôlé, installe les identifiants root et ouvre /bin/sh -p.

Le PoC suppose et cible x86-64 pour simplifier les choses. En théorie, le bug ne devrait pas être spécifique à une architecture, mais il faudrait en porter beaucoup (de la fuite de la base du noyau au reste de la chaîne).

Prérequis

Énumération exhaustive par souci d'exhaustivité :

  • Au moins 4 CPU disponibles (important pour que les workers de l'expéditeur PPPoE, du récupérateur/porteur de fdtable, du bloqueur FUSE et de l'orchestrateur de déclenchement/libération effectuent un travail critique en termes de timing avec moins d'interférence du planificateur)
  • Fedora 44 avec 6.19.10-300.fc44.x86_64, ou Ubuntu 24.04 avec 6.8.0-124-generic ou 6.8.0-136-generic (vous pouvez essayer de supprimer ces vérifications, mais d'autres distributions/versions de noyau peuvent nécessiter une personnalisation/préparation par cible)
  • Un compte non-root ordinaire avec une entrée passwd et un répertoire personnel qu'il possède
  • Un CPU Intel ou AMD x86-64 avec RDTSCP, KPTI/PTI inactif, et au moins quatre CPU logiques dans le masque d'affinité du processus
  • La création non privilégiée de namespaces utilisateur/réseau avec CAP_NET_ADMIN et CAP_NET_RAW à l'intérieur de ce namespace
  • Un accès en lecture/écriture à /dev/fuse, plus le support FUSE, PPPoE, IP6GRE, AF_PACKET/TX-ring et team sur Fedora ou bonding sur Ubuntu
  • membarrier privé accéléré pour certaines dispositions d'ordre faible
  • Des périphériques Dummy et 802.1Q VLAN pour certaines dispositions d'ordre élevé
  • Une limite stricte RLIMIT_NOFILE suffisamment grande pour la géométrie de porteur sélectionnée, vérifiée à l'exécution et pouvant nécessiter jusqu'à 8 192 descripteurs

Testé uniquement avec 4 Go de RAM et divers nombres de CPU de 4+. D'autres combinaisons CPU/mémoire peuvent nécessiter plus de préparation et/ou peuvent rediriger l'écriture vers de la mémoire sans rapport.

Exécutez-le en tant qu'utilisateur non privilégié avec une entrée passwd. La conversion Ubuntu peut prendre un certain temps (par exemple, plus de 300 tentatives).

Utilisation

root@kitploit:~
python3 pppoeject_root_repro.py
Télécharger l’outil
  • Divers éléments d'espace utilisateur (que les distributions testées dans le périmètre devraient majoritairement avoir par défaut) : Python 3.10+, gcc avec les en-têtes de développement libc et Linux UAPI, taskset, unshare, ip, true et /bin/sh, plus aa-exec et le profil trinity chargé sur Ubuntu si unshare -Urn direct est refusé