c’t 07/2026
Wat is er waar van IT-mythes?
Cover van
Cover voor CPU-kwetsbaarheden Spectre en Meltdown: beveiliging van processors

CPU-kwetsbaarheden Spectre en Meltdown: beveiliging van processors

CPU-beveiligingslekken zorgden in 2018 voor een grote onrust. Ze leidden tot ingrijpende veranderingen aan processors en nieuwe beveiligingsconcepten.

Lees verder na de advertentie

De lange nasleep van Spectre en Meltdown

De processorkwetsbaarheden Spectre en Meltdown zorgden begin 2018 voor een enorme opschudding. In eerste instantie leken de meeste toenmalige processors fundamenteel onveilig omdat Spectre en Meltdown fundamentele CPU-ontwerpprincipes misbruiken als achterdeurtjes: de speculatieve uitvoering van instructies en het out-of-order-concept.

Beide technieken wijken af van de volgorde in de programmacode om de rekenkracht te verhogen, maar brachten daarbij ernstige beveiligingslekken diep in de microarchitecturen aan het licht.

Spectre trof niet alleen x86-CPU’s van AMD en Intel, maar ook die met ARM-technologie en van IBM. Meltdown trof vooral Intel-CPU’s en enkele andere architecturen, maar AMD niet op dezelfde manier.

In de acht jaar die sindsdien zijn verstreken, zijn er drie dingen gebeurd: ten eerste verschenen er software-updates die de meest kritieke kwetsbaarheden dichtten. Ten tweede kwamen er nieuwe processors op de markt die veel van de destijds ontdekte kwetsbaarheden niet meer vertonen.

Ten derde hebben beveiligingsonderzoekers echter steeds weer nieuwe Spectre-achtige bugs gevonden en blijven ze die vinden. Dit artikel beschrijft de vele beveiligingslekken uit de Meltdown- en Spectre-families die sinds 2018 ontdekt zijn en legt de overeenkomsten en verschillen uit.

In een ander artikel zullen we uitleggen hoe anti-Spectre-beveiligingsmaatregelen in processors, compilers en software werken. Daarin wordt ook ingeschat welke risico’s er schuilgaan achter Spectre-achtige aanvallen op de hedendaagse processors en worden die vergeleken met andere aanvallen.

De originele publicaties van de 35 beveiligingslekken die in het artikel kort worden toegelicht, staan bij de link bij dit artikel.

Sidechannels

Moderne besturingssystemen beheren voortdurend honderden of zelfs duizenden programmaprocessen (threads) tegelijk. Elk proces mag uitsluitend toegang hebben tot een precies vastgelegd bereik van virtuele geheugenadressen. Als elk proces in plaats daarvan naar believen toegang zou hebben tot het adresbereik van een ander proces, zouden computers fundamenteel onveilig zijn.

Dan kan een browser die op dat moment een website weergeeft willekeurige gegevens uitlezen uit de wachtwoordbeheerder die parallel draait.

Moderne processors schakelen voortdurend tussen verschillende processen. Bovendien optimaliseren ze de uitvoering van de programmacode die op dat moment draait. Ze verwerken de opgegeven commando’s intern niet per se in de volgorde waarin ze in het programma staan. Programma’s draaien namelijk vaak sneller als de processor in plaats daarvan de voorkeur geeft aan commando’s die hij onafhankelijk van andere out-of-order kan uitvoeren.

Lees dit artikel verder

Lees over tech-trends en achtergronden, nieuwe apparatuur, software en toepassingen voor professioneel gebruik. Met c’t heb je altijd de juiste tech-informatie. Word abonnee en lees onbeperkt alle artikelen.
Bekijk abonnementen Al abonnee? Log in

Daar gebruiken out-of-order-CPU’s interne planningslogica, register-renaming en meerdere tegelijkertijd inzetbare rekenunits voor verschillende taken voor, zoals aparte units voor gehele getallen, floatingpoint-berekeningen en vectorberekeningen.

Dan kan de CPU bijvoorbeeld al een gehele-getallenoptelling uitvoeren terwijl een volgens de programmalogica voorafgaande floatingpoint-bewerking nog op gegevens wacht.

