Le chiavi di sicurezza della scheda madre di basso livello sono trapelate durante la violazione di MSI, affermano i ricercatori

Le chiavi di sicurezza della scheda madre di basso livello sono trapelate durante la violazione di MSI, affermano i ricercatori

Nodo di origine: 2641177

Circa un mese fa, abbiamo scritto di a notifica di violazione dei dati rilasciato dal principale produttore di schede madri MSI.

La società ha detto:

MSI ha recentemente subito un attacco informatico su parte dei suoi sistemi informativi. […] Attualmente, i sistemi interessati hanno gradualmente ripreso la normale operatività, senza alcun impatto significativo sull'attività finanziaria. […] MSI esorta gli utenti a ottenere aggiornamenti del firmware/BIOS solo dal proprio sito Web ufficiale e a non utilizzare file da fonti diverse dal sito Web ufficiale.

Il mea culpa dell'azienda è arrivato due giorni dopo che una banda di estorsioni informatiche chiamata Money Message ha affermato di aver rubato il codice sorgente MSI, gli strumenti di sviluppo del BIOS e le chiavi private.

A quel tempo, i criminali erano ancora in modalità conto alla rovescia e affermarono che l'avrebbero fatto “pubblica i dati rubati allo scadere del timer”:

Screenshot tre ore prima della scadenza del timer di violazione [2023-04-07].

Orologio fermo

Il "timer di rivelazione" nello screenshot qui sopra è scaduto il 2023-04-07, poco più di un mese fa, ma il sito Money Message sul dark web è per il resto invariato dal post iniziale della banda:

Un mese dopo [2023-05-09].

Tuttavia, i ricercatori della società di ricerca sulle vulnerabilità Binarly affermano non solo di essersi impossessati dei dati rubati durante la violazione, ma anche di aver cercato chiavi crittografiche incorporate e di aver trovato numerosi risultati.

Finora, Binarly sta reclamando Github ed Twitter di aver estratto numerose chiavi di firma dai dati in suo possesso, tra cui ciò che descrive [2023-05-09T14:00Z] come:

  • 1 chiave Intel OEM. Apparentemente, questa chiave può essere utilizzata per controllare il debug del firmware su 11 diverse schede madri.
  • 27 chiavi di firma dell'immagine. Binarly afferma che queste chiavi possono essere utilizzate per firmare gli aggiornamenti del firmware per 57 diverse schede madri MSI.
  • 4 chiavi Intel Boot Guard. Queste chiavi trapelate apparentemente controllano la verifica in fase di esecuzione del codice firmware per 116 diverse schede madri MSI.

Protezione del BIOS basata su hardware

Secondo Intel propria documentazione, le moderne schede madri basate su Intel possono essere protette da più livelli di sicurezza crittografica.

Prima viene Protezione del BIOS, che consente solo al codice firmato con una chiave crittografica specificata dal produttore di ottenere l'accesso in scrittura alla memoria flash utilizzata per archiviare i cosiddetti Blocco di avvio iniziale, o IBB.

Come suggerisce il nome, l'IBB è il luogo in cui risiede il primo componente del codice di avvio del produttore della scheda madre.

Sovvertirlo darebbe a un utente malintenzionato il controllo su un computer infetto non solo a un livello inferiore a qualsiasi sistema operativo che viene successivamente caricato, ma anche al di sotto del livello di qualsiasi utilità del firmware installata nell'EFI ufficiale (interfaccia firmware estesa) partizione del disco, potenzialmente anche se tale partizione è protetta dal sistema di firma digitale Secure Boot del firmware.

Dopo viene BIOS Guard Guardia di stivale, che verifica il codice caricato dall'IBB.

L'idea qui sembra essere che, sebbene BIOS Guard dovrebbe impedire in primo luogo il flashing di aggiornamenti non ufficiali del firmware, negando l'accesso in scrittura a strumenti di aggiornamento del firmware non autorizzati...

…non si può dire che il firmware firmato “ufficialmente” dal fornitore della scheda madre non sia attendibile a causa di una chiave di firma dell'immagine del firmware trapelata.

È qui che entra in gioco Boot Guard, fornendo un secondo livello di attestazione che mira a rilevare, in fase di esecuzione durante ogni avvio, che il sistema sta eseguendo un firmware non approvato per la tua scheda madre.

Archiviazione delle chiavi una sola volta

Per rafforzare il livello di verifica crittografica fornito sia da BIOS Guard che da Boot Guard e per legare il processo a una specifica scheda madre o famiglia di schede madri, le chiavi crittografiche utilizzate non sono esse stesse archiviate in una memoria flash riscrivibile.

