Una nuova metodologia di attacco supera il problema del "jitter di rete", che può influire sul successo degli attacchi tramite canali secondari.

La nuova metodologia, sviluppata dai ricercatori dell'Università di Leuven (Belgio) e della New York University di Abu Dhabi, ha dimostrato che i malintenzionati possono sfruttare le peculiarità dei protocolli di rete per organizzare fughe di informazioni riservate.
Questa metodologia chiamata , dimostrata quest'anno alla conferenza Usenix, utilizza le peculiarità nella gestione delle richieste eseguite simultaneamente dai protocolli di rete per risolvere uno dei problemi degli attacchi remoti basati sul tempo attraverso canali secondari.
Problemi degli attacchi remoti basati sul tempo
Nell'esecuzione di attacchi basati sul tempo, i malintenzionati misurano le differenze nei tempi di esecuzione di diversi comandi, cercando di aggirare la protezione fornita dalla crittografia e ottenere dati su informazioni riservate, come chiavi di crittografia, corrispondenza privata e comportamento degli utenti durante la navigazione web.
Ma per attuare con successo attacchi basati sul tempo, l'attaccante ha bisogno di conoscere con precisione il tempo richiesto dall'applicazione sotto attacco per elaborare la richiesta.
Questo diventa un problema quando si attaccano sistemi remoti come i server web, poiché il ritardo in rete (jitter) porta a variazioni nei tempi di risposta, complicando il calcolo del tempo di elaborazione.
Nel corso degli attacchi remoti basati sul tempo, i malintenzionati di solito inviano ogni comando più volte e svolgono un'analisi statistica dei tempi di risposta per ridurre l'influenza del jitter di rete. Ma questo metodo è utile solo fino a un certo punto.
«Più piccola è la differenza di tempo, più richieste sono necessarie, e a un certo punto il calcolo diventa impossibile», ci racconta il ricercatore di sistemi di protezione dei dati e principale autore dell'articolo su questo nuovo tipo di attacchi, Tom Van Goethem.
L'attacco di tempistica "senza tempo"
La metodologia sviluppata da Goethem e dai suoi colleghi esegue attacchi remoti basati sul tempo in modo tale da annullare l'influenza del jitter di rete.
Il principio alla base dell'attacco di tempistica senza tempo è semplice: le richieste devono arrivare al server esattamente nello stesso momento, invece di essere inviate in modo sequenziale.
La simultaneità garantisce che tutte le richieste si trovino nelle stesse condizioni di rete e che il percorso tra l'attaccante e il server non influisca sul loro trattamento. L'ordine di ricezione delle risposte fornirà all'attaccante tutte le informazioni necessarie per confrontare i tempi di esecuzione.
«Il principale vantaggio degli attacchi temporali simultanei è che sono molto più precisi, quindi sono necessarie meno richieste. Ciò consente all'attaccante di riconoscere le differenze nei tempi di esecuzione fino a 100 ns», afferma Van Goetem.
La minima differenza di tempo osservata dai ricercatori durante un attacco temporale tradizionale su Internet era di 10 µs, ossia 100 volte superiore rispetto a un attacco con richieste simultanee.
Come viene assicurata la simultaneità
«Assicuriamo la simultaneità collocando entrambe le richieste in un unico pacchetto di rete», spiega Van Goetem. «In pratica, l'implementazione dipende principalmente dal protocollo di rete».
Per inviare richieste simultanee, i ricercatori utilizzano le funzionalità di diversi protocolli di rete.
Ad esempio, HTTP/2, che sta rapidamente diventando lo standard de facto per i server web, supporta il «multiplexing delle richieste» — una funzione che consente al client di inviare più richieste in parallelo su una singola connessione TCP.
«Nel caso di HTTP/2, dobbiamo semplicemente fare in modo che entrambe le richieste siano collocate in un pacchetto (ad esempio, scrivendole entrambe nel socket contemporaneamente)». Tuttavia, questa metodologia ha le sue complessità. Ad esempio, nella maggior parte delle reti di distribuzione dei contenuti come Cloudflare, che alimenta gran parte del web, la connessione tra i server edge e il sito avviene tramite il protocollo HTTP/1.1, che non supporta il multiplexing delle richieste.
Sebbene ciò riduca l'efficacia dell'attacco temporale, rimangono comunque più precisi rispetto agli attacchi remoti tradizionali, poiché eliminano il jitter tra l'attaccante e il server CDN edge.
Nel caso di protocolli che non supportano il multiplexing delle richieste, gli attaccanti possono utilizzare un protocollo di rete intermedio che incapsula le richieste.
I ricercatori hanno dimostrato come un attacco temporale senza tempo funzioni nella rete Tor. In questo caso, l'attaccante incapsula più richieste in una cella Tor - un pacchetto crittografato trasmesso tra i nodi della rete Tor in pacchetti TCP unici.
«Poiché la catena Tor per i servizi onion percorre l'intero percorso fino al server, possiamo garantire che le richieste arriveranno contemporaneamente», afferma Van Goetem.
Attacchi senza tempo in pratica
Nel loro articolo, i ricercatori hanno studiato attacchi senza tempo in tre situazioni diverse.
Durante attacchi temporali diretti l'attaccante si connette direttamente al server e cerca di organizzare una fuga di informazioni segrete legate all'applicazione.
«Poiché nella realizzazione della maggior parte delle applicazioni web non si considera che gli attacchi temporali possano essere molto pratici e precisi, riteniamo che molti siti web siano vulnerabili a tali attacchi», racconta Van Goeten.
Durante attacchi temporali intersiti l'attaccante effettua richieste a diversi siti web dal browser della vittima e fa supposizioni sul contenuto delle informazioni riservate, osservando la sequenza delle risposte.
Gli attaccanti hanno utilizzato questo schema per sfruttare una vulnerabilità del programma di ricompensa per bug di HackerOne, estraendo informazioni come parole chiave utilizzate in report riservati su vulnerabilità non risolte.
«Ho cercato casi in cui un attacco temporale fosse stato precedentemente documentato, ma non considerato efficace. Il problema di HackerOne è stato segnalato almeno tre volte (identificatori dei bug: , e ), ma non è stato risolto perché si pensava che questo attacco non fosse utilizzabile. Allora ho creato un semplice progetto di ricerca interno con attacchi temporali senza tempo.
All'epoca era ancora molto non ottimizzato, perché stavamo continuando a esplorare i dettagli dell'attacco, ma, nonostante ciò, si è rivelato piuttosto preciso (sulla mia connessione WiFi domestica sono riuscito a ottenere risultati molto precisi).»
I ricercatori hanno anche provato a condurre attacchi senza tempo sul protocollo WiFi WPA3.
Uno degli autori dell'articolo, Matthi Vanhoef, aveva già scoperto . Ma il tempo era troppo breve per essere utilizzato su dispositivi ad alte prestazioni, o non poteva essere utilizzato contro i server.
«Con il nuovo tipo di attacchi temporali senza tempo abbiamo dimostrato che è possibile utilizzare l'authentication handshake (EAP-pwd) contro i server, anche quando questi sono dotati di hardware potente», spiega Van Goetem.
Il momento ideale
Nel loro articolo, i ricercatori hanno fornito raccomandazioni per proteggere i server dagli attacchi temporali senza tempo, ad esempio limitando l'esecuzione a tempo costante e aggiungendo ritardi casuali. Per implementare misure di protezione pratiche contro gli attacchi temporali diretti che abbiano un impatto ridotto sulle prestazioni della rete, sono necessarie ulteriori ricerche.
«Riteniamo che quest'area di ricerca sia ancora nelle sue fasi iniziali e richieda uno studio molto più approfondito», afferma Van Goetem.
Negli studi futuri sarà possibile esplorare altre metodologie che i malintenzionati potrebbero utilizzare per eseguire attacchi temporali simultanei, altri protocolli e livelli di rete intermedi che possono essere obiettivo di attacchi, nonché valutare la vulnerabilità di siti web popolari che consentono tali ricerche nel contesto di programmi di bug bounty.
Il nome «senza tempo» è stato scelto perché «in questi attacchi non abbiamo utilizzato alcuna informazione (assoluta) sul tempo», spiega Van Goetem.
«Inoltre, possono essere considerati “senza tempo” perché gli attacchi (remoti) temporali sono utilizzati da molto tempo, e, secondo le nostre ricerche, la situazione sta solo peggiorando».

Il testo completo del report con Usenix si trova .
In base alla pubblicità
con protezione contro gli attacchi DDoS e hardware all'avanguardia. Tutto questo riguardo ai nostri server epici. Configurazione massima — 128 core CPU, 512 GB RAM, 4000 GB NVMe.
Fonte: habr.com
