Basta una periferica Thunderbolt o PCI Express (PCIe) opportunamente modificata per compromettere i computer con sistema operativo MacOS, Windows, Linux e FreeBSD (anche se i più a rischio sono i computer Apple che hanno adottato l’interfaccia Thunderbolt già dal 2011).
È quanto ha dimostrato un gruppo di ricercatori della University of Cambridge, della Rice University e della SRI International durante i lavori del Network and Distributed System Security Symposium (NDSS).
Soprannominata Thunderclap, la vulnerabilità sfrutta il modulo Direct Memory Access (DMA) che consente di velocizzare l’accesso alla memoria principale del computer da parte di periferiche di memorizzazione esterne, controller USB, schede di rete e schede grafiche.
Più recentemente, lo stesso privilegio di basso livello per l’accesso alla memoria di sistema è stato esteso anche a periferiche Firewire, Thunderbolt 2 e 3 e USB-C, espandendo di fatto la possibilità di portare a termine un attacco di tipo DMA non solo con le periferiche interne ad un computer ma anche con tutte quelle esterne opportunamente modificate.
Indice degli argomenti
Thunderclap, così un attaccante sfrutta la vulnerabilità
Gli attacchi basati su Direct Memory Access (DMA) sono dunque conosciuti già da tempo dagli esperti di sicurezza informatica: la scoperta della nuova vulnerabilità potrebbe ora consentire ad un attaccante di compromettere un computer in pochi secondi semplicemente collegando un dispositivo plug and play malevolo alla porta Thunderbolt 2 o 3, Firewire o alla più recente porta USB-C.
Si tratta di una vulnerabilità molto grave, anche se per sfruttarla è necessario avere accesso fisico al computer target. E questo farebbe pensare ad un suo possibile utilizzo in operazioni di spionaggio e sabotaggio industriale, più che in attacchi “di massa” come con i tradizionali malware che sfruttano vulnerabilità hardware e software o exploit zero-day.
In particolare, gli attacchi basati su DMA sono possibili perché la porta Thunderbolt consente alle periferiche collegate di bypassare le politiche di sicurezza del sistema operativo e accedere alla memoria di sistema in lettura/scrittura avendo così accesso diretto a informazioni sensibili quali password, login bancari, file privati e attività del browser.
Ciò significa che, semplicemente collegando un dispositivo Thunderbolt opportunamente manomesso mediante un tool come Inception, è possibile manipolare il contenuto della memoria ed eseguire codice arbitrario con privilegi molto più elevati rispetto alle normali periferiche, consentendo agli aggressori di bypassare lo schermo di blocco e prendere il controllo remoto del computer.
Per bloccare gli attacchi basati su DMA, la maggior parte dei sistemi operativi e dei dispositivi hardware usano il modulo Input/Output Memory Management Unit (IOMMU) che consente di verificare quale periferica (legittima) può accedere alla memoria e a quale regione della memoria stessa.
Ecco come difendersi dalla vulnerabilità Thunderclap
Purtroppo, sostengono i ricercatori di sicurezza, il controllo IOMMU non è così efficiente come sostengono invece gli sviluppatori di sistemi operativi e driver di periferiche. E per dimostrarlo hanno utilizzato un dispositivo open source, chiamato appunto Thunderclap, che loro stessi avevano già sviluppato nel 2015, rilasciando un documento con le informazioni tecniche dettagliate di tutte le nuove vulnerabilità che hanno dichiarato di aver scoperto utilizzando il loro stack hardware/software.
Purtroppo, al momento, l’unico modo (di fatto impraticabile) per proteggersi da un attacco DMA consiste nel disabilitare le porte Thunderbolt del computer.
È importante, poi, evitare di utilizzare le stazioni di ricarica pubbliche di tipo USB-C molto più soggette a manomissione. Così come bisogna diffidare dell’uso di periferiche sconosciute che potrebbe comportare l’installazione di driver compromessi.
Secondo Alessio Pennasilico, Information & Cyber Security Advisor presso P4I – Partners4Innovation “garantire la sicurezza degli end-point è una sfida quotidiana, un gioco a guardie e ladri tra nuove accortezze e nuove tecniche di attacco. A volte, tecniche non poi così nuove, come in questo caso. La necessità di performance sempre più spinte e la facilità d’uso, tuttavia, impediscono a volte di attivare protezioni che penalizzerebbero gli utilizzatori in modo eccessivo”.
“Questa è la grande sfida della security”, secondo Pennasilico: “trovare le misure sufficienti a fermare un attacco senza penalizzare troppo l’uso. Per questo a volte certi attacchi diventano possibili ed è necessario essere sempre aggiornati, sia in informazioni che in tecnologie, per affrontare le “nuove” minacce”.
Interessante anche l’analisi tecnica di Fabrizio Croce, Area Director South Europe di WatchGuard: “Thunderclap è una vulnerabilità hardware di basso livello che potrebbe consentire ad un attaccate di iniettare un malware dalla porta Thunderbolt, le nuove porte ad alta velocità dei PC Windows e Mac di nuova generazione che utilizzano la nuova porta USB-C”.
Secondo Croce, “Thunderbolt ha un grande pregio che è la velocità di trasmissione dati, ma con un grosso rovescio della medaglia in fatto di sicurezza: sono direttamente connesse al DMA quindi le periferiche che usano questa interfaccia possono scrivere direttamente in memoria bypassando qualsiasi sistema software di protezione di più alto livello. Il meccanismo di difesa IOMMU permette ai dispositivi di accedere esclusivamente a quelle zone di memoria necessarie per portare a termine determinati compiti in ambiente protetto. Ma la sua attivazione ha un rovescio della medaglia in termini di performance e su molti sistemi operativi per default questa unità è disabilitata e Windows ad esempio non lo supporta affatto eccetto Windows10 Enterprise”.
“In caso di infezione”, continua l’analista, “difficilmente un antivirus basato su firme è utile, ma vi sono tutta una famiglia di prodotti e software che si basano su machine learning, sandboxing, analisi comportamentale dei processi, correlazione del traffico di rete ecc. che potrebbero identificare un eventuale componente software malevolo e disinnescarlo, ponendo anche il computer in modalità off-line mediante host isolation ed evitando così la propagazione e il pivoting”.