Een team van beveiligingsonderzoekers heeft eerder deze week een kwetsbaarheid in de Thunderbolt-interface bekend gemaakt, genaamd Thunderclap. De kwetsbaarheid maakt het mogelijk direct memory access-aanvallen, of kortweg dma-aanvallen, uit te voeren, die ervoor zorgen dat een aanvaller onbeperkte toegang heeft tot het geheugen, met alle gevolgen van dien.
De kwetsbaarheid is eigenlijk een probleem bij alle pcie-apparatuur, maar een thunderbolt-poort is over het algemeen makkelijk bereikbaar dan een pcie-slot, vandaar de naam Thunderclap. Beveiliging tegen deze aanvallen bestaat al in de vorm van een component genaamd de Input-Output Memory Management Unit, of kortweg iommu, maar heel wat systemen schakelen deze niet in of hebben er geen ondersteuning voor.
Zo hebben Windows 7, 8, 10 Home en 10 Pro geen ondersteuning voor de component en de ondersteuning van Windows 10 Enterprise is te beperkt om een degelijke beveiliging te bieden. Linux en FreeBSD hebben wel ondersteuning, maar schakelen deze over het algemeen niet in, afhankelijk van de distributie, vanwege de impact op de systeemprestaties. Enkel MacOS zet de beveiliging standaard aan.
De onderzoekers melden echter dat zelfs met de iommu ingeschakeld een systeem nog niet helemaal veilig is. Om hun concept uit te testen 'bouwden' de onderzoekers een netwerkkaart die alle standaardtaken nog steeds uitvoert, zoals het koppelen van de drivers en het verzenden en ontvangen van netwerkpakketten, maar met toegevoegde kwaadaardige code.
Deze code kon middels het uitlezen van het geheugen al het netwerkverkeer onderscheppen, ook zaken die de controller nooit zouden mogen passeren, zoals Unix domain sockets. Op MacOS en FreeBSD was de controller in staat om programma's te starten met administratorrechten, op Linux was er toegang tot gevoelige kerneldata.
Daarnaast zijn apparaten op MacOS niet afgeschermd van elkaar, waardoor de netwerkkaart bijvoorbeeld ook toetsaanslagen kon registreren. Op Linux konden de onderzoekers de iommu zelfs volledig omzeilen door een paar simpele opties mee te geven in de berichten die de kaart verstuurde.
Apple heeft de exploit om programma's uit te voeren in 2016 al gedicht, maar de onderzoekers zeggen dat de algemene scope van de aanvallen nog steeds relevant is. Windows 10 schakelt sinds versie 1803 Kernel DMA Protection voor Thunderbolt 3-apparaten in, maar niet voor pcie-apparaten.
Aangezien deze optie echter firmwareondersteuning verwacht, zijn oudere laptops, die voor versie 1803 verscheept werden, nog steeds kwetsbaar. Linux Kernel 5.0, die momenteel in ontwikkeling is en aan release client 8 zit, heeft een aantal patches van Intel ingezonden gekregen die de iommu inschakelen voor thunderbolt-apparaten en de functionaliteit uitschakelen die de onderzoekers gebruikten om de module te omzeilen.
De beveiligingsonderzoekers hebben hun platform open source gemaakt, de volledige paper kan je teruglezen op de website van Thunderclap.
Bron: Light Blue Touchpaper