Tre ricercatori hanno scoperto una tecnica che permette di decifrare una chiave RSA a 4.096 bit utilizzando il microfono di uno smartphone per registrare il suono emesso da un computer durante la visualizzazione di un messaggio criptato. Il test è stato effettuato con un Samsung Galaxy Note 2 e un notebook IBM, sul quale è stato installato GNU Privacy Guard. Questo tipo di attacco, basato sulla criptoanalisi acustica, ha successo anche con altre applicazioni.
Daniel Genkin e Eran Tromer della Tel Aviv University, e Adi Shamir, uno degli inventori dell’algoritmo RSA, ora professore al Weizmann Institute of Science, hanno pubblicato un documento che descrive in dettaglio la RSA Key Extraction, dopo la distribuzione di un update per GnuPG che contiene contromisure per la prevenzione dell’attacco. Gli scienziati sono riusciti a decifrare la chiave a 4.096 bit usata dal software in un ora, analizzando il suono generato dal computer durante la decodifica di una email. Lo smartphone è stato posizionato ad una distanza di 30 centimetri, ma utilizzando microfoni professionali è possibile raggiungere anche i 4 metri.
Chiaramente la tecnica ha alcuni limiti, in quanto i malintenzionati devono posizionare uno smartphone o un microfono nelle vicinanze del notebook, nel momento esatto in cui il messaggio viene ricevuto. Nonostante ciò, il risultato dimostra i progressi ottenuti dalla criptoanalisi acustica, una tipologia di “side-channel attack” che permette di ottenere informazioni dai consumi elettrici, dalle emissioni elettromagnetiche o, come in questo caso, dal suono. Per compiere l’attacco, si potrebbe eventualmente creare un’app che automatizza il processo di cattura ed elaborazione dei dati, oppure installare un malware che registra i suoni.
Il suono, dal quale è possibile risalire alla chiave RSA, viene emesso dalle vibrazioni dei componenti elettronici (condensatori e induttori) presenti nel circuito di regolazione della tensione, impegnato a garantire il corretto valore di tensione alla CPU, durante le operazioni di decodifica. Il segnale non deriva quindi da componenti meccanici, come hard disk o ventole. Usare il computer in un ambiente rumoroso non blocca l’attacco, perché il suono può essere filtrato. Una delle possibili contromisure prende il nome di RSA ciphertext randomization.