
Spectre-v2-BTR-Angriff leakt Root-Passwort-Hash aus gepatchtem Linux
Forscher demonstrierten eine neue Spectre-v2-Variante namens BTR, die den Root-Passwort-Hash eines vollständig gepatchten Intel-Linux-Systems innerhalb von Minuten stiehlt und dabei bestehende Schutzmaßnahmen umgeht.
Eine neue Variante der Spectre-v2-CPU-Schwachstelle, genannt Branch Target Reuse (BTR), kann selbst auf vollständig gepatchten Linux-Systemen mit aktivierten Standard-Schutzmechanismen vertraulichen Kernelspeicher preisgeben. Sicherheitsforscher von VUSec und der Scuola Superiore Sant'Anna haben den Angriff offengelegt, der auf Just-in-Time-Compilierungs-Engines (JIT) in Webbrowsern, Sprachlaufzeitumgebungen und dem Betriebssystemkernel selbst abzielt. In einem Machbarkeitsnachweis haben sie den Root-Passwort-Hash eines modernen Intel-Systems innerhalb von Minuten extrahiert und damit gezeigt, dass jahrelange Hardware- und Software-Abwehrmaßnahmen immer noch ausnutzbare Lücken hinterlassen.
Der Kern von BTR liegt in der Art und Weise, wie moderne Prozessoren mit spekulativer Ausführung umgehen, einem Leistungstrick, bei dem die CPU errät, welche Anweisungen als nächstes kommen, und diese vorab ausführt, um dann falsche Annahmen zu verwerfen. Spectre-v2 missbraucht speziell die indirekte Sprungvorhersage, den Mechanismus, mit dem sich die CPU merkt, wohin ein Programm nach einer bestimmten Anweisung üblicherweise springt. BTR bringt eine neue Wendung: Es nutzt eine Diskrepanz zwischen selbstmodifizierendem Code und dem Branch Target Buffer (BTB) aus, einer Hardware-Tabelle, die diese Sprungvorhersagen speichert. Wenn eine JIT-Engine spontan Code generiert, diesen freigibt und später dieselbe Speicheradresse für neuen Code wiederverwendet, kann der alte, veraltete BTB-Eintrag überleben. Die CPU springt dann möglicherweise spekulativ zu dem veralteten Einstiegspunkt, kapert die transiente Ausführung und lässt Geheimnisse aus dem Speicher abfließen.
Die Forscher erklärten den Angriff in drei Phasen. Zuerst lockt ein unprivilegierter Angreifer die JIT-Engine dazu, einen Trainings-Code-Chunk zuzuweisen, und zwingt einen bestimmten indirekten Sprung dorthin, wodurch ein an diese Adresse gebundener BTB-Eintrag gesetzt wird. Als Nächstes veranlasst der Angreifer die Engine, diesen Speicher freizugeben und einen neuen, zielgerichteten Chunk zuzuweisen, der sich teilweise mit der alten Adresse überschneidet. Schließlich, beim erneuten Auslösen des indirekten Sprungs, konsultiert die CPU den nun veralteten BTB-Eintrag und springt spekulativ zu dem alten Einstiegspunkt, der jetzt vom Angreifer gewählten Code enthält. Da die CPU diesen falschen Pfad vorübergehend ausführt, bevor sie den Fehler bemerkt, kann der Angreifer subtile Änderungen im Cache-Timing der CPU messen, um Daten abzuleiten, die normalerweise tabu wären, wie den Inhalt des Kernelspeichers.
Der Angriff wurde gegen mehrere JIT-Engines bestätigt: SpiderMonkey (die JavaScript-Engine von Mozilla Firefox), den JIT-Compiler der GraalVM-Laufzeitumgebung und den klassischen Berkeley Packet Filter (cBPF) JIT des Linux-Kernels. Alle drei wurden als verwundbar eingestuft, wenn auch mit unterschiedlicher Ausnutzbarkeit und Datenabflussrate. Die Forscher erstellten zwei Ende-zu-Ende-Exploits, die auf den cBPF-JIT des Linux-Kernels abzielen, und bewiesen damit, dass ein Angreifer mit unprivilegiertem lokalem Zugriff den Root-Passwort-Hash von einem vollständig aktualisierten Intel-System wiederherstellen kann. Der gesamte Datenverlust dauert nur Minuten, was BTR zu einer praktischen Bedrohung in Shared-Hosting-Umgebungen, Container-Setups und überall dort macht, wo Angreifer Code innerhalb einer JIT-Engine ausführen können.
Gegenmaßnahmen werden bereits ergriffen. Zwei Schwachstellen, CVE-2026-64507 und CVE-2026-64508, wurden zugewiesen und Patches in den Hauptzweig des Linux-Kernels integriert. GraalVM hat das Problem durch Randomisierung der Speicherorte seines JIT-Code-Caches behoben, was die Vorhersage der Adresswiederverwendung erschwert. Mozilla prüft einen Ansatz auf Basis von Indirect Branch Predictor Barriers (IBPB), einer Funktion, die den BTB leeren kann, konzentriert sich aber derzeit auf den Abschluss der Einführung der Seitenisolierung in Firefox, die Browser-Kontexte in unabhängige Prozesse trennt, um den Schaden eines einzelnen Angriffs zu begrenzen. Diese Offenlegung folgt einer weiteren kürzlichen Entdeckung spekulativer Ausführung namens Interrupt Injection, über die Forscher des MIT CSAIL berichteten und die ebenfalls Spectre-v2-Abwehrmaßnahmen auf Intel- und AMD-Systemen umging.
Für Website-Betreiber und Unternehmen, die auf Linux-Server angewiesen sind, unterstreicht BTR die Herausforderung, sich gegen Hardware-Angriffe zu verteidigen, die an Software-Patches vorbeischlüpfen. Selbst ein vollständig aktualisierter Kernel kann ausnutzbare Seitenkanäle beherbergen, bis spezielle Abhilfemaßnahmen greifen. Ein Managed-Hosting-Anbieter wie AEU Hosting nimmt Ihnen diese Sorge ab, indem er Kernel-Patches und Sicherheitshärtung als Teil seines durchgängigen WordPress-Hosting-Services anwendet und so sicherstellt, dass Ihre Serverumgebung geschützt bleibt, ohne dass Sie jede neue CVE verfolgen müssen. In der Zwischenzeit können normale Benutzer das Risiko reduzieren, indem sie ihre Browser und Betriebssysteme aktuell halten, hardwarebasierte Schutzmaßnahmen wie Intel’s Indirect Branch Restricted Speculation (IBRS) aktivieren, wo verfügbar, und Vorsicht walten lassen, wenn sie nicht vertrauenswürdigen Code in JIT-lastigen Anwendungen ausführen.
So schützen Sie sich
- Wenn Sie einen eigenen Linux-Server betreiben, installieren Sie heute die neuesten Kernel-Updates Ihrer Distribution, die Korrekturen für diese Spectre-v2-Schwachstellen enthalten.
- Kontaktieren Sie Ihren Hosting-Anbieter und fragen Sie, ob er die neuesten Linux-Kernel-Sicherheitspatches auf Ihrem Server installiert hat.
- Halten Sie Ihren Webbrowser (insbesondere Firefox) aktuell, da die Anbieter an integrierten Schutzmechanismen arbeiten, die solche Datenlecks von bösartigen Websites einschränken.
- Aktivieren Sie die Seitenisolierung in Firefox, indem Sie about:preferences#privacy in die Adressleiste eingeben und sicherstellen, dass der strenge Tracking-Schutz oder Fission aktiviert ist, was hilft, Angriffe einzudämmen.
- Führen Sie nur vertrauenswürdige Software aus und vermeiden Sie es, unbekannte Skripte oder Programme auszuführen, die versuchen könnten, lokale JIT-Engines auszunutzen.
Schwachstellen & Lösungen
- CVE-2026-64507 A kernel vulnerability related to BTR that was mitigated through patches merged into the Linux kernel. Lösung & Details ansehen →
- CVE-2026-64508 Another kernel vulnerability related to BTR that was addressed by upstream kernel fixes. Lösung & Details ansehen →
Begriffe Erklärt
- Spectre Eine Klasse von CPU-Schwachstellen, die den Prozessor dazu bringen, private Daten preiszugeben, indem sie seine Gewohnheit des Vorhersagens ausnutzen, entdeckt im Jahr 2017.
- Speculative execution Eine Leistungstechnik, bei der eine CPU Anweisungen ausführt, bevor sie weiß, ob sie tatsächlich benötigt werden, und die Ergebnisse verwirft, falls die Annahme falsch war.
- JIT (Just-In-Time) engine Eine Softwarekomponente, die Code on-the-fly kompiliert und ausführt, häufig in Browsern und Sprachlaufzeitumgebungen anzutreffen, um die Ausführung zu beschleunigen.
- BTB (Branch Target Buffer) Ein kleiner Speicher innerhalb der CPU, der speichert, wohin ein Programm demnächst springen wird, basierend auf vergangenem Verhalten, verwendet zur Sprungvorhersage.
- cBPF (classic Berkeley Packet Filter) Eine ältere, in den Kernel integrierte virtuelle Maschine, die in Linux zur Netzwerkpaketfilterung verwendet wird und einen JIT-Compiler enthält, der vom BTR-Angriff betroffen war.
- BTR (Branch Target Reuse) Der Name dieser neuen Spectre-v2-Variante, die veraltete Sprungvorhersage-Einträge wiederverwendet, die nach dem Freigeben und Ersetzen von Code zurückbleiben.