VUSec beschrijft Branch Target Reuse (BTR) als een Spectre-v2-aanval op JIT-engines. De onderzoekers melden twee end-to-end-exploits voor Linux cBPF, waarmee ze in een demonstratie een rootwachtwoordhash uit het geheugen van een actief su-proces haalden. Een hash is niet het wachtwoord in platte tekst: daarvoor moet de hash nog worden gekraakt, waarbij de uitkomst afhangt van het hash-algoritme en de sterkte van het wachtwoord.
Branch Target Reuse en de Linux-hashdemonstratie
De Linux-demonstratie gebruikte klassieke BPF-programma’s (cBPF) die beschikbaar zijn voor ongeprivilegieerde programma’s. Die werden als seccomp-filters ingezet. VUSec rapporteert een leksnelheid van acht bytes per seconde.
De onderzoekers rapporteerden voor het end-to-end terughalen van de hash gemiddeld drie minuten op Intel Raptor Cove en vijf minuten op Intel Lion Cove. Die tijden horen bij de genoemde Intel-processorfamilies en de Linux-demonstratie.
Hoe een oude voorspelling hergebruikte JIT-code bereikt
Een JIT-engine zet code tijdens het uitvoeren om in machinecode. Wanneer de engine die code vrijgeeft en later hetzelfde geheugenadres voor nieuwe code gebruikt, kan de processor nog een oude voorspelling voor een indirecte vertakking bewaren. BTR benut die achtergebleven voorspelling: de processor kan speculatief bij nieuwe code uitkomen op een verouderde positie.
VUSec beschrijft twee Linux-exploits: één in de standaardconfiguratie en één die ook werkte met constant blinding ingeschakeld. Bij de demonstratie draaide eerst su root, waardoor de rootwachtwoordhash in het geheugen van dat proces stond. De aanval zocht vervolgens in kernelstructuren naar de hash.
Resultaten voor Linux, SpiderMonkey en GraalVM
De Linux-hashdemonstratie is niet hetzelfde als de resultaten op andere JIT-engines. VUSec rapporteert voor Firefox SpiderMonkey een proof of concept waarin verouderde voorspellingen na hergebruik van code bleven bestaan; de onderzoekers voltooiden daarmee geen browserexploit.
Bij Oracle GraalVM onderzochten de onderzoekers een manier om speculatief een sandboxmasker te omzeilen. In hun experimenten wisten ze geen aanval te voltooien, omdat compilatie en garbagecollection de branchvoorspellingen wisten. Oracle randomiseert de locaties van JIT-codecaches als maatregel tegen hergebruik van codegebieden.
De gemelde Linux-mitigatie
VUSec meldt dat Linux-kernelontwikkelaars een x86-mitigatie upstream hebben opgenomen. Die laat op alle cores een IBPB (Indirect Branch Prediction Barrier) uitvoeren wanneer een cBPF-programma een eerder gebruikt cBPF- of eBPF-codegebied hergebruikt, en ontmoedigt dat hergebruik.
VUSec noemt voor de Linux-kwesties CVE-2026-64507 en CVE-2026-64508.
CPU-tests en geplande paperpublicatie
VUSec zegt het BTR-gedrag te hebben bevestigd op iedere geteste CPU uit de Intel-, AMD- en Arm-reeksen. De Linux-hashdemonstratie en de genoemde gemiddelde tijden betreffen Intel Raptor Cove en Lion Cove.
Het BTR-paper is geaccepteerd voor ACM CCS 2026 en stond gepland voor publicatie in november 2026.