Un gruppo di ricercatori dell'azienda Ledger, produttrice di portafogli hardware per criptovalute, diverse vulnerabilità nei dispositivi HSM (), che possono essere utilizzate per estrarre chiavi o effettuare un attacco remoto per sostituire il firmware del dispositivo HSM. Attualmente, il rapporto sul problema è disponibile solo in francese, mentre è previsto un rapporto in inglese ad agosto durante la conferenza Blackhat USA 2019. L'HSM è un dispositivo esterno specializzato, progettato per memorizzare chiavi pubbliche e private utilizzate per generare firme digitali e per la crittografia dei dati.
L'HSM consente di aumentare considerevolmente la sicurezza, poiché isola completamente le chiavi dal sistema e dalle applicazioni, offrendo solo un'API per eseguire i primitivi crittografici di base implementati sul lato del dispositivo. Di solito, l'HSM è utilizzato in settori in cui è necessario garantire la massima sicurezza, come banche, exchange di criptovalute, e centri di certificazione per la verifica e la 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, incluso l'estrazione di tutte le chiavi crittografiche e delle credenziali dell'amministratore memorizzate nel dispositivo. Le problematiche sono causate da un buffer overflow nel gestore comandi interno PKCS#11 e da un difetto nell'implementazione della protezione crittografica dei firmware, che consente di bypassare la verifica del firmware attraverso la firma digitale PKCS#1v1.5 e di avviare il caricamento nel HSM di un proprio firmware.
Come dimostrazione è stato organizzato il caricamento di un firmware modificato, al quale è stata aggiunta una backdoor, che rimane attiva anche dopo le installazioni successive degli aggiornamenti regolari del firmware forniti dal produttore. Si afferma che l'attacco può essere effettuato da remoto (il metodo di attacco non è specificato, ma probabilmente si intende la sostituzione del firmware caricato o la trasmissione per elaborazione di certificati appositamente formattati).
Il problema è stato identificato durante l'applicazione di test di fuzzing sulla realizzazione interna delle comandi PKCS#11 proposta nell'HSM. I test sono stati organizzati tramite il caricamento del proprio modulo nell'HSM usando il normale SDL. Di conseguenza, nella realizzazione del PKCS#11 è stata riscontrata un'overflow del buffer, che ha dimostrato di poter essere sfruttata non solo dall'ambiente interno dell'HSM, ma anche tramite accesso al driver PKCS#11 dal sistema operativo principale del computer a cui è connesso il modulo HSM.
Successivamente, l'overflow del buffer è stato sfruttato per eseguire codice sul lato HSM e per ridefinire i parametri di accesso. Durante l'analisi della struttura interna, è stata scoperta un'altra vulnerabilità che consente di caricare un nuovo firmware senza firma digitale. Alla fine, è stato scritto e caricato nell'HSM un modulo proprietario che espelle all'esterno tutti i segreti memorizzati nell'HSM.
Il nome del produttore degli dispositivi HSM nei quali sono state riportate vulnerabilità non è ancora stato divulgato, ma si afferma che i dispositivi problematici sono utilizzati da alcune grandi banche e fornitori di servizi cloud. Si riporta inoltre che le informazioni sui problemi sono state precedentemente inviate al produttore, il quale ha già risolto le vulnerabilità in un recente aggiornamento del firmware. I ricercatori indipendenti ipotizzano che il problema possa riguardare i dispositivi dell'azienda Gemalto, che a maggio ha rilasciato un aggiornamento di Sentinel LDK per risolvere le vulnerabilità, l'accesso alle informazioni riguardanti le quali è attualmente .
Fonte: opennet.ru
