Vulnerabilità TPM-Fail che consente di recuperare le chiavi archiviate nei moduli TPM

Un team di ricercatori del Worcester Polytechnic Institute, dell'Università di Lubecca e dell'Università della California a San Diego ha sviluppato Un metodo di attacco side-channel che consente di recuperare il valore delle chiavi private archiviate nel TPM (Trusted Platform Module). L'attacco ha ricevuto un nome in codice TPM-Fallimento e influisce sull'FTPM (implementazione del software basato su firmware in esecuzione su un microprocessore separato all'interno della CPU) di Intel (CVE-2019-11090) e TPM hardware su chip STMicroelectronics ST33 (CVE-2019-16863).

ricercatori hanno pubblicato prototipo di toolkit di attacco e ha dimostrato la capacità di recuperare una chiave privata a 256 bit utilizzata per generare firme digitali utilizzando gli algoritmi a curva ellittica ECDSA ed EC-Schnorr. A seconda dei diritti di accesso, il tempo di attacco totale sui sistemi Intel ftPM è di 4-20 minuti e richiede l'analisi di 1-15 mila operazioni. Occorrono circa 33 minuti per attaccare i sistemi dotati del chip ST80 e analizzare circa 40mila operazioni per generare una firma digitale.

I ricercatori hanno anche dimostrato la possibilità di effettuare un attacco remoto in reti ad alta velocità, che ha permesso di recuperare una chiave privata in una rete locale con una larghezza di banda di 1 GB in condizioni di laboratorio in cinque ore, dopo aver misurato il tempo di risposta per 45 migliaia di sessioni di autenticazione con un server VPN basato sul software strongSwan, che memorizza le sue chiavi nel vulnerabile TPM.

Il metodo di attacco si basa sull'analisi delle differenze nei tempi di esecuzione delle operazioni nel processo di generazione di una firma digitale. La stima della latenza di calcolo consente di determinare informazioni sui singoli bit durante la moltiplicazione scalare nelle operazioni su curva ellittica. Per l'ECDSA è sufficiente determinare anche pochi bit con informazioni sul vettore di inizializzazione (nonce) per effettuare un attacco per recuperare in sequenza l'intera chiave privata. Per portare a termine con successo un attacco è necessario analizzare il tempo di generazione di diverse migliaia di firme digitali create su dati noti all'aggressore.

vulnerabilità eliminato da STMicroelectronics in una nuova edizione di chip in cui l'implementazione dell'algoritmo ECDSA è stata liberata da correlazioni con il tempo di esecuzione delle operazioni. È interessante notare che i chip STMicroelectronics interessati vengono utilizzati anche in apparecchiature che soddisfano il livello di sicurezza CommonCriteria (CC) EAL 4+. I ricercatori hanno anche testato i chip TPM di Infineon e Nuvoton, ma non hanno riscontrato perdite in base ai cambiamenti nei tempi di calcolo.

Nei processori Intel il problema si manifesta a partire dalla famiglia Haswell rilasciata nel 2013. Va notato che il problema riguarda un'ampia gamma di laptop, PC e server prodotti da vari produttori, tra cui Dell, Lenovo e HP.

Intel ha incluso una correzione in novembre aggiornamento del firmware, in cui, oltre al problema in esame, eliminato altre 24 vulnerabilità, di cui nove hanno un livello di pericolo elevato e una è critica. Su questi problemi vengono fornite solo informazioni generali, ad esempio viene menzionato che la vulnerabilità critica (CVE-2019-0169) è dovuta alla capacità di causare un overflow dell'heap sul lato Intel CSME (Converged Security and Management Engine ) e ambienti Intel TXE (Trusted Execution Engine), che consentono all'aggressore di aumentare i propri privilegi e ottenere l'accesso a dati riservati.

Si può anche notare divulgazione risultati dell'audit di vari SDK per lo sviluppo di applicazioni che interagiscono con il codice eseguito sul lato di enclavi isolate. Per identificare le funzioni problematiche che potrebbero essere utilizzate per effettuare attacchi, sono stati studiati otto SDK: SDK Intel SGX, SGX-LKL, Microsoft OpenEnclave, Grafene,
Ruggine-EDP и Google Asilo per Intel SGX, Chiave di volta per RISC-V e Sanco per Sancus TEE. Durante l'audit lo era rivelato 35 vulnerabilità, in base alle quali sono stati sviluppati diversi scenari di attacco che consentono di estrarre chiavi AES da un'enclave o organizzare l'esecuzione del proprio codice creando le condizioni per danneggiare il contenuto della memoria.

Vulnerabilità TPM-Fail che consente di recuperare le chiavi archiviate nei moduli TPM

Fonte: opennet.ru

Aggiungi un commento