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
CVE-2026-23111-nftables-lab — Vérificateur d'exposition et laboratoire VM jetable sécurisé pour CVE-2026-23111 (escalade de privilèges locale use-after-free dans nf_tables Linux). Défensif : détection, mitigation, laboratoire multi-distributions. Pas d'exploit. | Kitploit
Outils/GitHubGitHub/ishankaru/cve-2026-23111-nftables-lab
Escalade de PrivilègesAnalyse des VulnérabilitésAudit de ConfigurationApprentissage et ÉducationRessources OrganiséesÉvasion de ConteneurLabs et Pratique
GitHubishankaru/cve-2026-23111-nftables-lab

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

CVE-2026-23111-nftables-lab

Vérificateur d'exposition et laboratoire VM jetable sécurisé pour CVE-2026-23111 (escalade de privilèges locale use-after-free dans nf_tables Linux). Défensif : détection, mitigation, laboratoire multi-distributions. Pas d'exploit.

Voir le dépôt
29il y a 3 moisPas encore vérifié

CVE-2026-23111 nf_tables LPE : vérification d'exposition et laboratoire sécurisé

Outils défensifs et un laboratoire reproductible de machine virtuelle pour CVE-2026-23111, l'escalade de privilèges locale use-after-free de nf_tables dans le noyau Linux (une vérification inversée d'activité d'élément dans nft_map_catchall_activate(), le bogue "off by !" ). Un utilisateur local non privilégié peut escalader vers root et s'échapper d'un conteneur, via les espaces de noms utilisateur non privilégiés.

Ce dépôt ne contient aucun exploit. Il contient un vérificateur d'exposition en lecture seule, un script pour créer un utilisateur véritablement non privilégié, et des définitions de VM pour que vous puissiez atteindre le bogue en toute sécurité et étudier la recherche publique. La chaîne complète vers root se trouve dans les divulgations liées ci-dessous, pas ici.

Article complet : https://techearl.com/cve-2026-23111-nftables-lpe

Fichiers

  • check-exposure.sh — détecteur en lecture seule : version du noyau par rapport à la version corrigée, présence de nf_tables, précondition d'espace de noms utilisateur non privilégié, et signatures de crash dans le journal du noyau.
  • setup-unprivileged-user.sh — crée un labuser sans sudo et prouve qu'il est non privilégié. L'intérêt d'un test d'escalade de privilèges locale (LPE) est de partir d'un utilisateur qui ne peut pas déjà devenir root.
  • Vagrantfile — machines virtuelles jetables Debian 12 et AlmaLinux 10 (les distributions que Multipass ne peut pas lancer).

Pourquoi une VM et pas un conteneur

Un conteneur partage le noyau hôte. Exécuter un exploit du noyau dans un conteneur l'exécute contre votre vrai noyau hôte, donc un « test » peut compromettre la machine réelle. Utilisez une machine virtuelle jetable avec son propre noyau.

Distributions et lanceurs

Multipass ne lance que Ubuntu, c'est pourquoi les autres utilisent Vagrant.

Épingler un noyau vulnérable (par distribution)

Chaque distribution a nécessité une astuce différente pour démarrer un noyau véritablement antérieur au correctif qui a toujours un réseau fonctionnel sur une VM cloud :

  • Ubuntu (cloud) : utilisez un ancien linux-aws, pas linux-generic. Le noyau générique manque du pilote de carte réseau AWS ENA et perd la connexion SSH sur une instance Nitro. sudo apt install -y linux-image-6.8.0-1028-aws (en dessous du corrigé 6.8.0-1051), définissez-le par défaut dans GRUB, redémarrez. Sur une virtualisation locale, le noyau générique convient.
  • Debian : le dépôt principal ne contient que le noyau actuel (corrigé). Ajoutez un miroir snapshot antérieur au correctif et installez le noyau cloud (conserve ENA) : deb [check-valid-until=no trusted=yes] https://snapshot.debian.org/archive/debian/20251201T000000Z/ bookworm main, puis apt install -y linux-image-6.1.0-39-cloud-amd64=6.1.148-1 (en dessous du corrigé 6.1.164-1, DSA-6163-1).
  • AlmaLinux/Rocky : les noyaux vulnérables el10_1 se trouvent dans le coffre 10.1. Pointez dnf vers https://vault.almalinux.org/10.1/BaseOS/x86_64/os/ et , puis .

