BREAKING
DIVD und Zammad: Wenn der Helpdesk zur Angriffskette wird NVIDIA Sentry: Warum die Kontrolle über KI-Agenten außerhalb des Hosts liegen soll CLOSEDQUORUM: Wenn KI-APIs die Malware-Steuerung übernehmen Cisco ISE Zero-Day: Wenn die Zugangskontrolle selbst zum Root-Ziel wird Wenn der Coding-Agent zum Einfallstor wird: Lehren aus einer gekaperten Entwickler-Session

Branch Target Reuse: Warum JIT-Code eine eigene Sicherheitsgrenze braucht

Clara (AI generiert)
4 min read
Branch Target Reuse: Warum JIT-Code eine eigene Sicherheitsgrenze braucht

Ein Unternehmen lässt fremde Skripte in einer Laufzeitumgebung ausführen, betreibt gemeinsam genutzte Linux-Hosts oder stellt isolierte Arbeitsplätze für Coding-Agenten bereit. Die Anwendung darf nur auf freigegebene Daten zugreifen. Aber gilt diese Grenze auch während jener kurzen Momente, in denen der Prozessor einen Ausführungspfad lediglich vorhersagt? Die Forschung zu Branch Target Reuse zeigt, warum diese Frage nicht allein mit Anwendungsrechten beantwortet werden kann. [1]

Die am 29. September 2026 öffentlich vorgestellte Untersuchung von VUSec und der Scuola Superiore Sant’Anna beschreibt eine Spectre-v2-Variante für Just-in-Time-Compiler. Der aktuelle Anlass ist die detaillierte Offenlegung der Angriffsmethode, nicht ein erst jetzt verfügbarer Patch: Die zugehörigen Linux-CVE-Einträge wurden bereits am 25. Juli veröffentlicht; Oracles einschlägige Änderung wurde am 19. August zusammengeführt. Diese zeitliche Trennung ist für die betriebliche Priorisierung wichtig. [1][2][3][4]

Wenn neuer Code auf alte Vorhersagen trifft

Just-in-Time-Compiler übersetzen Programme während ihrer Ausführung in Maschinencode. Dabei können Speicherbereiche zunächst Code enthalten, später freigegeben und anschließend für anderen Code wiederverwendet werden. Branch Target Reuse, kurz BTR, nutzt eine Diskrepanz zwischen diesem Code-Lebenszyklus und noch vorhandenen Sprungvorhersagen des Prozessors. Eine veraltete Zieladresse kann spekulative Ausführung an einer inzwischen ungeeigneten Stelle des neuen Codes auslösen. [1]

Entscheidend ist die Unterscheidung zwischen regulärer und spekulativer Ausführung. Der Prozessor übernimmt den falschen Pfad nicht einfach als korrektes Programmergebnis. Dennoch können währenddessen hinterlassene mikroarchitektonische Spuren Informationen verraten. Die Forscher beschreiben das als spekulatives Execute-after-free: Wiederverwendet wird die Beziehung zwischen einer alten Vorhersage und neu belegtem Codespeicher. Es handelt sich nicht um einen gewöhnlichen Speicherfehler mit dauerhaft ausgeführtem Angreifercode. [1]

Das Bedrohungsmodell setzt voraus, dass Angreifer nicht vertrauenswürdigen Code innerhalb einer relevanten JIT-Umgebung ausführen können. Daraus folgt ausdrücklich kein beliebiger Fernangriff auf jeden eingeschalteten Rechner. Für Unternehmen ist vielmehr zu prüfen, wo solche Ausführung bereits zum vorgesehenen Betriebsmodell gehört: etwa bei Benutzer-Skripten, isolierten Entwicklungsaufgaben oder anderen gemeinsam genutzten Ausführungsdiensten. Diese Bestandsaufnahme ist unsere operative Ableitung aus dem Forschungsmodell. [1]

Was tatsächlich demonstriert wurde

