Ricerca tecnica su un bypass di UEFI Secure Boot causato da un caricatore PE personalizzato non sicuro, comprendente analisi delle cause alla radice, flusso di sfruttamento e una prova di concetto a scopo didattico.
Questo repository contiene materiale di ricerca relativo a CVE-2024-7344, una vulnerabilità di bypass di Secure Boot che interessa i sistemi UEFI. Centralizza l'analisi tecnica della vulnerabilità, la documentazione del flusso di attacco e le applicazioni ricreate progettate per riprodurre il comportamento vulnerabile in ambienti controllati. Il repository include inoltre documentazione e risorse di ricerca pensate per aiutare i ricercatori di sicurezza a comprendere, studiare e sperimentare le tecniche associate a questa vulnerabilità.
CVE-2024-7344 è stata originariamente scoperta e divulgata in modo responsabile dal Team di Ricerca ESET, con il supporto alla divulgazione coordinata di CERT/CC. Riferimenti ufficiali e della community:
Questo repository include una proof-of-concept educativa semplificata che riproduce la stessa classe di vulnerabilità di CVE-2024-7344. Inoltre, parte dell'implementazione originale del mondo reale è stata analizzata e documentata attraverso un dedicato sforzo di ricerca sulla sicurezza UEFI.
I ricercatori interessati a comprendere l'origine storica di questa vulnerabilità, il formato ALRM originale, il loader RxPE personalizzato e l'evoluzione dei prodotti interessati dopo la revoca di Microsoft dovrebbero fare riferimento al repository complementare "UEFI-Security-Research-Howyar-SysReturn-NetCopy".
L'applicazione UEFI vulnerabile x32 originale interessata da CVE-2024-7344 è inclusa in questo repository.
È noto che il binario x64 sia disponibile all'interno di un archivio ospitato su VirusTotal. L'accesso a questo campione richiede un account VirusTotal Enterprise e, al momento della stesura, non abbiamo avuto accesso per scaricarlo. Per riferimento, il campione può essere trovato al seguente URL per i ricercatori che dispongono dell'accesso appropriato:
CVE-2024-7344 è una vulnerabilità di bypass di UEFI Secure Boot causata da un'applicazione UEFI di terze parti firmata da Microsoft che carica ed esegue in modo improprio binari UEFI non firmati durante il processo di avvio. La vulnerabilità consente agli attaccanti di eseguire codice non attendibile prima che il sistema operativo venga caricato, rompendo di fatto la catena di fiducia di UEFI Secure Boot anche quando Secure Boot è abilitato.
A differenza di altre vulnerabilità di bypass di Secure Boot basate su corruzione della memoria o manipolazione della NVRAM, CVE-2024-7344 è il risultato di un difetto logico e di progettazione. L'applicazione UEFI interessata implementa il proprio loader PE personalizzato invece di fare affidamento sui servizi UEFI standard (LoadImage e StartImage), bypassando così tutta la verifica crittografica normalmente imposta da Secure Boot.
Poiché l'applicazione vulnerabile è firmata con il certificato UEFI di terze parti di Microsoft ed è considerata attendibile per impostazione predefinita sulla maggior parte dei sistemi, lo sfruttamento avviene in una fase di esecuzione altamente privilegiata e precoce della piattaforma.
Secure Boot è una funzionalità di sicurezza fondamentale di UEFI progettata per imporre la catena di fiducia della piattaforma dal firmware al sistema operativo. Il suo scopo principale è impedire che componenti di avvio non autorizzati o dannosi, come i bootkit, vengano eseguiti durante il processo di avvio.
Ad alto livello, Secure Boot funziona validando crittograficamente gli eseguibili UEFI prima che sia loro consentito di essere eseguiti. Questa validazione viene eseguita utilizzando due database mantenuti dal firmware:
A un'applicazione UEFI è consentito di essere eseguita se:
Per impostazione predefinita, la maggior parte dei sistemi viene fornita con i seguenti certificati considerati attendibili in db:
L'applicazione vulnerabile interessata da CVE-2024-7344 è firmata con il certificato Microsoft Corporation UEFI CA 2011. Poiché questo certificato è ampiamente considerato attendibile tra vendor e piattaforme, qualsiasi vulnerabilità all'interno di tale applicazione firmata ha un impatto globale e può essere sfruttata sulla maggior parte dei sistemi UEFI.