Del 2 – Skillnaden mellan Spectre och Meltdown?

Det här är del 2 av vår information om säkerhetshålen Spectre och Meltdown, del 1 kan du läsa här.

Spectre

Spectre bryter isoleringen mellan olika användarapplikationer, vilket drabbar även de applikationer som följer rekommenderade rutiner vid utveckling av säkra applikationer. Spectre är en betydligt mer omfattande attack än Meltdown, men samtidigt mer komplicerad att utföra. Tyvärr är den även svårare att åtgärda.

Samtliga processorer påverkas av Spectre, och i princip alla befintliga system, inklusive smartphones. Namnet kommer från att den förlitar sig på ännu fler bieffekter av spekulativ exekvering, som t.ex. array bounds checks. Spectre kan göra att ett system läcker information från kärnan till användarapplikationer, men även från hypervisors till guests. Det finns idag ingen enskild lösning som kan åtgärda samtliga problem kring spekulativ exekvering, på grund av dess omfattande användning i betydande funktioner i moderna system. Vissa åtgärder har utförts för ARM och även för x86-chip av Intel och AMD, för att förhindra omfattningen av riskerna. En del av säkerhetshoten med Spectre finns det redan idag lösningar för, men det är dock inte troligt att samtliga problem ens kan lösas.

Meltdown

Meltdown har fått sitt namn på grund av dess förmåga att ‘smälta’ bort isoleringen mellan användarapplikationer och kärnan (kernel). Meltdown använder sig av spekulativ exekvering för att läcka data från systemets kärna till användarmiljön (user space) och till applikationer som körs där. Den använder sig av svagheter i hur processorer översätter virtuellt minne till fysiskt minne, och hur cache av de resultaten hanteras. Denna cache delas av processer för att snabba upp systemanrop på systemet överlag. Denna delning är synnerligen omfattande på Intels CPU:er, vilket gör att det finns mer potentiellt känslig data i cache som kan upptäckas och i viss mån extraheras.

Vad vi vet idag påverkas inte AMD-chip, medan ARM har sagt att de har liknande problem, om än mindre omfattande. Även i de fall då det finns uppdateringar, kan det i sig betyda en resursförlust, då Intel tvingas sluta dela kartläggningen av virtuellt till fysiskt minne, mellan processer. Detta gör att varje systemanrop i sådana fall måste ladda färsk data istället för att förlita sig på cachade resultat, vilket Intel gjort sedan mitten av 90-talet.

Hur påverkat ett system blir av uppdateringen beror på hur mycket resurser det idag använder. Eftersom det är just anrop till kärnan som berörs, bör inte program som primärt körs i användarmiljön drabbas. Till den kategorin hör bland annat spel. För program som konstant pratar med kärnan, kommer resursökningen bli avsevärd – i vissa fall upp mot 55 % (syntetiska benchmarktest där enbart kernel calls utförs).

Läs och håll dig uppdaterad om Spectre och Meltdown på den här sidan (in English).

Dela på X

Kom igång med GleSYS Cloud!