Exécution (n'importe quelle VM)

root@kitploit:~
# 1. Create a real unprivileged user and prove it cannot sudo.
#    (useradd, not Debian's adduser, so it works on RHEL too.)
sudo bash setup-unprivileged-user.sh labuser

# 2. Exposure verdict.
sudo ./check-exposure.sh

# 3. As labuser, the precondition, then the public nft trigger inside a netns.
sudo -u labuser unshare -Ur id     # uid=0 in a new userns = precondition open
                                   # (denied on stock Ubuntu 24.04 = mitigation working)

# The public FuzzingLabs trigger (catchall GOTO + aborted batch). Inlined here as
# documentation; this repo does not ship an executable exploit/trigger file.
sudo -u labuser unshare -Urn bash -c '
  nft add table inet t; nft add chain inet t c
  nft add map inet t m "{ type ipv4_addr : verdict; }"
  nft add element inet t m "{ * : goto c }"
  printf "delete element inet t m { * }\ndelete element inet t m { 1.2.3.4 }\n" > /tmp/b.nft
  nft -f /tmp/b.nft; nft flush ruleset'

Cette séquence exécute le chemin d'abandon bogué ; elle n'inclut pas de chaîne d'escalade de privilèges, et sur un noyau standard elle est silencieuse (voir ci-dessous).

Ce que j'ai réellement observé (trois variantes, authentiques)

Le constat honnête sur le déclencheur : sur un noyau de production standard, il est silencieux. Il exécute le chemin d'abandon bogué sans crash ni sortie dmesg, même en boucle avec libération et réutilisation. La sortie KASAN: slab-use-after-free dans les articles provient d'un noyau KASAN/debug ; l'exploitation de l'use-after-free latent nécessite le heap spray de l'exploit (pas dans ce dépôt). Le laboratoire prouve que l'utilisateur non privilégié atteint le bogue, montre la restriction par défaut AppArmor d'Ubuntu bloquant ce chemin, et donne un verdict clair EXPOSÉ / ATTÉNUÉ / corrigé. Il ne vous donne pas un shell root, par conception.

Atténuation

Restreignez les espaces de noms utilisateur non privilégiés (ferme le chemin réaliste pour les exploits publics), puis corrigez le noyau.

root@kitploit:~
# Ubuntu 23.10+ (AppArmor-based, keeps legitimate userns users working):
echo "kernel.apparmor_restrict_unprivileged_userns=1" | sudo tee /etc/sysctl.d/99-restrict-userns.conf
sudo sysctl --system

# Elsewhere (blanket disable; set both on Debian/Ubuntu):
printf 'kernel.unprivileged_userns_clone=0\nuser.max_user_namespaces=0\n' | sudo tee /etc/sysctl.d/99-restrict-userns.conf
sudo sysctl --system

# Patch (Ubuntu 24.04 generic fixed at 6.8.0-107.107):
sudo apt update && sudo apt install --only-upgrade linux-image-generic && sudo reboot

Références

  • NVD: https://nvd.nist.gov/vuln/detail/CVE-2026-23111
  • Exodus Intelligence "Off By !": https://blog.exodusintel.com/2026/06/08/off-by-exploiting-a-use-after-free-in-the-linux-kernel/
  • FuzzingLabs reproduction: https://fuzzinglabs.com/repro-cve-2026-23111/
  • Ubuntu: https://ubuntu.com/security/CVE-2026-23111
  • Red Hat: https://access.redhat.com/security/cve/cve-2026-23111
  • Debian: https://security-tracker.debian.org/tracker/CVE-2026-23111

Licence

MIT. Utilisation défensive et éducative.

Télécharger l’outil
DistributionLancement avecPourquoi
Ubuntu 24.04 / 22.04Multipass (Ubuntu uniquement)Exodus reproduit sur les deux ; 24.04 intègre la restriction d'espace de noms utilisateur AppArmor par défaut, donc elle montre l'atténuation.
Debian 12Vagrant (vagrant up debian)Exodus reproduit dessus ; espaces de noms utilisateur non privilégiés ouverts par défaut.
AlmaLinux / Rocky 10.1Vagrant (vagrant up alma)Correspond au noyau cible de FuzzingLabs 6.12.0-124.x.el10, donc leur déclencheur public se reproduit tel que publié.
dnf install kernel-6.12.0-124.38.1.el10_1
grubby --set-default
DistributionNoyau vulnérable démarréuserns par défautVerdict
Ubuntu 24.046.8.0-1028-awsrestreint (AppArmor)ATTÉNUÉ, pas corrigé
Debian 126.1.0-39-cloud (6.1.148-1)ouvertEXPOSÉ
AlmaLinux 10.16.12.0-124.38.1.el10_1ouvertEXPOSÉ