Un gruppo di ricercatori della società Ledger, specializzata in wallet hardware per criptovalute, ha identificato alcune vulnerabilità nei dispositivi HSM (), che possono essere sfruttate per estrarre chiavi o per eseguire attacchi remoti per alterare il firmware del dispositivo HSM. Al momento, il rapporto sulla questione è disponibile solo in francese; è prevista la pubblicazione di una versione in inglese ad agosto, durante la conferenza Blackhat USA 2019. L'HSM è un dispositivo esterno specializzato, progettato per memorizzare le chiavi pubbliche e private utilizzate per la generazione di firme digitali e per la crittografia dei dati.
L'HSM consente di migliorare significativamente la sicurezza, isolando completamente le chiavi dal sistema e dalle applicazioni, fornendo solo API per eseguire i principali primitivi crittografici implementati sul dispositivo. Di solito, l'HSM viene utilizzato in ambiti che richiedono la massima protezione, come banche, exchange di criptovalute, e centri di certificazione per la verifica e generazione di certificati e firme digitali.
I metodi di attacco proposti consentono a un utente non autenticato di ottenere il pieno controllo sul contenuto dell'HSM, inclusa l'estrazione di tutte le chiavi crittografiche memorizzate nel dispositivo e delle credenziali dell'amministratore. I problemi sono causati da un overflow del buffer nel gestore comandi PKCS#11 e da un errore nell'implementazione della protezione crittografica dei firmware, che consente di bypassare il controllo della firma digitale del firmware PKCS#1v1.5 e di avviare il caricamento di un proprio firmware nell'HSM.
Come dimostrazione è stato organizzato il caricamento di un firmware modificato, in cui è stata inserita una backdoor, che rimane attiva anche dopo i successivi aggiornamenti di firmware standard forniti dal produttore. Si afferma che l'attacco possa essere effettuato da remoto (il metodo di attacco non è specificato, ma si presume si riferisca alla sostituzione del firmware da caricare o all'invio per la lavorazione di certificati appositamente elaborati).
Un problema è stato rilevato durante l'applicazione del fuzzing testing sull'implementazione interna delle istruzioni PKCS#11 proposta nell'HSM. I test sono stati organizzati tramite il caricamento di un proprio modulo nell'HSM utilizzando il normale SDL. Di conseguenza, nell'implementazione di PKCS#11 è stata trovata una vulnerabilità di overflow del buffer, che si è rivelata sfruttabile non solo dall'interno dell'HSM, ma anche attraverso l'accesso al driver PKCS#11 dal sistema operativo principale del computer a cui è collegato il modulo HSM.
Successivamente, l'overflow del buffer è stato sfruttato per eseguire codice sul lato HSM e modificare i parametri di accesso. Durante l'analisi interna, è emersa un'altra vulnerabilità che permette di caricare un nuovo firmware senza firma digitale. Alla fine, è stato scritto e caricato nell'HSM un modulo personale, che espelle all'esterno tutti i segreti memorizzati nell'HSM.
Il nome del produttore degli HSM che presenta vulnerabilità non è ancora stato divulgato, ma si afferma che i dispositivi problematici siano utilizzati da alcune grandi banche e fornitori di servizi cloud. Si riporta inoltre che le informazioni sui problemi erano state precedentemente inviate al produttore, il quale ha già risolto le vulnerabilità con un recente aggiornamento del firmware. I ricercatori indipendenti ipotizzano che il problema possa riguardare i dispositivi della società Gemalto, che a maggio l'aggiornamento Sentinel LDK con la correzione delle vulnerabilità, l'accesso alle informazioni sulle quali è attualmente .
Fonte: opennet.ru
