Recuperare chiavi RSA, basta uno smartphone e una CPU

Alcuni ricercatori sono riusciti a estrarre chiavi crittografiche RSA 4096 bit analizzando i suoni messi dalla sezione di alimentazione dedicata alla CPU.

Avatar di Manolo De Agostini

a cura di Manolo De Agostini

I ricercatori Daniel Genkin, Adi Shamir e Eran Tromer hanno messo a punto un attacco che estrae efficacemente chiavi crittografiche private catturando i suoni emessi da un computer mentre questo è impegnato a gestire un messaggio cifrato. La tecnica, illustrata in un documento, è già stata mostrata per recuperare con successo una chiave crittografica RSA 4096-bit, usata per decodificare email attraverso GNU Privacy Guard, una popolare implementazione open source dello standard OpenPGP.

Arstechnica spiega che la pubblicazione del nuovo attacco segue il rilascio di un aggiornamento GnuPG valutato come "importante" e che contiene le contromisure per prevenire l'attacco stesso. Gli scienziati avvertono però che una varietà di altre applicazioni sono suscettibili allo stesso attacco di "crittoanalisi acustica". In molti casi, il suono fa trapelare chiavi che possono essere raccolte da uno smartphone tradizionale posizionato vicino al computer impegnato nella decodifica di un'e-mail.

Samsung Note II a 30 cm dal laptop impegnato nella decodifica. Il microfono interno del telefono, puntato verso le feritoie del portatile, ha permesso di recuperare la chiave - clicca per ingrandire

"Abbiamo studiato e dimostrato un attacco per l'estrazione di chiavi che può rivelare le chiavi segrete RSA 4096-bit usate da GnuPG in funzione su un PC portatile nel giro di un'ora, analizzando il suono generato dal computer durante la decodifica dei testi cifrati scelti", hanno scritto i ricercatori. "Dimostriamo l'attacco su vari target e con vari metodi, tra cui l'uso del microfono interno di un semplice telefono cellulare posto accanto al computer e usando un microfono sensibile da una distanza di quattro metri".

La tecnica ha dei chiari limiti. I malintenzionati devono avere uno smartphone o un altro dispositivo con microfono attivato e devono poterlo collocare in prossimità di un computer che in quel preciso momento sta decodificando un messaggio. La tecnica rappresenta però un'importante passo avanti nel campo dell'analisi di attacchi side-channel, dedicata alle implementazioni crittografiche che si fanno "sfuggire" informazioni segrete attraverso i consumi elettrici, emanazioni elettromagnetiche, differenze nei timing e altro.

L'attacco funziona monitorando il suono emesso da un computer e più precisamente dai componenti dedicati all'alimentazione della CPU. Focalizzando l'attenzione sui suoni comunemente effettuati quando molti computer eseguivano GnuPG gli scienziati hanno scoperto che potevano distinguere tra la firma acustica di diverse chiavi segrete RSA (firma o decodifica) ed estrarre completamente chiavi di decrittazione misurando il rumore fatto dalla macchina durante la decodifica dei testi cifrati scelti.

Un'altra configurazione dell'attacco - clicca per ingrandire

"Il segnale acustico di interesse è generato dalla vibrazione di componenti elettronici (condensatori e induttori) nel circuito di regolazione della tensione, mentre questo lotta per mantenere una tensione costante alla CPU nonostante le grandi fluttuazioni nel consumo di energia causata da vari carichi", hanno scritto i ricercatori. "Il segnale in questione non è causato da componenti meccanici come la ventola o il disco rigido, né altoparlante interno del portatile."

La tecnica non è certo usabile da principianti, eppure gli aggiornamenti di mercoledì da GnuPG attestano che rappresenta una minaccia realistica in determinati scenari. Gli sviluppatori possono implementare contromisure, applicando una tecnica nota come RSA ciphertext randomization. E non basta far lavorare il computer in un ambiente rumoroso per sventare l'attacco, dato che le emissioni acustiche spesso possono essere filtrate.