Kwetsbaarheid webrauzers via grafische kaart

Zijkanaalaanvallen via cache en WebGPU)

Aanvallers kunnen grafische kaart via cachegeheugen ‘afluisteren’ bij communicatienorm WebCPU (afb: Univ. van Graz/Lunghammer)

Via zogeheten zijkanaalaanvallen, waarbij informatie gebruikt wordt die de computer weggeeft tijdens de verwerking zoals door geluid, hebben onderzoekers van de universiteit van Graz gegevens van computers ontfutseld die grafische kaarten uitwisselen met webrauzers via WebGPU.
Moderne webstekken vragen steeds meer verwerkingscapaciteit van webrauzers. Daardoor krijgen die programma’s ook steeds vaker toegang tot grafische verwerkers (kaarten) om de centrale processor te ontlasten. Javascript, een scripttaal om zo’n stek allerlei ‘kunstjes’ te laten doen, kan die grafische kaart gebruiken via WebGL of WebGPU, maar dat maakt het systeem kwetsbaar voor aanvallen door derden.
De onderzoekers gebruikten een webstek met een kwaadaardig Javascript om via WebGPU (gpu staat voor grafische kaart) allerlei informatie van andere rekentuigen te stelen zoals toetsaanslagen of versleutelingscodes. Die communicatienorm is momenteel volop in ontwikkeling, maar allerlei webrauzers zoals Chrome, Edge en Firefox zouden die al gebruiken of althans ondersteunen. WebGPU biedt de webstekontwerper meer mogelijkheden dan WebGL.
“Voor onze aanvallen is het niet nodig dat de gebruiker verbonden is met een weblocatie. De aanvallen kunnen uitgevoerd worden tijdens een normale internetsessie”, zegt Lukas Giner. “Met dit onderzoek willen we de makers van de webprogramma’s duidelijk maken dat ze met de toegang tot de grafische kaart de veiligheid en privacy in het vizier houden.”
De onderzoekers voerden hun exercities uit met verschillende grafische kaarten van NVIDIA (de GTX-1000-serie en de series RTX-2000, RTX-3000 en RTX-4000) en AMD (RX-6000-serie). Voor de aanvallen gebruikten ze het cachegeheugen (tijdelijk geheugen) als ‘zijkanaal’ dat via WebGPU toegankelijk is en bedoeld is voor de snelle verwerking van gegevens. Op die manier ontfutselden ze de aangevallen computers informatie.

Via Javascript

Dat deden ze door een eigen Javascript ‘mee te laten luisteren’ naar de cache en bij te houden wanneer de eigen code werd verwijderd door nieuwe invoer. Daarmee zou je relatief snel en accuraat toetsaanslagen kunnen afleiden.

Door het cachegeheugen fijner te segmenteren zouden de onderzoekers er in geslaagd zijn een eigen (geheim) communicatiekanaal aan te maken, waarin lege en gevulde cachesegmenten de enen en nullen vormden. Ze gebruikten 1024 van die cachesegmenten en bereikten zo overdrachtsnelheden van 10,9 kilobytes per seconden. Dat is snel genoeg om eenvoudige informatie over te brengen. Aanvallers kunnen op die manier gegevens stelen als de aangevallen computers niet verbonden zijn met het wereldwijde web.
Het derde type aanval richtte zich op de AES-versleuteling, een methode om documenten en verbindingen te versleutelen. Daartoe vulden ze de cache (hoe is mij=as niet duidelijk) met een eigen AES-versleuteling. De reactie van dat tijdelijke geheugen maakte het de aanvallers mogelijk de plaatsen te achterhalen in het aangevallen systeem die verantwoordelijk zijn voor de versleuteling en de toegang tot de sleutels van het aangevallen systeem.
“Die AES-aanval is wat ingewikkelder onder echte omstandigheden, aangezien veel versleutelingen parallel verlopen op een grafische kaart”, zegt medeonderzoeker Roland Czerny. “Toch hebben we aangetoond dat we algoritmes heel precies konden aanvallen. We hebben de resultaten van ons onderzoek natuurlijk doorgegeven naar de makers van de webrauzers zodat die er rekening mee kunnen houden bij de verdere ontwikkeling van WebGPU.”

Bron: Alpha Galileo

Geef een reactie

Het e-mailadres wordt niet gepubliceerd. Vereiste velden zijn gemarkeerd met *

Deze site gebruikt Akismet om spam te verminderen. Bekijk hoe je reactie-gegevens worden verwerkt.