Falle processori AMD, nuove informazioni sulle vulnerabilità

Avatar di Manolo De Agostini

a cura di Manolo De Agostini

Non passa giorno che CTS-Labs non si trovi a dover aggiungere un tassello al puzzle che ha sbattuto sul tavolo, in modo rozzo e affrettato (come abbiamo visto), sulle falle (che definiamo presunte in attesa di AMD, anche se altri ricercatori le hanno confermate) che riguardano le CPU Ryzen ed EPYC.

Ieri il CTO dell'azienda israeliana ha spiegato la sua posizione riguardo la decisione di spiattellare la notizia delle falle il giorno dopo averle notificate al produttore, senza prima dare alla casa di Sunnyvale il classico tempo utile, in genere 90 giorni, per verificare le problematiche ed eventualmente programmare contromisure.

Il CTO ha detto di essere contro l'attuale modello della "responsible disclosure", ma sono in molti ad averlo criticato. In queste ore ho discusso con alcuni ricercatori di sicurezza italiani della vicenda, e la loro impressione è che CTS-Labs l'abbia sostanzialmente "fatta fuori dal vaso", nel senso che abbia affrettato la pubblicazione della notizia semplicemente in cerca di visibilità, per farsi un nome. Non ci sono altre dietrologie, solo un team di giovani ricercatori in cerca di popolarità. Se così fosse, obiettivo colpito e affondato.

amd falle cpu

A ogni modo vi spiegavo che CTS-Labs è tornata a parlare. L'ha fatto con un altro documento pubblicato sull'ormai noto amdflaws.com, in cui ha cercato di offrire maggiori dettagli tecnici e chiarire le "incomprensioni" sulle vulnerabilità (giusto perché loro non vogliono mettere i consumatori a rischio...). I ricercatori israeliani affermano che le falle sono "second-stage" e come tali sono più rilevanti per provider cloud, aziende e reti di computer.

"I computer su reti aziendali occasionalmente vengono compromessi - che sia tramite phishing, exploit zero-day o impiegati che scaricano il file sbagliato. Le reti ad alta sicurezza sono equipaggiate per affrontare questo tipo di attacchi quotidiani. Lo fanno mantenendo i loro sistemi aggiornati, abilitando funzioni di sicurezza e usando misure aggiuntive come soluzioni di sicurezza endpoint".

Le falle descritte da CTS-Labs potrebbero permettere a un malintenzionato che ha già messo un piede in uno o più computer di un'azienda un "vantaggio rilevante contro i team IT e di sicurezza. L'unica cosa che un malintenzionato dovrebbe fare dopo l'iniziale compromissione locale è ottenere i privilegi di amministratore locale su una macchina interessata. Per fare chiarezza sugli equivoci - non c'è necessità di accesso fisico, nessuna firma digitale, nessun'altra vulnerabilità per fare il reflash con un BIOS non firmato. Acquistate un computer da un negozio, avviate gli exploit come admin - e funzioneranno - sui modelli interessati come descritto sul sito".

Secondo CTS-Labs chi conosce l'esistenza delle falle, può colpire in diversi modi. "Potrebbero caricare un malware nell'AMD Secure Processor prima che la CPU si avvii. Da questa posizione possono impedire ulteriori aggiornamenti di BIOS e rimanere nascosti ai prodotti di sicurezza. È un livello di persistenza estrema - reinstallare il sistema operativo o fare il reflash del BIOS non funzionerà".

L'unico modo per rimuovere il tutto sarebbe quello di procedere fisicamente, dissaldando i chip. Con "chip" personalmente non ho capito bene cosa intendano, ma i ricercatori parlano di motherboard che hanno un socket dove potete cambiare i chip e inserire un nuovo chip SPI. Quindi oltre a poter operare nel quasi anonimato, un malintenzionato potrebbe anche superare Microsoft Credentials Guard e sottrarre le credenziali di rete, ad esempio quelle lasciate da un dipartimento IT su una macchina colpita.

amd falle cpu 01

"Abbiamo una versione PoC (proof of concept, ndr) di mimikatz che funziona persino con Credential Guard abilitato. Rubare le credenziali di dominio aiuta i malintenzionati a spostarsi verso target di valore più alto nella rete". Inoltre alcune caratteristiche specifiche di Secure Processor per i provider cloud potrebbero essere aggirate o disabilitate da queste falle.

CTS-Labs ha anche divulgato l'hardware su cui ha svolto i test di laboratorio. Ecco la lista: motherboard Biostar B350 GT3 e Gigabyte AB350-GAMING 3, HP EliteDesk 705 G3 SFF (PC desktop Ryzen Pro), HP Envy X360 (portatile con CPU Ryzen), Tyan B8026T70AV16E8HR (server EPYC), Gigabyte MZ31-AR0 (server EPYC).

I ricercatori hanno anche spiegato requisiti e impatto di ogni falla. Per quanto riguarda Ryzenfall e Fallout dicono che non è necessario l'accesso fisico al sistema, ma basta avviare un EXE con privilegi di amministratore locali sul sistema. Una volta ottenuti è possibile scrivere nella memoria SMM, da cui è possibile quindi eseguire codice, ma anche fare altre diverse cose, come bypassare Windows Credential Guard, rubare credenziali di rete e poi usarle per muoversi in reti enterprise basate su Windows.

Anche per quanto riguarda MasterKey non è necessario l'accesso fisico al sistema. Una volta avviato l'EXE con privilegi di amministratore locali, basta riavviare la macchina. Dopodiché si può eseguire codice non firmato all'interno del Secure Processor e comprometterlo completamente.

"L'exploit permette il reflash del BIOS per avvantaggiarsi della falla. Su alcune motherboard funziona di fabbrica perché il firmware PSP è spesso ignorato dai controlli sulle firme del BIOS. In altri casi è possibile usare Ryzenfall 1 e 2 come prerequisiti per MasterKey in modo da eseguire codice nella memoria SMM (System Management Mode) e superare i controlli sulle firme del BIOS svolti nel codice SMM. "Se tutto fallisce, crediamo che usando Ryzenfall 4 sia probabilmente possibile scrivere verso la memoria flash SPI dall'interno del Secure Processor".

Infine, si arriva a Chimera. Anche in questo non è richiesto accesso fisico al sistema secondo i ricercatori e il modus operandi è lo stesso: avviare un EXE con privilegi di amministratore locali.

"Le vulnerabilità Chimera sono backdoor lasciate dal produttore dei chipset AMD, ASMedia. Permettono a un malintenzionato di iniettare codice maligno nel chip e prenderne il controllo, con la possibilità di leggere, scrivere ed eseguire. Un set di backdoor è implementato nel firmware, mentre l'altro nelle porte logiche del chip (ASIC). Entrambi producono lo stesso impatto".

ryzen threadripper

Praticamente tante delle cose scritte / dette nelle prime ore, erano imprecise o scorrette. Dovrei fustigarmi, tipo Silas nel Codice da Vinci, ma in realtà è un problema generale, dovuto al modo in cui è stato divulgato il tutto: poche informazioni, caotiche.

CTS-Labs voleva fare il colpaccio e in pratica ora le si è - in parte - ritorto contro e si trovano costretti a continui chiarimenti, che comunque sono utili per comprendere giorno dopo giorno la vicenda nel complesso. L'unica speranza è che ho è che non parlino troppo.

D'altronde AMD deve verificare e preparare correttivi (non servivano a questo i 90 giorni?), perché anche se preferisco mantenere la dicitura "presunte falle" in attesa che l'azienda si esponga nel merito, ormai mi sembra sempre più evidente che il problema esista.