Om nog meer prestaties te winnen, voeren moderne processors sommige commando’s als het ware zelfs ‘op goed geluk’ uit (speculative execution). Daarbij maakt de CPU aannames over het verdere verloop van een programma, bijvoorbeeld met behulp van de zogeheten sprongvoorspelling, en voert de voorspelde commando’s speculatief uit.

Achteraf kan echter blijken dat een bewerking overbodig was of zelfs uitdrukkelijk verboden – bijvoorbeeld omdat die een RAM-gebied uitleest waarvoor hij eigenlijk geen toegangsrechten heeft.

Dergelijke bewerkingen noemen we transient omdat de CPU ze daarna weer verwijdert – juist omdat ze overbodig of ongeoorloofd waren. Maar transiente bewerkingen laten meetbare sporen achter, bijvoorbeeld in het snelle tussengeheugen, de cache. Aanvallers kunnen dergelijke effecten misbruiken als een zogeheten sidechannel om gevoelige gegevens uit te lezen. Daarom heten dit ook sidechannel-aanvallen.

De naam Spectre – het Engelse woord betekent zoiets als schim – verwijst naar het misbruik van speculatieve uitvoering.

Meer dan 35 aanvallen

Sinds 2018 hebben beveiligingsonderzoekers en processorfabrikanten meer dan 35 Meltdowns gemeld. Sommige onderzoeksteams bedachten voor hun publicaties pakkende namen en mooie logo’s om de aandacht te trekken. Voorbeelden zijn Spectre, een verwijzing naar Speculative Execution, maar wat ‘schim’ betekent. Meltdown staat voor kernsmelting.

(Afbeelding: originelen van Spectre, Meltdown, Foreshadow, Zombieload, LVI, CacheOut, PACMAN, Hertzbleed, Downfall, SLAP / Martina Bruns / c’t)

Meltdown: inbreuk op de geheugenisolatie

Het woord Meltdown betekent op zijn beurt zoiets als kernsmelting en verwijst naar een aanval op de geheugenisolatie tussen gebruikerstoepassingen en de kernel van het besturingssysteem – dus tussen de user- en de kernelspace.

Concreet gaat het erom dat je met software die in de userspace draait, toegang krijgt tot de eigenlijk afgeschermde kernelspace. Vooral bij Intel-processors was het mogelijk om via out-of-order-toegang tot kerneladressen informatie op te halen waar een gebruikersproces geen toegang toe zou mogen hebben.

De fout zit hem in het feit dat de CPU de toegangsrechten niet vroeg genoeg controleert. De processor breekt de illegale toegang wel af, maar de tijdelijk gelezen gegevens kunnen de cachetoestand eerder al beïnvloeden. Omdat de cache gegevens veel sneller levert dan het werkgeheugen, duren toegangen verschillend lang. Die verschillen in toegangstijd kunnen worden misbruikt als sidechannel. Je hebt het dan ook over timing-based aanvallen.

Zo kan schadelijke code die parallel met een ander proces draait, gericht een bepaald adresbereik (een page) uit alle caches wissen (page flush). Vervolgens wacht de malware even, laadt die page daarna opnieuw (reload) en meet de benodigde tijd.

Als het opnieuw laden bijzonder snel gaat, had het andere proces die page eerder opgevraagd. Daaruit trekt de schadelijke code conclusies over welke gegevens het doelproces verwerkt.

In de praktijk kun je daarmee wachtwoorden en geheime sleutels uit het kernelgeheugen halen.

Hoe de Meltdown-aanval gegevens buitmaakt

Het korte codevoorbeeld toont een reeks instructies, die moderne processors echter niet per se in dezelfde volgorde uitvoeren als waarin ze in het programma staan. In plaats daarvan herschikken ze de volgorde (out-of-order-execution) en voeren ze sommige instructies uit op basis van vermoedens, als dat voordelen belooft (speculative execution).

In dit voorbeeld staat de instructie access(probe_array[]) achter een uitzonderingsgebeurtenis die de programmastroom onderbreekt. Je zou dus verwachten dat de CPU access(probe_array[]) niet uitvoert, maar dat kan toch gebeuren.

Sommige gegevens van de out-of-order-toegang komen daarbij in de cache terecht. Dat valt weer op als je de latentie bij het ophalen van die gegevens meet: de cache levert ze aanzienlijk sneller dan het RAM.

()Afbeelding: Meltdown Paper van 2018 / c’t

Spectre: manipulatie van de speculatieve uitvoering

Spectre zorgt er op zijn beurt voor dat eigenlijk onschuldige programma’s in het speculatieve pad bij gegevens komen die ze volgens de softwarelogica niet zouden mogen gebruiken. Door de sprongvoorspelling (branch prediction) gericht te trainen, kun je bijvoorbeeld speculatieve toegang tot geheugengebieden buiten de geldige arraygrenzen uitlokken.

De CPU verandert daarbij de cachetoestanden op basis van gegevens die volgens de softwarelogica nooit hadden mogen meespelen. Spectre-variant 1 (Bounds Check Bypass, v1) is een voorbeeld van die aanvalsmethode. Het is lastig om het systeem daartegen te beveiligen: zelfs als een app goed controleert of een arraytoegang binnen het geldige adresbereik valt, kan de processor in het speculatieve pad er toch overheen schieten.

Dat soort aanvallen is vooral relevant voor gedeelde systemen, zoals cloudservers waarop workloads van verschillende klanten op dezelfde fysieke hardware draaien. Daardoor kunnen aanvallers gericht virtuele machines huren om daarin code uit te voeren die via sidechannels gegevens uit andermans beveiligingscontexten probeert af te leiden.

In de praktijk zijn dergelijke aanvallen meestal sterk afhankelijk van geschikte codepatronen, gedeelde microarchitectuurbronnen en lange metingen. Daarom noemen beschrijvingen van sidechannel-aanvallen vaak datasnelheden, die vaak op slechts enkele kilobyte per seconde of minder liggen.

Moderne cloudservers hebben vaak honderden CPU-kernen en meerdere terabyte aan RAM. Om 1 TB volledig te doorzoeken, zou een aanval met een snelheid van 10 kB/s ongeveer drie jaar nodig hebben.

Spectre: beveiliging omzeild

Het codevoorbeeld laat een vertakking zien (if-instructie) die de CPU onder een bepaalde voorwaarde moet uitvoeren (zolang x < array1_size). Om het proces te versnellen, voert de CPU bepaalde berekeningen speculatief uit. Welke dat zijn, bepaalt de sprongvoorspeller (Branch Predictor). Daarbij schat hij ook in of de toegang tot het betreffende geheugenadres is toegestaan (Bounds Check).

Eenvoudig gezegd kunnen er vier gevallen optreden: als de toegang was toegestaan (in bounds) en de instructie correct was voorspeld (predicted), is het resultaat sneller beschikbaar.

Als de toegang wel was toegestaan, maar de voorspelling fout was, moet de CPU de berekening alsnog uitvoeren – wat vertraging oplevert. Als de toegang niet was toegestaan en de voorspelling fout was, gooit de CPU het resultaat weg. Maar als de toegang niet was toegestaan, maar de voorspelling wel klopte, kan de bounds-check-beveiliging in sommige gevallen omzeild worden.

(Afbeelding: Spectre-Paper van 2018 / c’t)

Jaarlijks nieuwe aanvallen

Zelfs zo’n acht jaar na de onthulling van Spectre en Meltdown worden er nog steeds nauw verwante aanvalsmethoden gepresenteerd. Inmiddels zijn het er tientallen – deels aanzienlijk complexer dan de eerste Spectre-varianten, deels verrassend praktijkgericht.

Sommige recentere kwetsbaarheden laten zien dat oudere beveiligingsmaatregelen tegen Spectre tekortschoten. Al in 2018 kwam er met Spectre Next Generation (Spectre-NG) een tweede golf, die aantoonde hoe breed het aanvalsoppervlak van speculatieve uitvoering is. Tot Spectre-NG behoorde onder andere Speculative Store Bypass (v4). Daarna volgde Foreshadow (L1 Terminal Fault, L1TF). Die kwetsbaarheid maakte misbruik van het feit dat de processor gegevens uit de L1-cache speculatief vrijgeeft, en omzeilde daarmee beveiligingsfuncties zoals Intels Software Guard Extensions (SGX), die code en gegevens in zogenaamde enclaves moeten isoleren.

Dergelijke Trusted Execution Environments (TEE’s) worden gebruikt voor zogenaamde Confidential Computing, oftewel om bijzonder gevoelige gegevens te beschermen. Daarom richten beveiligingsonderzoekers zich juist op dat soort functies.

Spectre v1.1 en v1.2 lieten zien dat ook speculatieve schrijfbewerkingen gevaarlijk kunnen zijn, bijvoorbeeld door Speculative Buffer Overflows of het tijdelijk omzeilen van read-only-beveiliging. Andere varianten, zoals SpectreRSB (misbruik van de Return Stack Buffer) en het Lazy-FP-lek, maakten duidelijk dat speculatieve effecten in verschillende CPU-onderdelen voorkomen, van de returnlogica tot de toestand van de floatingpoint-unit (FPU).

Met NetSpectre dook bovendien een eerste Spectre-variant op die via het netwerk kon worden misbruikt. Dat was weliswaar praktisch voor de aanvaller, maar extreem traag en werd daarom als puur academisch beschouwd.

2019: Microarchitecturale datalekken

In 2019 publiceerden talrijke onderzoeksgroepen kwetsbaarheden uit de familie van Microarchitectural Data Sampling (MDS), zoals ZombieLoad, Rogue In-Flight Data Load (RIDL) en Fallout. Ze richten zich op interne CPU-buffers zoals load ports en load buffers, store buffers en line fill buffers.

Intel reageerde met microcode-updates. De microcode is interne CPU-firmware die de werking van de rekenunits verandert. Die updates zorgden ervoor dat de CPU bij beveiligingsovergangen, zoals contextwisselingen, de betreffende buffers overschrijft of leegmaakt.

Dat kost echter tijd en dus rekenkracht. Bovendien bleek dat Simultaneous Multithreading (SMT) dat soort aanvallen vergemakkelijkt. Bij Intel heet SMT Hyper-Threading (HT). Bij SMT zien de hardwarethreads van een fysieke CPU-kern er voor het besturingssysteem uit als meerdere logische CPU’s. Ze delen de interne bronnen van de kern, wat de rekenkracht kan verhogen, maar ook extra sidechannels kan creëren.

Om de schade te beperken, verwees Intel naar microcode- en softwaremitigaties en raadde het aan om SMT te beoordelen op basis van het dreigingsmodel. Bij scenario’s met een hoog risico, bijvoorbeeld op cloudservers, adviseerden onderzoekers en sommige aanbieders om SMT uit te schakelen, waardoor de rekenkracht in sommige toepassingen flink daalt.

2020: Paradigmaverschuiving

In 2020 zorgde Load Value Injection (LVI) voor een paradigmaverschuiving: bij dat scenario lezen aanvallers gegevens niet passief uit, maar zorgen ze ervoor dat de code van het slachtoffer verder rekent in speculatieve paden met door de aanvaller gestuurde waarden, bijvoorbeeld juist binnen SGX-enclaves (Software Guard Extensions).

Take A Way maakte op zijn beurt gericht gebruik van specifieke eigenschappen van de CPU-microarchitectuur van AMD om toegangspatronen af te leiden, namelijk zwakke plekken in de Way Predictor van de Level-1-gegevenscache (L1D).

CacheOut, ook bekend als L1D Eviction Sampling, bewees dat sommige systemen ondanks MDS-tegenmaatregelen nog steeds kwetsbaar waren voor L1D-/fill-buffer-effecten – vooral in combinatie met Hyper-Threading.

Straight-Line Speculation liet op ARM-processors zien dat kwaadaardige code processen zelfs speculatief kan uitvoeren als de verandering in de controlestroom eigenlijk onvoorwaardelijk zou moeten verlopen.

De tegenmaatregelen werden daardoor complexer: naast updates voor microcode en het besturingssysteem waren deels zeer omvangrijke softwarebeveiligingen nodig, vooral voor SGX.

Tot de via microcode-updates achteraf ingebouwde CPU-beveiligingsfuncties behoort ook Indirect Branch Restricted Speculation (IBRS), later gevolgd door een uitgebreide versie, eIBRS. Daarmee kunnen processors de speculatieve uitvoering nauwkeuriger beperken. De ARM-tegenhanger heet Context-Sensitive Virtualization (CSV2).

2021: Nieuwe aanvalsklassen

In 2021 werden met Speculative Code Store Bypass (SCSB) en Floating Point Value Injection (FPVI) nieuwe speculatieve aanvalsklassen geïntroduceerd. SCSB maakt misbruik van het feit dat processors na wijzigingen in zelf-modificerende code tijdelijk nog oude codebytes kunnen uitvoeren.

FPVI maakt het mogelijk om in een kortstondig venster floatingpoint-getallen te injecteren, voordat een machine-clear – oftewel een herstart van de interne pipeline – de toestand corrigeert.

2022: Branch History Injection

In 2022 maakte Spectre Branch History Injection (BHI) duidelijk dat zelfs processors met actieve hardware-isolatie, zoals Intel eIBRS en ARM CSV2, kwetsbaar bleven voor Spectre v2-aanvallen. De branch-history kon namelijk nog steeds worden gebruikt om voorspellingen voor indirecte sprongen over privilegegrenzen heen te beïnvloeden.

Met Retbleed presenteerde de ETH Zürich een op terugsprongen gebaseerde aanvalstechniek die ook gepatchte Intel- en AMD-CPU’s trof. Beschermingsmaatregelen tegen Retbleed in de Linux-kernel kostten tot wel 39 procent aan prestaties.

In 2022 kwamen ook de Apple-processors in het vizier: PACMAN toonde op de Apple M1 aan dat Pointer Authentication Codes (PAC) via een sidechannel kunnen worden omzeild. PAC’s zijn cryptografische handtekeningen die pointers moeten beschermen tegen manipulatie door hun integriteit controleerbaar te maken.

PACMAN combineert een bestaande softwarebug (zoals een geheugenfout) met een hardwarezwakte van de M1-processor en maakt gebruik van speculatieve uitvoering om Pointer Authentication Codes te brute-forcen. Een sidechannel verraadt of een geraden PAC is geaccepteerd. Daardoor kan de PAC-beveiligingslaag omzeild worden.

PACMAN zorgt echter niet voor daadwerkelijke gegevensdiefstal.

2023: Zenbleed, Inception en Downfall

In 2023 verschenen Zenbleed, Inception en Downfall. Opnieuw moesten AMD en Intel microcode-updates uitbrengen. Sommige daarvan zorgden – afhankelijk van het beveiligingslek, de CPU en de workload – voor prestatieverlies van tientallen procenten.

Inception werd beschreven voor alle tot dan toe uitgebrachte AMD Zen-generaties. AMD raadde microcode-updates vooral aan voor Zen 3 en Zen 4.

Downfall vormde vooral een bedreiging voor Intel Core-CPU’s van de 6e tot en met de 11e generatie, evenals voor verschillende Xeon-generaties met Gather-instructies.

Nieuw in 2023 was bovendien Spectre based on Linear Address Masking (SLAM). Die aanval bewees dat het aanvalsspectrum van Spectre kon worden uitgebreid naar functies voor het maskeren van RAM-adressen, zoals Intel Linear Address Masking (LAM), AMD Upper Address Ignore (UAI) en ARM Top Byte Ignore (TBI).

Volgens onderzoekers trof die aanval bestaande AMD-CPU’s met CVE-2020-12965 en, zoals later bleek, zelfs toen nog niet gepresenteerde processors van Intel, AMD en ARM met vergelijkbare functies.

SLAM combineert misbruikbare codefragmenten voor Spectre-aanvallen, zogenaamde gadgets, met een verborgen kanaal (Covert Channel). Dat verborgen kanaal maakt op zijn beurt gebruik van de Translation Lookaside Buffer (TLB) om gevoelige kernelgegevens, zoals /etc/shadow, binnen enkele minuten uit te lezen.

2024: De terugkeer van Spectre v1

In 2024 luidde GhostRace de comeback van Spectre v1 in. Race verwijst naar een zogeheten race condition. Daarmee worden fouten bedoeld die optreden wanneer twee of meer functies bijna tegelijkertijd toegang zoeken tot dezelfde bron. In combinatie met speculatieve uitvoering kunnen daar zelfs gevestigde synchronisatiemechanismen zoals mutexen (Mutual Exclusion, wederzijdse uitsluiting) en spinlocks (vergrendelingen in de processynchronisatie) mee worden omzeild.

Daarbij dringt schadelijke code tijdelijk kritieke secties binnen, terwijl een andere thread daar architectonisch gezien al aan het werk is, wat tot informatielekken leidt. Tegelijkertijd liet de ARM-specifieke aanval TikTag zien dat zelfs de geavanceerde Memory Tagging Extension (MTE) van ARM via sidechannnels kan worden aangevallen. MTE is bedoeld om geheugenfouten te herkennen via tagcontroles –gelekte tags kunnen die beschermingslaag echter verzwakken.

Met Indirector verscheen bovendien een nieuwe variant van Spectre v2, die de beveiligingsaannames rond eIBRS en IBPB onder druk zet. Het maakt duidelijk dat speculatieve indirecte sprongen zelfs bij moderne processors maar moeilijk volledig te isoleren zijn.

2025: Apple in het vizier

In 2025 lieten de aanvallen SLAP en FLOP op Apple Silicon zien dat moderne voorspellingsfuncties voor laadadressen en rekenresultaten gemanipuleerd kunnen worden, namelijk de Last Address Predictor (LAP) en de Load Value Predictor (LVP).

In demonstratiescenario’s konden daarmee via websites gegevens uit eigenlijk geïsoleerde contexten van een browser worden uitgelezen, zoals de browsergeschiedenis en e-mailmetadata.

Training Solo bewijst dat er uit Spectre-v2-aanvallen, waarbij training- en disclosure-gadgets aanvankelijk binnen hetzelfde domein liggen, ook cross-domain-varianten kunnen ontstaan. Dat zet domeinisolaties tegen Spectre v2, zoals eIBRS en Indirect Branch Prediction Barrier (IBPB), onder druk.

Bij Branch Privilege Injection maakte een team van de ETH Zürich gebruik van branch-predictor-race-omstandigheden op Intel Core-processors vanaf de 9e generatie. De microcode-mitigaties die daartegen bescherming bieden, zorgen – afhankelijk van de CPU en het programma – voor aanzienlijke prestatieverliezen. Volgens sommige metingen was dat 2,7 procent bij Alder Lake, oftewel de Core i van de twaalfde generatie. Alternatieve beveiligingstechnieken leidden tot prestatieverlies van wel 8,3 procent.

AMD beschreef met Transient Scheduler Attacks (TSA) een nieuwe klasse van sidechannels. Daarbij voert de processor op speculatieve wijze commando’s uit met ongeldige gegevens omdat hij laadprocessen intern ten onrechte als voltooid beschouwt. Afhankelijk van de variant zijn de tijdelijk gebruikte gegevens afkomstig uit de L1D-context of uit de Store Queue.

Aanvallers met lokale toegang tot de code kunnen zo door het meten van tijdsverschillen gegevens uit bevoorrechte contexten afleiden. Afhankelijk van het platform kun je dat verhelpen met updates voor microcode, het besturingssysteem en de hypervisor, en door interne buffers gericht leeg te maken.

Conclusie

Alleen al het opsommen van de talloze CPU-kwetsbaarheden van de typen Spectre en Meltdown laat zien hoe ingewikkeld moderne processors werken en welke beveiligingslekken erin schuilgaan. Hun enorme rekenkracht halen ze voor een groot deel uit parallellisatie, tijdelijke opslag en de sterk geoptimaliseerde samenwerking daartussen.

Als neveneffect ontstaan er sidechannels die misbruikt kunnen worden voor aanvallen. Eenvoudige oplossingen om die sidechannels af te sluiten zijn er blijkbaar niet. Dat blijkt wel uit het kat-en-muisspel dat CPU-ontwikkelaars met beveiligingsonderzoekers spelen.

Maar de schok door Spectre en Meltdown was heel leerzaam voor de CPU-sector.

David Knichel en Noud van Kruysbergen

Meltdown and Spectre: Vulnerabilities in modern computers leak passwords and sensitive data.https://meltdownattack.com/
LazyFP: Leaking FPU Register State using Microarchitectural Side-Channelshttps://arxiv.org/abs/1806.07480
speculative execution, variant 4: speculative store bypasshttps://project-zero.issues.chromium.org/issues/42450580
Foreshadow: Breaking the Virtual Memory Abstraction with Transient Out-of-Order Executionhttps://foreshadowattack.eu/
ZombieLoad Attack: Return of the Leaking Deadhttps://zombieloadattack.com/
RIDL: Rogue In-Flight Data Loadhttps://ieeexplore.ieee.org/document/8835281
Fallout: Leaking Data on Meltdown-resistant CPUshttps://dl.acm.org/doi/10.1145/3319535.3363219
NetSpectre: Read Arbitrary Memory over Networkhttps://misc0110.net/web/files/netspectre.pdf
LVI – Hijacking Transient Execution with Load Value Injectionhttps://lviattack.eu/
CacheOut: Leaking Data on Intel CPUs via Cache Evictionshttps://cacheoutattack.com/
Take A Way: Exploring the Security Implications of AMD’s Cache Way Predictorshttps://gruss.cc/files/takeaway.pdf
Straight-line speculation whitepaperhttps://developer.arm.com/documentation/102825/0100/
PACMAN: Attacking ARM Pointer Authentication with Speculative Executionhttps://pacmanattack.com/
Speculative Code Store Bypass / CVE-2021-0089 / INTEL-SA-00516https://www.intel.com/content/www/us/en/developer/articles/technical/software-security-guidance/advisory-guidance/speculative-code-store-bypass.html
Floating Point Value Injection / CVE-2021-0086 / INTEL-SA-00516https://www.intel.com/content/www/us/en/developer/articles/technical/software-security-guidance/advisory-guidance/floating-point-value-injection.html
Transient Execution of Non-Canonical Accesseshttps://arxiv.org/abs/2108.10771
Branch History Injection: On the Effectiveness of Hardware Mitigations Against Cross-Privilege Spectre-v2 Attackshttps://www.usenix.org/conference/usenixsecurity22/presentation/barberis
Retbleed: Arbitrary Speculative Code Execution with Return Instructionshttps://comsec.ethz.ch/research/microarch/retbleed/
Hertzbleed Attackhttps://www.hertzbleed.com/
SQUIP: Exploiting the Scheduler Queue Contention Side Channelhttps://stefangast.eu/papers/squip.pdf
Processor MMIO Stale Data Vulnerabilitieshttps://www.intel.com/content/www/us/en/developer/articles/technical/software-security-guidance/technical-documentation/processor-mmio-stale-data-vulnerabilities.html
Zenbleedhttps://lock.cmpxchg8b.com/zenbleed.html
Downfall Attackshttps://downfall.page/
Inception: how a simple XOR can cause a Microarchitectural Stack Overflowhttps://comsec.ethz.ch/research/microarch/inception
SLAM: Spectre based on Linear Address Maskinghttps://www.vusec.net/projects/slam
GhostRace: Exploiting and Mitigating Speculative Race Conditionshttps://www.vusec.net/projects/ghostrace
TikTag: Breaking ARM’s Memory Tagging Extension with Speculative Executionhttps://arxiv.org/abs/2406.08719
Indirectorhttps://www.intel.com/content/www/us/en/security-center/announcement/intel-security-announcement-2024-07-02-001.html
SLAP: Data Speculation Attacks via Load Address Prediction, FLOP: Breaking the Apple M3 CPU via False Load Output Predictionshttps://predictors.fail
Training Solo: On the Limitations of Domain Isolation Against Spectre-v2 Attackshttps://www.vusec.net/projects/training-solo
Branch Privilege Injection: Compromising Spectre v2 Hardware Mitigations by Exploiting Branch Predictor Race Conditionshttps://www.usenix.org/conference/usenixsecurity25/presentation/ruegge
AMD Transient Scheduler Attackshttps://www.amd.com/en/resources/product-security/bulletin/amd-sb-7029.html

Inspiratie in je mailbox

Blijf bij op IT-gebied en verbreed je expertise. Ontvang elke week artikelen over de laatste tech-ontwikkelingen, toepassingen, nieuwe hard- en software én ontvang tips en aanbiedingen.

Loginmenu afsluiten