c’t 07/2026
Wat is er waar van IT-mythes?
Cover van
Cover voor Kwetsbaarheid in CPU’s omzeilt belangrijke beveiliging

Kwetsbaarheid in CPU’s omzeilt belangrijke beveiliging

De System Management Mode (SMM) van x86-processors is een geliefd doelwit voor aanvallen. Met een truc kan een beveiligingsfunctie van SMM worden omzeild.

Lees verder na de advertentie

SMM geeft code maximale toegangsrechten

De bijzondere CPU-bedrijfsmodus System Management Mode (SMM) van x86-processors houdt beveiligingsonderzoekers al tientallen jaren bezig. Steeds opnieuw ontdekken zij nieuwe kwetsbaarheden in SMM. SMM is een aantrekkelijk doelwit voor aanvallers, omdat code die in deze modus wordt uitgevoerd over maximale toegangsrechten beschikt.

Tijdens Def Con 34 demonstreerde beveiligingsonderzoeker Christopher Domas, alias xoreaxeaxeax, hoe een van de verschillende beveiligingsfuncties van SMM kan worden omzeild. Deze beveiliging houdt in dat alle cores van een processor altijd gezamenlijk naar SMM moeten overschakelen. Het idee hierachter is dat, wanneer óf alle cores óf geen enkele core in SMM draait, er geen core overblijft waarop malware kan draaien om SMM-functies aan te vallen.

Met een proof-of-concept (PoC) toont Domas echter de kwetsbaarheid ‘smiiiiiiiiiiiiiiii’ aan. De aanvalscode moet daarbij wel specifiek worden aangepast aan verschillende CPU-typen.

Tip!

Beveilig uw huis en blijf dreigingen een stap voor - met Foscam
Beveilig uw huis en blijf dreigingen een stap voor – met Foscam

Slimme IP-camera’s met live toezicht en haarscherpe beveiliging!

Meer dan honderd SMM-kwetsbaarheden bekend

De kwetsbaarheid ‘smiiiiiiiiiiiiiiii’ vormt op zichzelf geen aanval en heeft ook geen CVE-nummer. Christopher Domas wijst er echter op dat er meer dan honderd SMM-kwetsbaarheden bekend zijn, waarvan sommige nu mogelijk met behulp van smiiiiiiiiiiiiiiii voor aanvallen kunnen worden misbruikt. Hiervoor zijn in principe aanvallen volgens het TOCTOU-concept (Time-of-Check to Time-of-Use) geschikt.

SMM is onmisbaar, bijvoorbeeld voor het aansturen van de energiebesparingsfuncties (power management) van de hardware.

Omdat de risico’s van SMM al jaren bekend zijn, beperken moderne besturingssystemen en UEFI-BIOS-versies de toegang ertoe. Microsoft schrijft bijvoorbeeld in zijn richtlijnen voor computers met een Windows-logo voor dat het UEFI-BIOS een tabel moet bevatten met toegestane adresbereiken voor SMM-toegang. Andere vormen van toegang worden door het systeem geblokkeerd.

Zo schakelen CPU-cores over naar SMM

De code waarmee het besturingssysteem de CPU naar SMM laat overschakelen, draait op een willekeurige CPU-core, bijvoorbeeld Core 1. Om ervoor te zorgen dat ook alle andere cores naar SMM overschakelen, stuurt Core 1 een overeenkomstig verzoek naar alle andere cores, bijvoorbeeld ook naar Core 0. Dit SMM-verzoek verloopt echter na één seconde. Deze wachttijd (timeout) is bedoeld om de andere cores de gelegenheid te geven hun huidige taken nog af te ronden.

De andere CPU-cores mogen ondertussen geen nieuwe machine-instructies aannemen, maar alleen de instructie die op dat moment wordt uitgevoerd voltooien. Normaal gesproken duurt dat minder dan een milliseconde, zelfs wanneer een instructie enkele duizenden klokcycli in beslag neemt. Een kloksnelheid van drie tot vier gigahertz komt immers overeen met drie tot vier miljard klokcycli per seconde, oftewel drie tot vier miljoen per milliseconde.

Bijblijven met de laatste security-ontwikkelingen?

Lees over dreigingen, kwetsbaarheden en verdedigingstechnieken, hardware, software en nog véél meer. Schrijf je in voor onze gratis nieuwsbrief.
Ontvang elke week het laatste IT-nieuws, de handigste tips en speciale aanbiedingen.

Extreem trage instructie omzeilt de timeout

Chris Domas maakt misbruik van deze timeout. Hij ging op zoek naar een assembler-instructie die extreem lang blijft draaien. Daarvoor startte hij de niet geheel serieus bedoelde wedstrijd ‘Hall of Shame van (x86-)assembler-instructies’. Koploper is de instructie fxrstor64, die onder bepaalde omstandigheden op een AMD Ryzen 7 5800H meer dan 74 miljard CPU-cycli verbruikte en daardoor meer dan 23 seconden nodig had.

Eén core blijft achter in SMM

De PoC van Domas werkt, grof gezegd, als volgt. Eerst houdt hij een willekeurige CPU-core bezig met een assembler-instructie die langer dan één seconde duurt. Meteen daarna krijgt een andere CPU-core de opdracht om naar SMM over te schakelen. Deze core vraagt vervolgens ook de eerstgenoemde core om hetzelfde te doen. De tweede core wacht nu op de eerste.

Na één seconde stopt de tweede core met wachten, voert zijn taak in SMM uit en schakelt vervolgens terug naar de normale bedrijfsmodus. De eerste core schakelt echter pas naar SMM over zodra zijn langdurige ‘bezigheidstaak’ is voltooid. Daardoor ontstaat de kritieke situatie waarin één core in SMM draait, terwijl ten minste één andere core dat niet doet. Op die andere core zou vervolgens malware kunnen draaien.

Eerdere ontdekkingen van Christopher Domas

Christopher Domas publiceerde in 2017 de fuzzingtool Sandsifter voor het onderzoeken van ongedocumenteerde instructies van x86-processors. Daarmee ontdekte hij in 2018 in oude VIA-processors de beveiligingskwetsbaarheid Rosenbridge. Samen met zijn vrouw Stephanie Domas runt hij het bedrijf Dazzle Cat Duo.

Tot slot

De demonstratie van Domas laat zien dat zelfs beveiligingsmaatregelen die SMM-aanvallen moeten bemoeilijken niet waterdicht zijn. Smiiiiiiiiiiiiiiii is op zichzelf geen kant-en-klare aanval, maar kan bestaande SMM-kwetsbaarheden mogelijk wel eenvoudiger uitbuitbaar maken. Daarmee onderstreept het onderzoek opnieuw hoe lastig het is om een krachtig en diep in de hardware verankerd mechanisme als SMM volledig af te schermen.

Tip

Waarom NIS2 je dwingt anders naar cybersecurity te kijken
Waarom NIS2 je dwingt anders naar cybersecurity te kijken

Download het e-book en krijg direct inzicht in de stappen die jouw organisatie moet zetten.

0

Praat mee

Abonneer
Laat het mij weten wanneer er
0 Reacties
oudste
nieuwste

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