Sono salvati, o soffiato, in gergo, nella memoria non riscrivibile incorporata nella scheda madre stessa.

La parola soffiato deriva dal fatto che il circuito di accumulo è costruito come una serie di “fili di collegamento” nanoscopici implementati come minuscoli fusibili elettrici.

Queste connessioni possono essere lasciate intatte, il che significa che verranno lette come 1 binari (o 0, a seconda di come vengono interpretate) o "soffiate" - fuse in altre parole - in una modifica one-shot che le capovolge in modo permanente in 0 binari (o 1).

L'attivazione del processo di masterizzazione dei bit è essa stessa protetta da un fusibile, quindi il venditore della scheda madre ha una possibilità una tantum di impostare il valore di questi cosiddetti Fusibili programmabili sul campo.

Questa è la buona notizia.

Una volta che le chiavi di verifica crittografica BIOS Guard e Boot Guard sono state scritte nella memoria fusibile, sono bloccate per sempre e non può mai essere sovvertito.

Ma la cattiva notizia corrispondente, ovviamente, è che se le chiavi private che corrispondono a queste chiavi pubbliche sicure fino alla fine dell'universo vengono mai compromesse, le chiavi pubbliche memorizzate non potrà mai essere aggiornato.

Allo stesso modo, una chiave OEM a livello di debug, come accennato in precedenza, fornisce a un fornitore di schede madri un modo per assumere il controllo del firmware durante l'avvio, incluso osservarlo istruzione per istruzione, modificarne il comportamento, spiare e modificare i dati tiene in memoria e molto altro ancora.

Come puoi immaginare, questo tipo di accesso e controllo sul processo di avvio ha lo scopo di aiutare gli sviluppatori a ottenere il codice direttamente in laboratorio, prima che venga masterizzato nelle schede madri che andranno ai clienti.

Intel documentazione elenca tre livelli di debug.

Green denota l'accesso di debug consentito a chiunque, che non dovrebbe esporre alcun segreto di basso livello o consentire la modifica del processo di avvio.

Arancio denota l'accesso completo al debug in lettura-scrittura consentito a qualcuno che dispone della chiave privata del fornitore corrispondente.

Rosso denota lo stesso di orange, ma si riferisce a una chiave privata principale appartenente a Intel che può sbloccare la scheda madre di qualsiasi vnedor.

Come afferma piuttosto ovviamente e senza mezzi termini Intel nella sua documentazione:

Si presume che il produttore della piattaforma non condividerà la propria chiave di autenticazione [modalità arancione] con nessun altro set di debugger.

Sfortunatamente, Binarly afferma che i truffatori hanno ora fatto trapelare una chiave Orange Mode che può abilitare il debug di avvio di basso livello su 11 diverse schede madri fornite da HP, Lenovo, Star Labs, AOPEN e CompuLab.

Attenzione al bootkit

Le affermazioni di Binarly sembrano quindi suggerire che con una chiave di firma del firmware e una chiave di firma di Boot Guard, un utente malintenzionato potrebbe non solo essere in grado di indurre te e i tuoi strumenti di aggiornamento del firmware a installare quello che sembra un vero aggiornamento del firmware in primo luogo...

…ma anche essere in grado di ingannare una scheda madre che è stata bloccata dall'hardware tramite la protezione Boot Guard per consentire il caricamento di quel firmware canaglia, anche se l'aggiornamento corregge lo stesso blocco di avvio iniziale.

Allo stesso modo, essere in grado di avviare un computer rubato in modalità di debug del firmware potrebbe consentire a un utente malintenzionato di eseguire o impiantare codice non autorizzato, estrarre segreti o manipolare in altro modo il processo di avvio di basso livello per lasciare il computer di una vittima in un ambiente non affidabile, non sicuro e insicuro. stato.

In poche parole, potresti, almeno in teoria, finire non solo con a rootkit, Ma un kit di avvio.

A rootkit, in gergo, è codice che manipola il kernel del sistema operativo al fine di impedire anche al sistema operativo stesso di rilevare, segnalare o prevenire in seguito determinati tipi di malware.

Alcuni rootkit possono essere attivati ​​dopo il caricamento del sistema operativo, in genere sfruttando una vulnerabilità a livello di kernel per apportare modifiche interne non autorizzate al codice del sistema operativo stesso.

Altri rootkit eludono la necessità di una falla di sicurezza a livello di kernel sovvertendo parte della sequenza di avvio basata sul firmware, con l'obiettivo di attivare una backdoor di sicurezza prima che il sistema operativo inizi a caricarsi, compromettendo così parte del codice sottostante su cui il sistema operativo si basa la sicurezza del sistema stesso.

