Under de senaste två åren har säkerhetsbrister i processorer varit vanligt förekommande bekymmer i teknikbranschen. Processormakare, där Intel varit vanligast förekommande, har kämpat med att implementera åtgärder mot brister som i majoriteten av fallen är relaterade till spekulativa exekveringar i Spectre-familjen. Efter några månaders lugn visar sig nu nästa sårbarhet, som drabbar både Intel och AMD.

Sårbarheten i fråga kallas Blindside och namnet kommer från att den är baserad på en typ av angrepp vid namn Blind Return Oriented Programming (BROP). Precis som tidigare sårbarheter som är av en Spectre-typ utnyttjar Blindside spekulativ exekvering i processorn. Den lyckas också kringgå de åtgärder mot spekulativ exekvering som processormakarna infört efter tidigare avtäckta säkerhetsbrister.

We presented BlindSide, a new exploitation technique that leverages an under-explored property of speculative execution (i.e., crash/execution suppression) to craft speculative probing primitives and lower the bar for software exploitation. We showed our primitives can be used to mount powerful, stealthy BROP-style attacks against the kernel with a single memory corruption vulnerability, without crashes and bypassing strong Spectre/randomization-based mitigations

Metoden kommer från säkerhetsforskare i Amsterdam som beskriver upptäckterna i en rapport (PDF), och upptäckten sammanfattas också hos Vusec tillsammans med videodemonstrationer av angreppen. Blindside bygger på att den spekulativa exekveringen upprepat skickar anrop (probes) till operativsystemets minnesutrymme (kernel address space) och använder resultatet för att göra åtkomsten till minnesutrymmet mer förutsägbart (derandomize).

Metoden kan kringgå moderna säkerhetsmekanismer som ska förhindra just den här sortens angrepp som utnyttjar åtkomst till minnesutrymmet, exempelvis FGKASLR som introducerades i början av år 2020. Med uppgifterna metoden kan utvinna ur kärnans minnesutrymme kan angripare översvämma minnesutrymmet (buffer overflow), och sedan exekvera en av tre olika typer av mekanismer som bryter mekanismen i kärnan som gör strukturen för kärnans minnesutrymme slumpartad (KASLR, Kernel Address Space Layout Randomization).

De tre angreppsmetoderna är som följer:

  1. Kärnans slumpartade minnesstruktur (KASLR) bryts för att möjliggöra en vanlig Return Oriented Programming (ROP)-attack.

  2. Slumpartade strukturer bryts för att möjliggöra en strukturell dataläcka, vilket bland annat ska kunna läcka uppgifter som root-lösenord.

  3. En tredje variant bryter slumpartade strukturer och kärnans minnesskydd (kernel execute-only memory) vilket gör det möjligt att dumpa fullständiga textuppgifter från kärnan på ett pålitligt vis.

Säkerhetsforskarna har framgångsrikt implementerat Blindside på processorer med Intels arkitekturer Skylake, Coffee Lake och Whiskey Lake. Till skillnad från majoriteten av upptäckta angreppsmetoder för spekulativ exekvering kan Blindside-attacker också appliceras på AMD:s processorer med Zen+ och Zen 2-arkitekturerna. Enligt rapporten kan befintliga åtgärder användas för att förhindra Blindside, men angripare kan också använda varianter av Blindside som kringgår dessa åtgärder.

Moreover, an attacker may also opt for other vectors to corrupt code pointers in speculative execu- tion, such as speculative memory corruption [52] or CPU bugs like LVI [90]. To hinder the latter, one could build on existing Spectre mitigations and treat indirect branches as potentially dangerous ... Unfortunately, our analysis shows these gadgets are pervasive and this strategy would severely limit the number of conditional branches that can benefit from speculation (and its performance gains).

Säkerhetsforskarna avslutar sin rapport med att konstatera att de senaste årens framsteg i åtgärder mot spekulativ exekvering inte är lika stabila och heltäckande som branschen kan ha intalat sig. Med Blindside visar de att spekulativ exekvering fortsatt kan utnyttjas med relativt lättillgängliga mjukvarumetoder. Rapporten nämner inte om Intels moderna arkitekturer som Comet Lake och Ice Lake också är sårbara. Det återstår att se om AMD:s kommande Zen 3 är sårbar likt sin föregångare.

Läs mer om sårbarheter i processorer: