Come può l'utente medio convalidare facilmente l'integrità del firmware del proprio Mac?


9

Come può l'utente medio convalidare facilmente l'integrità del firmware del proprio Mac?

Prima di sottovalutare questa domanda o di farmi una lezione su come sono paranoico e nessuno dovrebbe mai aver bisogno di farlo, leggi di seguito.

Nel luglio 2015, CVE-2015-3692 ha rivelato che un firmware EFI di un Mac potrebbe essere violato da un utente remoto. (I vettori disponibili per questo sono in altri CVE, ma ipoteticamente potrebbero essere qualsiasi cosa, inclusi elementi come programmi di installazione di aggiornamenti Flash falsi dannosi.)

Questa vulnerabilità è stata resa pubblica almeno quattro settimane prima che Apple la aggiustasse il 30 luglio per OS X 10.8, 10.9 e 10.10 con EFI Firmware Security Update 2015-001 .

Lo stesso ricercatore di sicurezza che ha annunciato questa vulnerabilità afferma di aver visto una dimostrazione durante una conferenza di un hack del firmware che non può essere rimosso o sovrascritto.

Pertanto, una volta che EFI di un Mac è stato posseduto, se l'attaccante ha fatto bene, l'unico modo per eseguire il reflash dell'EFI con un firmware Apple valido sarebbe collegare un reflasher direttamente al chip EFI sulla scheda logica stessa ( non provare questo a casa).

Gli articoli di notizie che hanno segnalato questa vulnerabilità lo hanno minimizzato, affermando che la maggior parte degli utenti non dovrebbe preoccuparsi e tutto ciò che devi fare per proteggerti non è mai lasciare che il tuo Mac entri in modalità di sospensione e disabiliti l'utente root o non autentichi mai nulla di te non fidarti al 100%. I thread dei commenti su quegli articoli lo hanno riassunto in questo modo: se tutte le tue app provengono da fonti attendibili come l'App Store ufficiale e non esegui mai nulla che non sia firmato dal codice da uno sviluppatore noto ad Apple, allora non dovresti preoccuparti.

Ma poi a settembre 2015 abbiamo appreso dell'exploit di XCodeGhost , che è noto per aver portato numerose app infette da malware ad apparire sull'App Store ufficiale di iOS — ma che dire delle app OS X? Nell'articolo collegato, Malwarebytes ha scritto:

Wardle ha sottolineato a marzo che Xcode era vulnerabile a questo genere di cose, ma spaventosamente puntava il dito su molte altre app OS X. Qualsiasi di queste app potrebbe essere vulnerabile ad attacchi simili.

Hanno anche scritto, "l'utente medio non dovrebbe farsi prendere dal panico", lo stesso mantra che vedo spesso pappagallo sui forum di supporto Apple e altrove ogni volta che un utente pubblica un thread su tonnellate di strani problemi che stanno avendo. "Basta riformattare l'unità ed eseguire un'installazione pulita del sistema. Il problema è probabilmente una modifica del sistema di terze parti", ci viene detto. Quando ciò non lo risolve, viene detto alle persone che deve trattarsi di un problema hardware, come un HDD difettoso, una GPU difettosa o una RAM difettosa. Ho visto discussioni in cui le persone sostituivano letteralmente ogni componente nel loro Mac e il problema sarebbe sempre tornato.

Ora sappiamo che è ipoteticamente possibile che il firmware EFI degli utenti sia stato violato, quindi anche se la loro scheda madre fosse sostituita, quando avrebbero reinstallato le loro app, il firmware potrebbe essere nuovamente sottoposto a reflash dal malware! E se la scheda madre non fosse stata sostituita, sarebbero stati eliminati in ogni caso.

Questo mi riporta alla domanda principale.

Come può l'utente medio convalidare facilmente l'integrità del firmware del proprio Mac? Cioè come puoi verificare per assicurarti che il firmware del tuo Mac non sia mai stato compromesso da malware? Non sono riuscito a trovare alcun metodo compatibile con El Capitan che non richieda la disabilitazione di SIP. Per le versioni precedenti del sistema operativo, esiste un complicato strumento di terze parti chiamato DarwinDumper che può scaricare i contenuti dell'EFI in un file di testo, ma è comunque necessario disporre del firmware Apple valido per confrontarlo: questo non è un metodo con cui l'utente medio è capace di fare.

Dire alle persone di non preoccuparsi di qualcosa di cui potrebbero essere le vittime e che non hanno modo di verificare se lo sono, è ciò che consente a questi tipi di exploit di essere redditizi per gli hacker, che dipendono dalla compiacenza e dalla mancanza di vigilanza sul parte degli utenti.

==

EDIT: ho trovato l'ultimo installer ufficiale del firmware Apple sul sito di supporto Apple . Il programma di installazione non funziona su 10.10 o 10.11, stranamente. Usando Pacifist ho estratto il file .scap per il mio Macbook Pro 9,1. Ho confrontato il binario in HexFiend con il biosdump che ho estratto usando DarwinDump dopo aver riavviato la modalità di ripristino ed eseguito csrutil disablesul terminale per disabilitare il rootless e abilitare la possibilità di eseguire kexts senza segno. Ho recuperato questa intestazione del BIOS:

   $IBIOSI$   MBP91.88Z.00D3.B0B.1506081214Copyright (c) 2005-2015 Apple Inc.  All rights reserved.ˇˇˆ´5µ}ñÚC¥î°Îé!¢é_i@Ÿ¯¡Apple ROM Version
   BIOS ID:      MBP91
   Built by:     root@saumon
   Date:         Mon Jun  8 12:14:35 PDT 2015
   Revision:     svn 39254 (B&I)
   Buildcave ID: 6
   ROM Version:  00D3_B0B

Il BIOS ufficiale dall'intestazione di Apple:

   $IBIOSI$   MBP91.88Z.00D3.B0B.1506081214Copyright (c) 2005-2015 Apple Inc.  All rights reserved.ˇˇˆ´5µ}ñÚC¥î°Îé!¢é_i@Ÿ¯¡Apple ROM Version
   BIOS ID:      MBP91
   Built by:     root@saumon
   Date:         Mon Jun  8 12:14:35 PDT 2015
   Revision:     svn 39254 (B&I)
   Buildcave ID: 6
   ROM Version:  00D3_B0B

A parte questo, i file hanno un aspetto molto diverso, ma immagino che il file .scap abbia una sorta di compressione. Almeno questo mi dice che avevo installato l'ultimo firmware, quello che è stato rilasciato dopo l'annuncio degli hack. Sono prolly bravo. Sarebbe bello poter confermare che sto bene attraverso una sorta di verifica del checksum! Ti guardo, Apple!


2
È una domanda (piuttosto ben studiata) o una richiesta di funzionalità? Se si tratta di una domanda, puoi per favore rimuoverla un po 'per focalizzare maggiormente ciò che stai cercando ("come può un utente finale verificare l'integrità del firmware")?
Nohillside

Domanda. La parte che sto cercando è in grassetto e si ripete due volte ed è il titolo. Mi affido ai lettori per installare più RAM nei loro cervelli o prendere ritalin se i dettagli di supporto sono un "problema".
CommaToast,

