Arm Cortex-M-chips zijn in sommige gevallen kwetsbaar voor aanvallen die sterk doen denken aan Spectre en Meltdown. Daardoor kunnen hackers gevoelige data onderscheppen.
Op de Black Hat Asia-conferentie blijkt dat side channel-aanvallen zoals Spectre en Meltdown niet exclusief x86-chips treffen. Hackers zijn er immers in geslaagd een soortgelijke aanval op te zetten om data te stelen van een systeem met Cortex-M.
Eenvoudig maar niet onkwetsbaar
De Cortex-M-chips van Arm zijn relatief eenvoudige microcontrollers die populair zijn in IoT-toepassingen. Omdat ze inherent minder complex zijn dan volwaardige CPU’s voor computers, servers of smartphones, leken ze ook minder kwetsbaar voor side channel-aanvallen. Bovendien bouwde Arm de nodige beveiliging in om gevoelige data onzichtbaar te houden voor spionerende hackers.
Dat blijkt nu minder goed gelukt dan gehoopt. De Spectre-achtige aanval van de hackers maakt geen misbruik van een bepaalde kwetsbaarheid in Cortex-M, maar profiteert van het feit dat zelfs sterk beveiligde data zijn sporen nalaat. De hackers slaagden er in een systeem te manipuleren zodat bepaalde pakketjes telkens vertraagd werden. Door dat te doen, konden ze belangrijke informatie deduceren. Zo lukte het de hackers om de code van een slim slot te leren.
Cortex-M functioneert naar behoren
Arm van zijn kant claimt dat zijn chips wel degelijk functioneren zoals geadverteerd en verwacht door de industrie. Het hack zou mede mogelijk gemaakt worden door niet optimaal geprogrammeerde code. Dat lijkt deels te kloppen, maar langs de andere kant is de vector die de aanvallers gebruikten wel degelijk gebaseerd op beperkingen binnen Cortex-M. De hackers hopen nu om hun aanval verder uit te werken en zo aan te tonen dat side channel-kwetsbaarheden over de hele lijn aanwezig zijn, ook wanneer de code op een systeem de regels van de kunst helemaal volgt.
Arm van zijn kant kijkt de kat een beetje uit de boom. Side channel-aanvallen zijn notoir moeilijk op te lossen, aangezien ze een bijproduct zijn van de werking van de onderliggende chip-architectuur. Die pas je niet zomaar even aan. Bovendien is er pas echt een risico wanneer blijkt dat dergelijke aanvallen praktisch uitvoerbaar zijn op een manier waartegen code niet kan beschermen. Dat is op dit moment nog niet het geval.