
# Forschungs-Repository zur Abwehr von CVE-2026-31431, einer lokalen Privilegieneskalation im Linux-Kernel durch Page-Cache-Korruption über AF_ALG, splice() und authencesn. Enthält technische Analyse, Erkennungsstrategien und Gegenmaßnahmen.
Copy Fail (CVE-2026-31431) ist eine Local Privilege Escalation (LPE)-Schwachstelle, die den Linux-Kernel über eine kontrollierte Korruption des Page Cache durch die Mechanismen AF_ALG, splice() und authencesn betrifft.
Dieses Repository hat zum Ziel:
⚠️ Dieses Projekt dient ausschließlich Bildungs-, Verteidigungs- und Sicherheitsforschungszwecken.
Alle in diesem Repository vorgestellten Demonstrationen wurden in isolierten und kontrollierten Laborumgebungen durchgeführt.
Eine Nutzung auf Drittsystemen ohne ausdrückliche Genehmigung ist nicht gestattet.
| Merkmal | Detail |
|---|---|
| Keine Race Condition | Deterministische Ausnutzung |
| Keine Änderung auf der Platte |
Vergleichbar mit:
User Space
↓
AF_ALG Socket
↓
splice()
↓
Page Cache Reference
↓
authencesn In-Place Write
↓
Controlled 4-Byte Overwrite
↓
execve()
↓
Privilege Escalation
2011 → authencesn ajouté au kernel
2015 → AF_ALG reçoit le support AEAD + splice()
2017 → Optimisation in-place dans algif_aead.c
2026 → Découverte et correctif officiel
AF_ALGSocket-Schnittstelle, die die kryptografischen Primitiven des Linux-Kernels dem Userspace bereitstellt.
splice()Mechanismus zur kopiefreien Übertragung von Seiten zwischen Dateideskriptoren.
authencesnAEAD-IPsec-ESN-Template, das den Zielpuffer als temporären Arbeitsbereich verwendet.
Die in algif_aead.c eingeführte Optimierung ermöglichte die direkte Verkettung der Page-Cache-Seiten in der Ziel-Scatterlist über sg_chain().
Input SGL: AAD || Ciphertext || Tag (page cache)
↑
Output SGL: AAD || Ciphertext ------+
authencesn schreibt dann direkt in die Page-Cache-Seiten der Zieldatei.
| Primitive | Kontrolle |
|---|---|
| Zieldatei | Jede lesbare Datei |
⚠️ Nur für isolierte Testumgebungen.
uname -r
lsmod | grep algif_aead
python3 --version
git clone https://github.com/theori-io/copy-fail-CVE-2026-31431.git
cd copy-fail-CVE-2026-31431
python3 copy_fail_exp.py
auditctl -a always,exit -F arch=b64 -S socket -F a0=38 -k af_alg_socket
auditctl -a always,exit -F arch=b64 -S splice -k splice_monitor
ps aux | awk '$1 == "root"'
ss -tlnp
algif_aeadecho "install algif_aead /bin/false" | sudo tee /etc/modprobe.d/disable-algif-aead.conf
sudo rmmod algif_aead
{
"defaultAction": "SCMP_ACT_ALLOW",
"syscalls": [
{
"names": ["socket"],
"action": "SCMP_ACT_ERRNO",
"args": [
{ "index": 0, "value": 38, "op": "SCMP_CMP_EQ" }
]
}
]
}
Der Patch a664bf3d603d entfernt die verwundbare In-Place-Operation in algif_aead.c.
sudo apt update && sudo apt upgrade
sudo reboot
| Datum | Ereignis |
|---|---|
| 2017 | Einführung der Schwachstelle |
| 2026-03-23 | Meldung an das Kernel-Sicherheitsteam |
| 2026-04-01 | Patch integriert |
| 2026-04-29 | Öffentliche Offenlegung |
linux kernel security, CVE-2026-31431, copy fail, page cache, AF_ALG, authencesn, linux LPE, kernel exploit, linux hardening, security research, dirty pipe, kernel mitigation
Dieses Repository dient ausschließlich:
Jede unbefugte Nutzung ist illegal.
🛡️ Bewusstsein • Mitigation • Defensive Forschung
🔁 Teile das Projekt mit der Cybersicherheits-Community
⭐ Unterstütze die Linux-Sicherheitsforschung
| Element | Wert |
|---|
| Typ | Local Privilege Escalation |
| Auswirkung | Lokaler Root |
| Komponente | Linux-Kernel |
| Subsystem | AF_ALG / authencesn |
| Primitive | Kontrolliertes Schreiben in den Page Cache |
| Bedingung | Nicht privilegierter Benutzer |
| Tarnung | Datei auf der Platte unverändert |
| Schweregrad | Kritisch |
| Schwer zu erkennen |
| Minimalistischer Exploit | Nur Standard-Python |
| Container-Auswirkung | Kubernetes / VPS / Shared Hosting |
| Großes Zeitfenster | Verwundbare Kernel seit 2017 |
| Offset |
| Über splice gesteuert |
| Geschriebener Wert | Feld seqno_lo |
| Persistenz | Nur Speicher |
| Erkennung auf der Platte | Unmöglich |
| Distribution | Kernel | Status |
|---|
| Ubuntu 24.04 LTS | 6.17.0-1007-aws | ✅ Verwundbar |
| Amazon Linux 2023 | 6.18.8-9.213 | ✅ Verwundbar |
| RHEL 10.1 | 6.12.0 | ✅ Verwundbar |
| SUSE 16 | 6.12.0 | ✅ Verwundbar |
| Ressource | Beschreibung |
|---|
| Dirty Pipe | CVE-2022-0847 |
| Linux-Kernel-Docs | Offizielle Dokumentation |
| Openwall Security | Sicherheits-Mailingliste |
| LWN.net | Linux-Kernel-Analyse |
| AF_ALG-Dokumentation | Crypto-API |
| XFRM / IPsec | Betroffenes Subsystem |