Die stärksten Nachweise betreffen den Linux-Kernel. Die Forscher entwickelten zwei vollständige Angriffe über klassisches BPF, kurz cBPF. In ihrer Demonstration lesen sie Speicherinformationen aus und gewinnen den Passwort-Hash des Root-Kontos aus dem Speicher eines Prozesses. Das ist ein Laborergebnis zur Vertraulichkeit, kein Nachweis eines beobachteten Einbruchs in ein Unternehmen. Ein ausgelesener Hash ist außerdem nicht mit einem bereits bekannten Klartextpasswort gleichzusetzen. [1]

Der Angriff über cBPF ist für die Bewertung wichtig: Wer lediglich auf eingeschränkte eBPF-Rechte verweist, beantwortet damit nicht automatisch die Frage nach klassischem BPF. Die Forscher weisen auf dessen Verfügbarkeit für unprivilegierte Programme und seine Verwendung bei Filtern hin. Sicherheitsverantwortliche sollten deshalb konkrete Kernel-Konfigurationen und Herstellerhinweise prüfen, statt aus einer einzelnen deaktivierten Funktion eine allgemeine Entwarnung abzuleiten. [1]

Die weiteren Ergebnisse sind weniger weitgehend. Für Firefox’ SpiderMonkey berichten die Forscher einen Machbarkeitsnachweis, aber noch keinen vollständigen Browser-Exploit. Bei GraalVM störten in den Versuchen interne Laufzeitaktivitäten die benötigten Vorhersageeinträge. Die untersuchten Plattformen dürfen daher nicht als gleich zuverlässig ausnutzbar dargestellt werden. Ebenso wäre die Überschrift „alle Browser kompromittiert“ durch diese Befunde nicht gedeckt. [1]

Zwei Linux-CVEs, ein zusammenhängender Schutzpfad

Die vom Linux-Projekt gepflegten Einträge unterscheiden zwei Änderungen. CVE-2026-64508 betrifft die Infrastruktur zum Leeren der Sprungvorhersage bei wiederverwendetem BPF-JIT-Speicher. CVE-2026-64507 aktiviert den entsprechenden IBPB-Schutz für relevante x86-Konfigurationen. Der zweite Eintrag nennt ausdrücklich Voraussetzungen und Ausnahmen, darunter die Verwendung von BPF-JIT und bereits eingesetzte Retpoline-Sequenzen. [2][3]

Für beide CVEs führen die Einträge unter anderem 6.1.183, 6.6.145, 6.12.97, 6.18.39 und 7.1.4 als korrigierte Stände ihrer jeweiligen stabilen Kernel-Linie auf. Diese Angaben sind Upstream-Versionsgrenzen, keine universelle Paketempfehlung für jede Distribution. Bei Enterprise-Systemen empfehlen wir, den Nachweis des Distributionsanbieters für beide Kennungen einzuholen und mit dem tatsächlich laufenden Kernel abzugleichen. [2][3]

Oracle verfolgt zusätzlich einen anderen Ansatz: Der verknüpfte Graal-Änderungsantrag randomisiert die Abbildung des Laufzeit-Code-Caches und wurde am 19. August 2026 integriert. Daraus allein folgt noch nicht, dass jedes eingesetzte GraalVM-Paket diese Änderung enthält. Betreiber sollten die konkrete ausgelieferte Version und deren Sicherheitsdokumentation prüfen. Ein zusammengeführter Quellcode-Patch ersetzt keinen Rolloutnachweis. [4]

Branchenkontext: Laufzeitisolation ist mehrschichtig

Unsere Einordnung lautet: BTR ist kein spezieller Fehler eines Sprachmodells. Die Untersuchung betrifft die Ausführungsinfrastruktur, auf der auch Entwicklungsdienste und Agentenumgebungen aufsetzen können. Unternehmen sollten deshalb zwischen Modellregeln, Werkzeugberechtigungen, Prozessisolation und den Schutzmaßnahmen der zugrunde liegenden Laufzeit unterscheiden. Eine überzeugende Richtlinie auf einer Ebene sollte nicht als Beweis für alle darunterliegenden Grenzen dienen.

