Skip to content
KitploitKITPLOIT
ToolsExploitsBlog
Log in
Einreichen
ToolsExploitsBlog
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.

FeedsKontaktDatenschutz© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
CVE-2026-31431 — Golang-Neufassung des Exploits für die lokale Rechteausweitung Copy Fail (CVE-2026-31431), der den Page Cache beschädigt, um Root-Rechte auf Linux-Systemen zu erlangen. | Kitploit
Tools/GitHubGitHub/gr-1m/cve-2026-31431
Privilege EscalationExploit-FrameworksSchwachstellenanalyseExploitationContainer-AusbruchBinary-Exploitation
GitHubgr-1m/cve-2026-31431

CVE-2026-31431

Golang-Neufassung des Exploits für die lokale Rechteausweitung Copy Fail (CVE-2026-31431), der den Page Cache beschädigt, um Root-Rechte auf Linux-Systemen zu erlangen.

Repository anzeigen
127vor 5 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

CVE-2026-31431 — Copy Fail

中文版

732 Bytes bis Root auf jeder großen Linux-Distribution

CVE-2026-31431 (Copy Fail) ist ein Logikfehler in der kryptografischen Vorlage authencesn des Linux-Kernels. Er ermöglicht es einem nicht privilegierten lokalen Benutzer, einen deterministischen, kontrollierten 4-Byte-Schreibvorgang in den Page Cache einer beliebigen lesbaren Datei auf dem System auszulösen.

Übersicht

  • CVE-ID: CVE-2026-31431
  • Typ: Lokale Privilegienerweiterung / Container-Escape
  • Betroffen: Linux-Kernel mit CONFIG_CRYPTO_AUTHENC (praktisch alle großen Distributionen seit 2017)
  • Entdeckt von: Xint Code Research Team, mit ersten Erkenntnissen von Theori-Forscher Taeyang Lee

Funktionsweise

Der Fehler verknüpft zwei Verhaltensweisen:

  1. AF_ALG + splice: splice() überträgt Page-Cache-Seiten per Referenz in die Scatterlist eines AF_ALG-Sockets. Im In-Place-Modus der AEAD-Entschlüsselung bleiben die Tag-Seiten (aus dem Page Cache der Zieldatei) über sg_chain() mit der Ausgabe-Scatterlist verkettet.

  2. authencesn Scratch-Schreibvorgang: crypto_authenc_esn_decrypt() verwendet dst[assoclen + cryptlen] (hinter dem Tag, in den Page-Cache-Seiten) als Scratch-Bereich für die Neuordnung der ESN-Sequenznummer, schreibt 4 vom Angreifer kontrollierte Bytes und stellt sie nie wieder her.

Die beschädigte Seite wird niemals als dirty markiert, sodass die Datei auf der Festplatte unverändert bleibt. Aber der In-Memory-Page-Cache ist das, was tatsächlich gelesen wird — wodurch die Korruption systemweit sofort sichtbar wird.

Exploit

Der Exploit beschädigt den Page Cache von /usr/bin/su (oder einer beliebigen setuid-Binärdatei) mit einem kleinen Shellcode-Payload, jeweils 4 Bytes auf einmal. Nach allen Iterationen führt su den Payload aus und öffnet eine Root-Shell.

Python (exp.py)


Erfordert Python 3.10+ (für `os.splice`). Verwendet nur Module der Standardbibliothek.
python3 exp.py

Golang (exp.go)


Keine Python-Abhängigkeit. Kompilieren und ausführen:
go run exp.go
go build -ldflags "-w -s" -trimpath -o exp exp.go

tinygo build -o exp exp.go

Auswirkungen

FähigkeitDetails
PortabelDasselbe Skript funktioniert auf Ubuntu, Amazon Linux, RHEL, SUSE und weiteren — keine distrospezifischen Offsets
WinzigPython-Exploit ist ~732 Bytes
UnauffälligUmgeht den VFS-Schreibpfad; Seite wird nie als dirty markiert; Prüfsummen auf der Festplatte bleiben unverändert
Container-übergreifendDer Page Cache wird zwischen Containern geteilt — Container-Escape-Vektor (siehe Teil 2)

Referenzen

  • copy.fail — Offizielles Advisory
  • Xint Blog — Copy Fail: 732 Bytes to Root
  • NVD-Eintrag
  • Rewrite in C

Haftungsausschluss

Dieses Repository wird ausschließlich zu Bildungs- und Verteidigungsforschungszwecken veröffentlicht. Verwenden Sie diesen Code nicht auf Systemen, die Ihnen nicht gehören oder für die Sie keine ausdrückliche Testberechtigung haben.

Tool herunterladen