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.

··Feeds·Kontakt·Datenschutz·© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
COPY-FAIL — Copy Fail - CVE-2026-31431 - Gehärtete C-Implementierung für Redteam- und autorisierte Penetrationstest-Operationen. ⚠️ Rechtlicher Hinweis: Dieses Tool ist ausschließlich für autorisierte Sicherheitsforschung, autorisierte Penetrationstests und defensive Analysen bestimmt. Verwenden Sie es nur auf Systemen, die Ihnen gehören oder für die Sie eine ausdrückliche schriftliche Erlaubnis zum Testen haben. Unbefugter Zugriff auf Computersysteme ist illegal. | Kitploit
Tools/GitLabGitLab/toxy4ny/copy-fail
Privilege EscalationExploitationPost-ExploitationCommand and ControlRed TeamingPayload-EntwicklungBinary-Exploitation
GitLabtoxy4ny/copy-fail

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →

Über

Copy Fail - CVE-2026-31431 - Gehärtete C-Implementierung für Redteam- und autorisierte Penetrationstest-Operationen. ⚠️ Rechtlicher Hinweis: Dieses Tool ist ausschließlich für autorisierte Sicherheitsforschung, autorisierte Penetrationstests und defensive Analysen bestimmt. Verwenden Sie es nur auf Systemen, die Ihnen gehören oder für die Sie eine ausdrückliche schriftliche Erlaubnis zum Testen haben. Unbefugter Zugriff auf Computersysteme ist illegal.

COPY-FAIL

Repository anzeigenWebseite
110vor 2 MonatenNoch nicht geprüft
Teilen

Copy Fail -- CVE-2026-31431

Gehärtete C-Implementierung für Redteam-Operationen und autorisierte Penetrationstests.

⚠️ Rechtlicher Hinweis: Dieses Tool ist ausschließlich für autorisierte Sicherheitsforschung, autorisierte Penetrationstests und defensive Analysen bestimmt. Verwenden Sie es nur auf Systemen, die Ihnen gehören oder für die Sie eine ausdrückliche schriftliche Genehmigung zum Testen haben. Unautorisierter Zugriff auf Computersysteme ist illegal.

🚀 Die primäre Entwicklung wurde zu GitLab verlegt.
Dieses Repository wird hier aktiv weiterentwickelt. Für Issues und Beiträge nutzen Sie bitte GitLab.


Inhaltsverzeichnis

  • Überblick
  • Originalforschung
  • Unsere Verbesserungen
  • Architektur
  • Build
  • Verwendung
  • Module
  • Operative Sicherheit
  • Erkennung & Gegenmaßnahmen
  • Danksagungen
  • Lizenz

Überblick

Dieses Projekt ist eine gehärtete, produktionsreife C-Portierung des CVE-2026-31431 ("Copy Fail") Local Privilege Escalation Exploits, der ursprünglich von Theori und Xint am 29. April 2026 veröffentlicht wurde.

Der ursprüngliche Proof-of-Concept war in Python geschrieben und für Forschungsdemonstrationen ausgelegt. Diese Implementierung wandelt ihn in ein Redteam-taugliches Toolkit um, mit:

  • Keine Festplattenartefakte (memfd-basierte dateilose Ausführung)
  • Automatische Zielerkennung (setuid-Binär-Enumeration mit MAC-Bewusstsein)
  • Anti-Forensik (Cache-Verwerfung, Zeitstempel-Wiederherstellung, Selbstzerstörung)
  • Operator-Steuerung (signalgesteuerte Ausführung mit konfigurierbaren Timeouts)
  • Plattformübergreifende statische Builds (x86_64, ARM64, RISC-V via musl/zig)

Originalforschung

CVE-2026-31431: Copy Fail

AttributWert
Bekanntgabedatum29. April 2026
ForscherTheori (Jinoh Kang, Yonghwi Jin, Seunghyun Lee), Xint
Writeuphttps://copy.fail/
Original PoCtheori-io/copy-fail-CVE-2026-31431 (Python)
C Port (Basis)tgies/copy-fail-c von Tony Gies
Betroffene KernelLinux 4.14 – 6.14 (vor Fix-Commit a664bf3d603d)
SchweregradCVSS 7.8 (Hoch) – Lokale Privilegieneskalation

Schwachstellenmechanismus

Die Schwachstelle befindet sich im AF_ALG-Krypto-Subsystem des Linux-Kernels. Die AEAD-Vorlage authencesn implementiert eine In-Place-Optimierung für die Entschlüsselung: Wenn der Chiffretext über splice() aus dem Page-Cache einer Datei geliefert wird, verwendet der Kernel dieselbe Seite sowohl als Quelle als auch als Ziel.

Der Angriffsablauf:

  1. Eine setuid-Binärdatei (z. B. /usr/bin/su) schreibgeschützt öffnen
  2. Über AF_ALG eine authencesn(hmac(sha256),cbc(aes))-AEAD-Operation einrichten
  3. Chiffretext über splice() aus dem Page-Cache der Zieldatei bereitstellen
  4. Die (fehlschlagende) Entschlüsselungsoperation überschreibt 4 Bytes der Page-Cache-Seite, bevor die Authentifizierung sie ablehnt
  5. Für jedes 4-Byte-Fenster der Nutzlast wiederholen
  6. execve() auf das Ziel ausführen – der Kernel lädt mutierte Seiten aus dem Cache und gewährt setuid-root-Berechtigungen
  7. Die Payload führt zu einer vollständigen Root-Shell