E a kit di avvio, in parole povere, porta questo approccio ancora oltre, in modo che la backdoor di basso livello venga caricata il più presto e in modo non rilevabile possibile nel processo di bootstrap del firmware, forse anche prima che il computer esamini e legga qualsiasi cosa dal disco rigido.

Un bootkit a quel livello significa che anche cancellando o sostituendo l'intero disco rigido (incluso il cosiddetto Partizione del sistema di interfaccia firmware estesa, abbreviato EFI o ESP) non è sufficiente per disinfettare il sistema.

Tipica configurazione del disco Mac.
La partizione EFI è etichettata di conseguenza.
Tipica configurazione del disco di Windows 11.
Tipologia c12a7...ec93b denota una partizione EFI.

Come analogia, si potrebbe pensare a un rootkit che si carica dopo il sistema operativo come se cercasse di corrompere una giuria per assolvere un imputato colpevole in un processo penale. (Il rischio che ciò accada è uno dei motivi per cui le giurie penali hanno in genere 12, 15 o più membri.)

Un rootkit che si carica in ritardo nel processo del firmware è un po' come cercare di corrompere il pubblico ministero o l'investigatore capo per fare un pessimo lavoro e lasciare almeno alcune scappatoie probatorie affinché le parti colpevoli possano divincolarsi.

Ma un bootkit è più come convincere il legislatore stesso ad abrogare la stessa legge in base alla quale l'imputato è accusato, in modo che il caso, non importa quanto accuratamente siano state raccolte e presentate le prove, non può procedere affatto.

Cosa fare?

Le chiavi pubbliche di Boot Guard, una volta masterizzate nella scheda madre, non possono essere aggiornate, quindi se le corrispondenti chiavi private vengono compromesse, non c'è niente che puoi fare per correggere il problema.

Le chiavi di firma del firmware compromesse possono essere ritirate e sostituite, il che offre ai downloader del firmware e agli strumenti di aggiornamento la possibilità di avvisarti in futuro del firmware che è stato firmato con una chiave ora non attendibile, ma ciò non impedisce attivamente l'utilizzo delle chiavi di firma rubate .

Perdere le chiavi di firma è un po' come perdere la chiave master fisica di ogni piano e di ogni suite di un edificio per uffici.

Ogni volta che cambi una delle serrature compromesse, hai ridotto l'utilità della chiave rubata, ma a meno che e finché non hai cambiato ogni singola serratura, non hai risolto correttamente il tuo problema di sicurezza.

Ma se sostituisci immediatamente ogni singola serratura dell'edificio durante la notte, chiuderai tutti fuori, quindi non potrai lasciare che gli inquilini e i lavoratori autentici continuino a utilizzare i loro uffici per un periodo di grazia durante il quale possono scambiare le loro vecchie chiavi per quelli nuovi.

La soluzione migliore in questo caso, quindi, è attenersi strettamente al consiglio originale di MSI:

[O] ottenere aggiornamenti del firmware/BIOS solo dal sito Web ufficiale di [MSI] e [non] utilizzare file da fonti diverse dal sito Web ufficiale.

Sfortunatamente, quel consiglio probabilmente si riduce a cinque parole non del tutto utili e un punto esclamativo.

Fate attenzione li fuori gente!


Aggiornamento. La società di pubbliche relazioni di Intel ci ha inviato un'e-mail per dirci che la società "è a conoscenza di questi rapporti e sta indagando attivamente". Ci hanno anche chiesto di segnalarlo "Le chiavi Intel Boot Guard OEM sono generate dal produttore del sistema, [quindi] non si tratta di chiavi di firma Intel." L'abbreviazione OEM è l'abbreviazione di produttore di apparecchiature originali, un termine un po' confuso ma consolidato che non si riferisce al fornitore o ai fornitori dei singoli componenti incorporati in un prodotto, ma al venditore che ha realizzato il sistema completo. Ad esempio, quando acquisti quella che potresti definire una "scheda madre Intel" da MSI, MSI è l'OEM, mentre Intel è il fornitore del chip del processore e forse di altri componenti del chipset, al centro del prodotto finito. (Se la tua scheda madre fosse un cavo di sicurezza per biciclette, Intel avrebbe realizzato il lucchetto, ma l'OEM avrebbe saldato il cavo, coperto il prodotto con il suo rivestimento protettivo e scelto i numeri per la combinazione.) [2023-05 -09T22:45Z]


Timestamp:

Di più da Sicurezza nuda