2
Tuttavia, potresti migliorare le cose trasformando la modifica (alla fine della domanda) in una prima risposta (con probabilmente alcuni dettagli in più su come l'utente occasionale può eseguire i passaggi necessari). Anche se vuoi che Apple ascolti (e penso che dovrebbero) una richiesta di funzionalità è ancora il modo migliore :-)
nohillside

Non voglio che Apple "ascolti" ... Voglio che siano un tipo diverso di compagnia rispetto a quello che sono, e questo non accadrà mai se non mi assumono come "assicuratore di bellezza"
CommaToast,

Risposte:


2

Per verificare il firmware di un sistema Intel UEFI, come un Mactel, avviare Intel LUV (Linux UEFI Validation) distro, luv-live, eseguire Intel CHIPSEC. Verificherà la maggior parte delle vulnerabilità del firmware note pubblicamente. È necessario eseguire CHIPSEC quando si ottiene per la prima volta la casella, salvare la ROM, quindi occasionalmente rieseguire CHIPSEC e confrontare le ROM per le modifiche. È possibile utilizzare UEFItool, CHIPSEC o UEFI-Firmware-Parser o una manciata di altri strumenti per un esame forense della ROM.

Per ulteriori informazioni sull'argomento e sugli strumenti coinvolti, vedere le mie diapositive per una presentazione che ho tenuto di recente.


Inoltre, c'è un progetto chiamato Firmware Vault che raccoglie le ROM Apple, che potrebbe essere utile anche per studiare.
Lee Fisher,

2

Il titolo di "come può un utente medio" è un po 'una zona pericolosa, dal momento che non considero nessuno che utilizza la media del Terminale - senza giudicare, solo che il pubblico qui è molto al di sopra della media per sapere anche che dovrebbe convalidare il firmware . Spero di non sembrare troppo pretenzioso con questo breve riassunto di ciò che penso che l'utente medio di Mac dovrebbe fare:

Il programma di installazione di macOS aggiorna il firmware quando installi / reinstalli il sistema operativo, quindi semplicemente esegui il ripristino e reinstalla la versione corrente di macOS, non perderai programmi, impostazioni, dati e avrai la possibilità di assicurarti che il firmware sia aggiornato. Anche se hai installato il sistema operativo diversi mesi fa - se il firmware più recente è disponibile quando il programma di installazione verifica mentre si prepara all'installazione, otterrai l'aggiornamento come parte dell'esercizio.


Se non sei in grado o desideri solo eseguire un'installazione, diventa molto più difficile segnalare / convalidare che sei davvero aggiornato. Suppongo che dipenda dal motivo per cui pensi di non aver ricevuto gli aggiornamenti come parte del normale processo di aggiornamento / aggiornamento. Poiché non esiste un controllo generale su tutto il firmware, direi che l'utente medio non può convalidare il firmware e anche gli utenti eccezionali hanno difficoltà a eseguire il livello di analisi richiesto. Gli utenti medi hanno difficoltà con la differenza tra autenticazione e autorizzazione . Gli utenti esperti trovano noioso verificare i checksum e le catene crittografiche di fiducia e natura umana se non facciamo queste attività bene, anche in ambienti ben progettati, ben motivati ​​e ben supportati.

Vorrei aprire un ticket di supporto con Apple per ogni istanza in cui volevo verificare il firmware e partecipare alla mailing list ufficiale delle notifiche di sicurezza di Apple in modo che tu sia in loop quando le cose cambiano.

Mi dispiace se questa non è la risposta che volevi, ma ho anche sentito che questa era la mia piccola entrata in una risposta a tutti coloro che vedono la tua domanda e si chiedono come iniziare ad imparare. Man mano che più utenti chiedono supporto a apple, alla fine verranno scritti articoli della knowledge base. Ad un certo punto, sarebbero stati aggiunti finanziamenti e il problema sarebbe stato progettato per adattarsi ai livelli di istruzione degli utenti. Siamo solo agli inizi da dove vedo le cose.


0

Proprio come un aggiornamento, macOS 10.13 High Sierra verificherà automaticamente l'integrità del firmware di un Mac una volta alla settimana. Se viene riscontrato un problema con il firmware, il tuo Mac offrirà di inviare un rapporto ad Apple. Un post di The Eclectic Light Company dice questo sui rapporti;

Se stai utilizzando un vero Mac, anziché un "Hackintosh", Kovah ti chiede di accettare di inviare il rapporto. Ciò consentirà a eficheck di inviare i dati binari dal firmware EFI, preservando la tua privacy escludendo i dati archiviati nella NVRAM. Apple sarà quindi in grado di analizzare i dati per determinare se sono stati modificati da malware o altro.

AppleInsider dice anche questo;

Il rapporto inviato ad Apple esclude i dati archiviati in NVRAM. Apple esaminerà quindi i dati trasmessi per valutare se si è verificato un attacco malware

Controlla qui per saperne di più su questa nuova funzionalità: macOS High Sierra esegue automaticamente il controllo di sicurezza sul firmware EFI ogni settimana


0

Solo un aggiornamento a questa domanda poiché è disponibile un nuovo programma.

Si chiama eficheck. Si trova nella directory / usr / libexec / firmwarecheckers / eficheck o probabilmente non si trova sul tuo percorso, quindi è un po 'più complesso di alcuni altri ma c'è una pagina man per documentarne l'utilizzo.

È importante considerare che qualsiasi cosa abbastanza modesta abbastanza da entrare nel tuo EFI sarà probabilmente in grado di eludere il rilevamento in una certa misura. Questo è il motivo per cui i controlli antivirus sono inutili, anche se le persone che rigurgitano i "controlli antivirus sono immondizie" non hanno idea del perché e stanno ripetendo la conclusione che qualcuno ha più intelligente di loro ha disegnato, ovvero che le aziende antivirus tendono a non sapere di avere la capacità analizzare correttamente i malware specifici per Mac in modo che non aggiungano il valore hash univoco di un file al loro database in modo che il computer possa calcolare gli hash dei propri file e quelli rispetto a un database di hash malware noti. Quasi tutte le scansioni antivirus non fanno più nulla e non cercano comportamenti maliziosi.

Alla fine della giornata, però, EFI di Apple è UEFI di Intel, quindi ti fidi di Apple di fare qualcosa di veramente complesso e tecnico. Apple non riesce nemmeno a capire la propria PKI e hai mai visto il manuale dello sviluppatore per un processore Intel? Sono migliaia di pagine di greco antico. Voglio dire, dai, non pensavi che Apple fosse carina e intelligente, vero?

La mailing list di sicurezza è una semplice notifica quando vengono rilasciati aggiornamenti e niente di più. Saresti al corrente di nuove patch per problemi identificati e facilmente sfruttati da CVE-IDed che interessano il sistema operativo più recente e quelli più vecchi, ovvero quelli in uso. Non c'è nulla che impedisca gli exploit futuri negli aggiornamenti ... almeno che citeranno mai a causa della loro politica di non parlare di tali cose. L'unico elemento di sicurezza risolto sarà quello di dire che l'aggiornamento ha risolto un problema molto specifico.

Se identificassero un "attacco malware" (non si è attaccato dopo?), Violerebbero la loro stessa politica se lo confermassero e lo segnalassero all'utente, oltre a essere una cattiva decisione aziendale dal momento che molti dei i loro clienti non credono ancora nel malware. Si noti che non dice nulla su come contattare l'utente o risolvere il problema. Adesso potrei vedere i titoli .. Ultimamente tutta la cattiva stampa è stata molto contusa del loro ego e sembra che si stia avvicinando a un punto di non ritorno.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.