
# Copy Fail (CVE-2026-31431) LPE-Exploit. Eine saubere, Multi-Arch-Python-Neuimplementierung, die die AF_ALG-Page-Cache-Schwachstelle im Linux-Kernel angreift.
Lokale Privilegieneskalation auf Linux-Kerneln von 4.11 bis (ausschließlich) den gepatchten 6.18-Versionen.
Der Fehler liegt in der AF_ALG-Socket-Schnittstelle des Kernels – insbesondere darin, wie authencesn Scatter-Gather-Listen während der In-Place-AEAD-Entschlüsselung verarbeitet. Das Ergebnis: Ein unprivilegierter Benutzer kann jeweils 4 Bytes im Page Cache einer beliebigen lesbaren Datei überschreiben.
Überschreibe eine setuid-Binärdatei wie /usr/bin/su mit Shellcode, führe sie aus, und du bist root. Kein Race, keine Kernel-Symbole, keine Neukompilierung. Derselbe 172-Byte-AArch64-Payload (oder 160 für x86-64, 126 für i386, 138 für ARMv7) funktioniert über alle Distributionen hinweg.
Die Schwachstelle wurde von Taeyang Lee & Theori / Xint Code entdeckt und am 29. April 2026 veröffentlicht. Dieses Repository ist eine unabhängige, klassenbasierte Neuimplementierung für autorisierte Tests.
| Schwachstelle prüfen | Ausnutzen und Root erhalten |
|---|---|
![]() | ![]() |
allowPrivilegeEscalation: true (der Kubernetes-Standard) kann ausbrechen.Alles, was einen Kernel zwischen 4.11 und ungefähr 6.17.x ausführt, einschließlich:
Gepatchte Kernel: Mainline ≥ 6.18.22 / 6.19.12 / 7.0, plus Backports zu stabilen Zweigen.
# Prüfen, ob das System verwundbar ist
python3 exploit.py --check
# Exploit ausführen (Nicht-Root-Benutzer erforderlich)
python3 exploit.py
os.splice ab 3.10)authencesn(hmac(sha256),cbc(aes))-Unterstützung/usr/bin/su ist der Standard; verwende --scan, um Alternativen zu finden)Wenn die Prüfung sich über den Algorithmus beschwert, lade die benötigten Module:
sudo modprobe algif_aead authencesn hmac cbc
Einige Distributionen liefern einen temporären Block aus (/etc/modprobe.d/disable-algif_aead.conf). Das Skript entfernt ihn automatisch, wenn es als Root ausgeführt wird, oder du kannst ihn von Hand löschen.
Permanent: Aktualisiere deinen Kernel. Auf Ubuntu/Debian:
sudo apt update && sudo apt upgrade linux-image-generic
Workaround (beeinträchtigt IPsec/XFRM nicht):
echo "install algif_aead /bin/false" | sudo tee /etc/modprobe.d/disable-algif-aead.conf
sudo rmmod algif_aead 2>/dev/null
Hinweis: IPsec/XFRM ist nicht von diesem Block betroffen, da es die Kernel-Krypto-API direkt verwendet, nicht AF_ALG.
Container:
Die primäre Abschwächung besteht darin, den AF_ALG-Socket mit einem seccomp-Profil zu blockieren. Setze zusätzlich allowPrivilegeEscalation: false in deinem Pod-Sicherheitskontext, um no_new_privs zu aktivieren, was den Kernel daran hindert, setuid-Bits bei execve() zu berücksichtigen.
Dieses Tool dient Bildungs- und autorisierten Sicherheitstests. Führe es nicht auf Systemen aus, die dir nicht gehören oder für die du keine schriftliche Testgenehmigung hast.