Der dritte schwerwiegende Fehler im Linux-Kernel innerhalb von zwei Wochen wurde entdeckt - dank KI
KI deckt Sicherheitslücken in Linux schneller auf, als Entwickler sie beheben können. Fragnesia ist der jüngste Fall. Hier ist, was wir darüber wissen.
Wichtige Erkenntnisse
- Ein weiterer schwerwiegender Fehler im Linux-Kernel ist aufgetreten.
- Fragnesia kann unbefugten Nutzern Root-Rechte verleihen.
- Es werden voraussichtlich weitere Sicherheitsfehler im Zusammenhang mit Open Source auftreten.
Laut dem Linus’schen Gesetz ist „Wenn genügend Augen darauf schauen, sind alle Fehler oberflächlich“ grundlegend für Open Source.
Leider stecken dank KI-Tools zur Fehlersuche wie Claude Mythos und OpenAI Daybreak hinter den meisten dieser „Augen“ KI-Engines - und diese erweisen sich als viel schneller darin, Sicherheitsprobleme zu erkennen als Menschen.
So ist nun die neueste ernsthafte Schwachstelle im Linux-Kernel, Fragnesia, aufgetreten. Es ist die dritte ernsthafte lokale Root-Schwachstelle in den letzten zwei Wochen.
Fragnesia erzeugt Root auf allen wichtigen Distributionen
In der Tradition von „Copy Fail“ und „Dirty Frag“ ermöglicht dieser Fehler bei der Seitencache-Verwaltung unprivilegierten Benutzern einen zuverlässigen Weg, volle Root-Rechte auf betroffenen Systemen zu erlangen. Und welche Systeme sind das, fragen Sie? Laut AlmaLinux gewährt „Fragnesia“ sofort Root-Rechte auf allen wichtigen Linux-Distributionen. Im Grunde können also alle Linux-Distributionen ins Visier genommen und erfolgreich gehackt werden. Machen wir uns jetzt Spaß oder was?
Der Fehler wurde diese Woche von dem KI-Sicherheitsunternehmen Zellic aufgedeckt. William Bowling sowie weitere Forscher nutzten dazu das KI-gestützte Audit-Tool V12 des Unternehmens. Der Fehler nutzt einen logischen Fehler im Linux-Subsystem XFRM (Abkürzung für „Transform“) im Kontext von ESP-in-TCP aus, um beliebige Bytes in den Kernel-Seitencache von read-only-Dateien zu schreiben - ohne dass dazu eine Race Condition erforderlich wäre.
Dies eröffnet die Möglichkeit für eine lokale Privilegieneskalation sowie potenzielle Container-Ausbrüche in Multi-Tenant-Umgebungen.
Im Gegensatz zu klassischen Exploits für Race-Conditions ermöglichen diese Schwachstellen Angreifern, Datei-gestützte Seiten gezielt zu manipulieren - ohne zeitliche Tricks. Dadurch werden Angriffe zuverlässiger und leichter ausführbar, sobald ein Proof-of-Concept-Code verfügbar ist.
Es existiert ein Proof-of-Concept-Exploit.
Übrigens gibt es bereits ein Proof-of-Concept-Exploit. Dieses erstellt eine Lookup-Tabelle mit 256 Einträgen, die alle möglichen Schlüsselstrom-Bytes den entsprechenden Nonces zuordnet. Anschließend kopiert der Angriff eine bösartige Payload, die die ersten 192 Bytes des „Switch User“-Befehls im Seitencache mit einem kleinen ELF-Code überschreibt; dieser Code ruft anschließend „setresuid“ auf und startet eine Shell.
Mit anderen Worten: Für diejenigen unter Ihnen, die keine Linux-Experten sind, bringt es den Angreifer sofort in eine Root-Shell.
Das sind sehr schlechte Nachrichten. Es bedeutet, dass ein lokaler Benutzer Superuser- (Root-)Rechte erlangen könnte. Red Hat vergibt dafür einen Wert von 7,8 im Common Vulnerability Scoring System (CVSS); dies macht es zu einem schwerwiegenden Sicherheitsfehler.
Genauso schlimm ist, dass Fragnesia zwar technisch gesehen ein lokales Privileg-Escalation-Problem darstellt, seine Auswirkungen in modernen Cloud-Architekturen, in denen eine große Anzahl nicht vertrauenswürdiger Container auf gemeinsam genutzten Linux-Kerneln laufen, dramatisch zunehmen.
Wenn ein Angreifer hier Code in einem Container oder unter einem eingeschränkten Benutzerkonto ausführen kann, dabei aber weiterhin Namespaces und Netzwerkstapel erstellen kann, dann könnte er volle Root-Rechte auf dem Host erlangen und von dort aus die virtuellen Maschinen oder Container anderer Benutzer angreifen.
Wie man Fragnesia abmildern kann
Kernel-Entwickler sowie Betreuer von Distributionen arbeiten derzeit daran, den ESP-in-TCP-Codepfad zu verstärken. Die vorgeschlagenen Korrekturen zielen darauf ab, In-Place-Transformationen auf geteilten, dateibasierten Seiten zu verhindern sowie die Verarbeitung von Fragmenten zu verbessern. Ein Upstream-Patch zur Behebung des „Fragnesia“-Problems ist mittlerweile verfügbar. Bis zum 13. Mai ist er jedoch in keiner Distribution enthalten.
In der Zwischenzeit können Sie das Problem beheben, indem Sie den folgenden Befehl als Root ausführen:
# rmmod esp4 esp6 rxrpc
# printf ‘install esp4 /bin/false\ninstall esp6 /bin/false\ninstall rxrpc /bin/false\n’ > /etc/modprobe.d/fragnesia.conf
Wenn Sie das jedoch tun, deaktivieren Sie auch IPsec - was bedeutet, dass Ihre Linux-basierten virtuellen privaten Netzwerke (VPNs) nicht mehr funktionieren werden. Herrlich, einfach herrlich.
Laut Red Hat können Sie stattdessen den folgenden Befehl als Root ausführen:
# echo „user.max_user_namespaces=0 “ > /etc/sysctl.d/dirtyfrag.conf sysctl -system
Hier gibt es jedoch ein weiteres Problem: Es deaktiviert die Namespaces für nicht privilegierte Benutzer, was auch rootlose Container, in Sandboxes laufende Browser sowie Flatpak beeinflussen kann.
Es ist immer irgendetwas!
Warten Sie, bis Ihre Distribution ein Patch bereitstellt.
Es wäre wohl besser, einfach abzuwarten, bis Ihre Distribution ein Update bereitstellt. Ich weiß, dass die meisten großen Distributionen das Update bereits im Beta-Test haben - es würde mich also nicht überraschen, wenn ab dem 14. Mai gepatchte Linux-Kernel verfügbar wären. An diesem Tag sollten Sie Ihre Systeme umgehend aktualisieren.
Warum passiert das?
Ich werde später noch näher darauf eingehen, aber fürs Erste genügt es zu sagen, dass Chris Wright, der CTO von Red Hat, und ich heute früh ausführlich über dieses Thema gesprochen haben. Im Kern geht es darum, dass unsere KI-basierten Fehlererkennungstools mittlerweile in der Lage sind, echte Fehler zu erkennen - und zwar deutlich besser als noch vor ein paar Wochen.
Das bedeutet:
- Wir können erwarten, in den nächsten Monaten noch viele solcher Sicherheitslücken entdeckt zu sehen.
- Wir müssen viel schneller werden, um Fehler zu beheben, sobald sie auftreten.
Übrigens ist das nicht nur ein Problem für Linux. Es stellt ein Problem für alle Open-Source-Software dar - und da KI immer besser darin wird, Binärcode zu reverse-engineeren, müssen auch Windows- und andere proprietäre Softwareentwickler ihre Reparaturfähigkeiten verbessern.