Kernpunkt: Der Inode auf der Festplatte wird niemals verändert. Nur der In-Memory-Page-Cache wird mutiert, was die forensische Erkennung deutlich erschwert als bei herkömmlichen Dateiüberschreib-Exploits.


Unsere Verbesserungen

Dieses Projekt erweitert die ursprüngliche Forschung um Redteam-orientierte Härtungen in neun Modulen.

1. Gehärtetes Exploit-Primitiv (patch_chunk.c)

MerkmalOriginalUnsere Implementierung
Socket-VerwaltungNeuer Socket pro ChunkSocket-Wiederverwendung (~60% weniger Syscalls)
VerifikationKeinemmap + memcmp mit automatischem Wiederholungsversuch (3 Versuche)
Parallele SchreibvorgängeNur sequentiellFork-basiert parallel (bis zu 16 Prozesse)
FehlercodesBinär Erfolg/FehlschlagGranular: 0=verifiziert, 1=gepatchter Kernel, -1=schwerwiegend
Heap-Allokationenmalloc im heißen PfadNur Stack (kein Allokations-Jitter)

2. Automatische Zielerkennung (target_discovery.c)

  • Dreiphasen-Scanning: Prioritätsziele → Standardverzeichnisse → Tiefenscan
  • MAC-bewusste Bewertung: Bestraft Binärdateien mit AppArmor/SELinux-Profilen
  • 18 Prioritätsziele: su, sudo, passwd, pkexec, mount, ping, etc.
  • Fallback-Kette: Falls primäres Ziel fehlschlägt, automatische Auswahl des nächstbesten Kandidaten
  • Snap-Bewusstsein: Überspringt /snap (nicht-traditionelle setuid)

3. Anti-Forensik-Suite (anti_forensics.c)

TechnikZweck
posix_fadvise(POSIX_FADV_DONTNEED)Pro-Datei Page-Cache-Räumung
echo 3 > /proc/sys/vm/drop_cachesGlobaler Cache-Drop (nach Root)
utimensat() TimestompUrsprüngliche atime/mtime wiederherstellen
SelbstzerstörungDropper-Binärdatei vor exec mit Nullen überschreiben
Speicherbereinigungvolatile-Nullung sensitiver Puffer

4. Dateilose Ausführung (memfd_exec.c)

  • memfd_create + fexecve: Ausführung ohne Dateisystempfad
  • Tarnung: memfd benannt als kworker, anon_inode, eventfd (fügt sich in /proc/$pid/fd/ ein)
  • Fork-und-Vergiss: Doppel-Fork zur Erzeugung eines Waisenprozesses (PPID=1)
  • Entschlüsselung im Speicher: XOR und RC4 entschlüsseln-dann-ausführen (Payload niemals im Klartext auf der Festplatte)

5. Stage-1 Payload-Auslieferung (stage1.c)

KanalTarnungGeschwindigkeitFallback-Priorität
EingebettetMaximalSofortLetzter (Airgap)
HTTP direktMittel<1sErster
System curl/wgetNiedrig1-3sZweiter (HTTPS-Support)
DNS TXTHochLangsamDritter (Firewall-Bypass)

6. Stage-2 C2-Implantat (stage2_template.c)

  • Widerstandsfähige Wiederverbindungsschleife mit exponentiellem Backoff
  • Drei Verteilungen: gleichmäßig, dreieckig, exponentieller Jitter
  • Signalsteuerung: SIGUSR1 (auslösen), SIGUSR2 (Status), SIGTERM (Herunterfahren)
  • DNS-Beaconing: Heimliche C2-Health-Check vor TCP-Verbindung
  • Prozess-Maskerade: [kworker/N:0] in ps/top

7. Prozessversteck (proc_hide.c)

  • argv[0]-Überschreiben: In-Place-Ersetzung von /proc/$pid/cmdline
  • prctl(PR_SET_NAME): Kernel-Thread-ähnliche Namen (16-Byte-Limit)
  • Umgebungssanitisierung: Selektives Löschen von SSH_*, AWS_*, TOKEN*, etc.
  • Elternablösung: setsid() + setpgid() für Terminalunabhängigkeit

8. Signal-Trigger-Steuerung (signal_trigger.c)

ModusVerhaltenEinsatzfall
trigger_oneshot()Schlafen → auslösen → ausführen → beendenHit-and-Run
trigger_daemon()Schlafen → auslösen → ausführen → SchleifePersistierendes Implantat
trigger_auto()Schlafen mit Timeout-FallbackUnbeaufsichtigte Operationen

Null-CPU-Warten: sigsuspend() anstelle von Polling-Schleifen.

9. Schlaf-Jitter (sleep_jitter.c)

  • Drei RNG-Backends: getrandom(2), /dev/urandom, rdtsc-Fallback
  • Ablehnungsabtastung: Beseitigt Modulo-Bias bei gleichmäßiger Verteilung
  • Drift-Kompensation: sleep_scheduled() hält das durchschnittliche Intervall trotz Jitter ein
  • Sandbox-Erkennung: check_sandbox_acceleration() erkennt gepatchtes sleep()

Architektur

Tool herunterladen