Für Beschaffung und Architekturprüfung ergibt sich daraus ein praktischer Fragenkatalog. Wer liefert Sicherheitsupdates für Host-Kernel und eingebettete Laufzeiten? Wer bestätigt deren Aktivierung? Welche unterschiedlichen Vertrauensklassen teilen sich eine Ausführungsumgebung? Und welches Team entscheidet über eine vorübergehende Einschränkung, wenn eine Grenze unzureichend belegt ist? Das sind vorgeschlagene Prüfungen, keine Behauptung über eine bestimmte Cloud-Plattform.

Konkrete Schritte für Unternehmen

Erstens: den Bestand nach Ausführungsrechten ordnen. Wir empfehlen eine Liste der Systeme, auf denen Benutzer, Kunden oder automatisierte Agenten eigenen Code ausführen dürfen. Ergänzt werden sollten Kernel, JIT-Laufzeit, verantwortliches Team und benachbarte schützenswerte Daten. Ein bloßes Inventar von CPU-Modellen beantwortet die konkrete Expositionsfrage nicht.

Zweitens: beide Linux-Kennungen gemeinsam bearbeiten. Der Change sollte den Anbieterstatus, das installierte Paket und den laufenden Kernel dokumentieren. Falls ein Neustart oder ein anderes Aktivierungsverfahren nötig ist, gehört dessen erfolgreicher Abschluss in den Nachweis. „Update heruntergeladen“ sollte nicht als identisch mit „Schutz aktiv“ gelten.

Drittens: sensible und fremde Ausführung überprüfen. Wo nicht vertrauenswürdige Aufgaben besonders schützenswerte Geheimnisse erreichen könnten, empfehlen wir eine erneute Architekturprüfung. Ziel ist eine begründete Entscheidung über getrennte Ausführungsumgebungen und minimale Geheimnisbereitstellung. Keine einzelne Isolationsmaßnahme sollte ohne Prüfung als vollständiger BTR-Schutz verkauft werden.

Viertens: Schutz und Betriebswirkung zusammen testen. Sicherheitsänderungen an häufig genutzten Laufzeitpfaden sollten mit repräsentativen Arbeitslasten geprüft werden. Teams sollten Funktion, Laufzeitverhalten und aktivierte Schutzoptionen dokumentieren. Einen pauschalen Performanceverlust nennen wir nicht: Die ausgewerteten Quellen liefern dafür keinen allgemeingültigen Unternehmenswert.

Grenzen und Fazit

Die Quellen beschreiben Forschung und Gegenmaßnahmen, keine belegte Angriffskampagne. Wir haben den Exploit nicht selbst reproduziert. Auch die unterschiedlichen Browser- und Laufzeitbefunde erlauben keine pauschale Aussage über jeden Rechner einer Herstellerfamilie. Maßgeblich bleiben konkrete Konfiguration, erreichbare Ausführungsrechte und tatsächlich ausgerollte Korrekturen. [1][2][3]

BTR liefert dennoch einen klaren Arbeitsauftrag: JIT-generierter Code und sein Lebenszyklus gehören in die Sicherheitsbewertung. Unternehmen sollten die aktuellen Forschungsergebnisse zum Anlass nehmen, vorhandene Patchstände zu verifizieren und fremde Codeausführung gezielt zu inventarisieren. Die richtige Reaktion ist kein flächendeckender Alarm, sondern ein überprüfbarer Nachweis, welche Grenzen im eigenen Betrieb tatsächlich geschützt sind.

Quellen

Teilen:
// Mission Critical

Woechentliches AI Security Briefing erhalten.

Fuer Analysten, Forscher und Verteidiger, die Bedrohungen im AI Stack verfolgen.

Kostenlos abonnieren

Verwandte Artikel