Onderzoekers hebben een nieuwe techniek onthuld die kan worden gebruikt om bestaande hardwarebeperkingen in moderne processors van Intel, AMD en Arm te omzeilen, en speculatieve uitvoering aanvallen zoals Spectre om gevoelige informatie uit het hostgeheugen te lekken.
Aanvallen zoals Spectre zijn ontworpen om de isolatie tussen verschillende toepassingen te doorbreken door gebruik te maken van een optimalisatie techniek genaamd speculatieve uitvoering in CPU-hardware-implementaties om programma’s te misleiden om toegang te krijgen tot willekeurige locaties in het geheugen en zo hun geheimen te lekken.
Terwijl chipmakers zowel software als hardware hebben geïntegreerd verdedigingeninbegrepen Retpoline evenals waarborgen zoals Enhanced Indirect Branch Restricted Speculation (eIBRS) en Arm CSV2de nieuwste methode die door VUSec-onderzoekers is gedemonstreerd, is bedoeld om al deze beveiligingen te omzeilen.
Genaamd Injectie met filiaalgeschiedenis (BHI of Spectre-BHB), het is een nieuwe variant van Spectre-V2-aanvallen (bijgehouden als CVE-2017-5715) die zowel eIBRS als CSV2 omzeilt, waarbij de onderzoekers het beschrijven als een “nette end-to-end exploit” die lekt willekeurig kernelgeheugen op moderne Intel-CPU’s.
“De hardwarematige beperking voorkomt dat de onbevoegde aanvaller voorspellers voor de kernel injecteert”, legden de onderzoekers uit.
“De voorspeller vertrouwt echter op een wereldwijde geschiedenis om de doelitems te selecteren om speculatief uit te voeren. En de aanvaller kan deze geschiedenis van userland vergiftigen om de kernel te dwingen tot verkeerde voorspellingen voor meer ‘interessante’ kerneldoelen (dwz gadgets) die gegevens lekken, “voegde de Systems and Network Security Group van de Vrije Universiteit Amsterdam toe.
Anders gezegd, een stukje kwaadaardige code kan de gedeelde vertakkingsgeschiedenis gebruiken, die is opgeslagen in de CPU Branch History Buffer (BHB), om verkeerd voorspelde vertakkingen binnen de hardwarecontext van het slachtoffer te beïnvloeden, wat resulteert in speculatieve uitvoering die vervolgens kan worden gebruikt om informatie af te leiden dat zou anders onbereikbaar moeten zijn.
Spectre-BHB maakt alle Intel- en Arm-processors kwetsbaar die eerder door Spectre-V2 werden getroffen, samen met een aantal chipsets van AMD, waardoor de drie bedrijven vrijlating software updates om het probleem te verhelpen.
Intel is ook aanbevelen klanten om Linux’s onbevoorrechte uitgebreide Berkeley Packet Filters (eBPF) uit te schakelen, zowel eIBRS als Supervisor-Mode Execution Prevention in te schakelen (SMEP), en voeg “LFENCE toe aan specifieke geïdentificeerde gadgets waarvan wordt vastgesteld dat ze misbruikt kunnen worden.”
“De [Intel eIBRS and Arm CSV2] mitigaties werken zoals bedoeld, maar het resterende aanvalsoppervlak is veel groter dan aanvankelijk werd aangenomen”, aldus de onderzoekers.
“Desalniettemin is het vinden van exploiteerbare gadgets moeilijker dan voorheen, omdat de aanvaller niet direct voorspellende doelen kan injecteren over privilegegrenzen heen. Dat wil zeggen dat de kernel niet speculatief springt naar willekeurige door de aanvaller verstrekte doelen, maar alleen speculatief geldige codefragmenten uitvoert al uitgevoerd in het verleden.”