Un malfattore utilizza tutti gli strumenti a sua disposizione per portare a termine le sue azioni illegali nella Rete. Una di queste azioni è l'uso incondizionato di TOR, il browser che ti assicura l'anonimato in internet (vedi anche il link a pié di pagina per una descrizione più dettagliata).
Tuttavia, TOR è un sistema che ha bisogno di nodi TOR collegati a reti veloci; questi nodi sono specchietti delle allodole creati all'uopo dai cybercop per attirare il malfattore di turno ed utilizzare tecniche per profilarlo e scoprire che cosa sta facendo.
Ovviamente le comunicazioni in TOR sono crittografate ma, utilizzando la tecnica dell'attacco temporale, il cybercop misura con estrema precisione il tempo che il sistema del malfattore impiega per eseguire una certa operazione. Ad esempio, se il suo sistema crittografico risponde in tempi leggermente diversi a seconda del valore di una chiave crittografica di un messaggio cifrato fornito all'uopo, il cybercop potrebbe essere in grado di dedurre informazioni osservando tali differenze temporali.
Per esempio, se un'operazione di confronto con una password inserita con quella memorizzata impiega più tempo quando una parte del confronto è corretta rispetto a quando è completamente errata, questo può dare indizi su quale parte dell'input sia corretta. Infatti, supponiamo che la password memorizzata sia "securepassword". Un utente malintenzionato può iniziare inviando la password "a" e misurando il tempo impiegato per il confronto. Se il confronto è veloce, l'attaccante sa che il primo carattere non è "a". L'attaccante quindi prova "b", "c" e così via, finché non trova un carattere che impiega leggermente più tempo per essere confrontato, indicando una corrispondenza. L'aggressore passa quindi al secondo carattere e ripete il processo, ricostruendo infine l'intera password.
Per quanto riguardano le operazioni crittografiche, in algoritmi come RSA o AES, leggere differenze temporali durante operazioni come la decrittazione o la generazione di firme digitali potrebbe rivelare informazioni critiche sulla chiave segreta e sul tipo di algoritmo utilizzato per la criptazione .
Tuttavia, gli attacchi temporali possono essere mitigati attraverso tecniche come:
la costante temporale: cercare di far sì che le operazioni impieghino sempre lo stesso tempo indipendentemente dai dati di input, rendendo impossibile per un attaccante misurare variazioni significative.
l' introduzione di rumore: aggiungere ritardi casuali per rendere meno prevedibili i tempi di esecuzione.
l' ottimizzazione degli algoritmi: alcuni algoritmi crittografici possono essere progettati in modo da evitare vulnerabilità temporali.
Opmerkingen