
Linux-Kernel-Exploit zur Privilegieneskalation für CVE-2026-46242, ein Race-Condition-Use-after-Free in epoll, mit 99 % zuverlässigem Root-Zugriff auf Desktops, Servern und Android-Geräten.

Ein unprivilegierter Prozess eskaliert zu root auf Google kernelCTF.
Bad Epoll (CVE-2026-46242) ist eine Race-Condition-Use-after-Free-Schwachstelle im epoll-Subsystem des Linux-Kernels. Dieser Bug ermöglicht es einem unprivilegierten Prozess, root zu werden – nicht nur auf Linux-Desktops und -Servern, sondern auch auf Android-Geräten.
Bad Epoll wurde von Jaeyoung Chung als 0-day-Einreichung bei Google kernelCTF gemeldet und ausgenutzt, das einen Linux-Kernel-Exploit mit $71.337+ belohnt. Die Bad-Epoll-Einreichung erhielt eine Belohnung von $92.337.
[!NOTE] Anthropics KI Mythos fand einen weiteren Race-Bug im selben epoll-Code, übersah jedoch Bad Epoll.
Ein seltener Bug, der Android rooten kann. Die meisten Linux-Privilegieneskalations-Bugs können Android überhaupt nicht rooten. Copy Fail und seine Varianten beispielsweise benötigen Module, die Android nie lädt. Von den rund 130 auf Googles kernelCTF ausgenutzten Schwachstellen sind nur etwa zehn Kandidaten für das Rooten von Android. Bad Epoll ist einer davon.
Kein Kill-Switch. Copy Fail und seine Varianten können neutralisiert werden, indem ihre anfälligen Module entladen werden, aber epoll bietet keine solche Option. Es ist eine Kernfunktion des Kernels, auf die sich das Betriebssystem, Netzwerkdienste und Browser gleichermaßen verlassen. Die einzige Möglichkeit, es zu beheben, ist das Anwenden des Patches.
Winziges Race-Fenster, aber der Angriff ist zu 99 % zuverlässig. Das Race-Fenster des Bugs ist nur etwa sechs Instruktionen breit, und ein normaler Versuch trifft es fast nie. Der Exploit verbreitert dieses Fenster und führt eine Wiederholungsschleife aus, die den Kernel nie zum Absturz bringt. Das Ergebnis ist ein zu 99 % zuverlässiger Exploit, wie die Angriffsübersicht unten beschreibt.
Ein einzelner Commit aus dem Jahr 2023 führte zwei separate Race-Conditions in den epoll-Code ein, der insgesamt nur etwa 2.500 Zeilen umfasst. Beide entpuppten sich als kritische Bugs, die zu Privilegieneskalation führen können.
Der erste wurde von Anthropics Mythos gefunden und als CVE-2026-43074 gemeldet, mit Details in Anthropics öffentlichem Bericht, ANT-2026-CM0TCREP. Dieses Ergebnis ist für sich genommen beeindruckend, da Kernel-Race-Bugs bekanntermaßen schwer zu finden sind. Es zeigte die Fähigkeit eines Frontier-KI-Modells, Race-Bugs zu finden. Ein unabhängiger Forscher reichte später einen 1-Day-Exploit dafür bei kernelCTF ein.
Die andere Race-Condition ist Bad Epoll, die Mythos übersah. Angesichts der Tatsache, dass Mythos den ersten Bug in diesem kleinen epoll-Codepfad fand, hat es wahrscheinlich denselben Bereich mit beträchtlicher Tiefe untersucht. Wir können nicht genau wissen, warum es Bad Epoll übersah, aber zwei Faktoren machten es wahrscheinlich schwer zu finden.
Das Race-Fenster ist winzig. Es ist nur etwa sechs Instruktionen breit, sodass die genaue Thread-Verschränkung selbst beim Betrachten des anfälligen Codes schwer vorstellbar ist.
Es gab wenig Laufzeitbeweise. Nachdem CVE-2026-43074 behoben ist, löst der Use-after-Free von Bad Epoll normalerweise kein KASAN aus, den wichtigsten Speicherfehler-Detektor des Kernels. Ohne dieses Signal hatte Mythos möglicherweise nicht genug Zuversicht, es als echten Bug zu melden.
Bad Epoll war auch schwer zu beheben. Der erste Patch der Maintainer behob das Problem nicht vollständig, und ein korrekter Patch landete erst zwei Monate nach der ersten Meldung des Bugs. Das ist eine lange Zeit für einen Kernel, der Sicherheitsprobleme normalerweise mit Dringlichkeit behandelt.
Insgesamt zeigt Bad Epoll, wie schwierig Race-Conditions in jeder Phase sind. Sie sind schwer zu finden, selbst für ein Frontier-Modell, schwer korrekt zu beheben und, wie der nächste Abschnitt zeigt, schwer zuverlässig auszunutzen. Es deutet auch auf eine Schwachstellenforschungsrichtung hin, die es wert bleibt, in Gegenwart von Frontier-KI-Modellen erkundet zu werden: echte Sicherheitsauswirkungen hinter engen Timing-Bedingungen und schwachen Beweisen aufzudecken.
[!NOTE] Die unabhängigen Forscher Qi Tang und Junxi Qian meldeten CVE-2026-43074 ebenfalls am 30. März 2026 an das Linux-Kernel-Team, am selben Tag wie Anthropic. Ihre Namen wurden versehentlich aus den Credits für den Upstream-Fix weggelassen. Danke an Guidong Han für den Hinweis auf diese unabhängigen Meldungen. Die drei Forscher fanden später noch einen weiteren Race-Condition-Use-after-Free in epoll.
Hier ist eine allgemeine Übersicht des Angriffs für Neugierige.
Zwei verknüpfte epoll-Objekte. Das gleichzeitige Schließen beider löst die Race-Condition aus.
Zwei der Close-Pfade von epoll laufen gleichzeitig und kollidieren. Einer gibt ein Objekt frei, während der andere noch hineinschreibt, und das ist der Use-after-Free (UAF).
Das Race-Fenster und wie der Exploit es antreibt.
Der Exploit verwendet vier epoll-Objekte, die in zwei Paare gruppiert sind. Ein Paar löst die Race-Condition aus, während das andere zum Opfer wird. Von dort aus verwandelt der Exploit den 8-Byte-UAF-Schreibvorgang in einen UAF auf ein Dateiobjekt und nutzt einen Cross-Cache-Angriff, um den Inhalt der Datei vollständig zu kontrollieren.