Che cosa si sa delle funzionalità del processore sicuro AMD?

20

Ho trovato una buona quantità di ricerche su ciò che Intel ME fa, incluso il "Intel x86 considerato dannoso ( Il capitolo 4 parla di ME) " di un sondaggio di Joanna Rutkowska, ma mi trovo molto più difficile trovare informazioni sul Secure Processor di AMD (precedentemente noto come PSP).

Alcune persone hanno affermato che AMD PSP è "tanto brutto quanto" o "peggio di" ME. (Ad esempio, c'è una pagina ctt citata sul sito del progetto libreboot che reclama molte cose su PSP, ma io non ho Abbiamo ancora trovato una conferma indipendente di molte di queste affermazioni, e la prospettiva di libreboot è chiaramente diversa da quella di un ricercatore pratico della sicurezza.)

In definitiva, quello che voglio rispondere per me è: se il modello di una minaccia presume che AMD non abbia pre-backdoor le sue CPU / APU in fabbrica, quanto è rischioso il Secure Processor come vettore di future backdooring (come il "ring -3 rootkit" dimostrato su Intel), sia da parte di AMD che di terze parti, e tale minaccia è mitigabile?

Ma meno soggettivamente, mi piacerebbe sapere quali funzionalità sono già state viste nel Secure Processor e come ciò è paragonabile a ciò che è noto su ME:

  • È stato utilizzato per la gestione remota simile all'AMT di Intel?
  • È noto disporre di un proprio stack di rete?
  • Ha firmware aggiornabile dal software e in che modo è protetto il firmware?
  • Ci sono stati ancora exploit noti che lo hanno bersagliato, o ricerche pubbliche fatte sul suo firmware?
  • Su quali basi si potrebbe dire che la situazione con AMD PSP è "migliore" o "peggiore" rispetto a Intel ME?
posta mikkros 13.10.2016 - 22:05
fonte

2 risposte

4

Quindi quello che direi è tutto ciò che fornisce accesso diretto alla memoria e essenzialmente l'elaborazione per conto del processore è un intero altro insieme di superfici di minacce che si stanno introducendo alla piattaforma di elaborazione. Quindi direi che la superficie della minaccia è simile se non uguale.

Il modo in cui la PSP dovrebbe funzionare, per molti aspetti è simile a ME, ma prenderà parte anche alle operazioni crittografiche visto che sembra essere il suo obiettivo principale. Non ci sono ancora attacchi in corso sulla piattaforma di cui si parla ancora.

La parte che mi porta a credere che sarà probabilmente sfruttata in questo modo è un teaser: software anti-furto è una delle caratteristiche che la PSP dovrebbe consentire ... Quasi tutti i casi di questo si avvantaggia degli shim ME o di UEFI cludgy, se questo vuole essere più o meno lo stesso, allora assumerei alcune capacità di gestione residenti / offline per il sistema PSP su chip.

Non c'è nulla nelle specifiche che parla direttamente a uno stack di rete, ma c'è una chiamata all'interazione con 'IO' che potrebbe essere uno stub rimasto per quello.

Mi sorprenderebbe anche se AMD ignorasse una caratteristica del loro principale concorrente che è in circolazione da quasi un decennio. Ma non è conclusivo.

    
risposta data 05.12.2016 - 19:21
fonte
3

Ero interessato allo stesso problema e ho fatto alcune ricerche preliminari. Proverò a rispondere ad alcune domande, anche se come ingegnere non AMD non posso esserne certo.

Ha firmware aggiornabile dal software?

Sì, lo fa. Questo firmware fa parte di AGESA (AMD Generated Encapsulated Software Architecture), un blob binario distribuito da AMD a firmware UEFI fornitori. Anche su coreboot, dove vengono con note sulla versione PSP sezione menziona i numeri di versione PSP per diverse piattaforme. Questo suggerisce che sono aggiornabili.

e in che modo è protetto il firmware?

Non sono stato in grado di estrarre il codice del firmware e non so come sia protetto. Una possibile indicazione potrebbe essere la modalità di protezione del firmware SMU: con un HMAC-SHA nell'intestazione, con chiave segreta nascosta (vedere la presentazione di Rudolf Marek ).

È stato utilizzato per la gestione remota simile all'AMT di Intel?

È impossibile sapere per cosa è stato usato. Tuttavia, i miei risultati suggeriscono che la gestione remota non è lo scopo principale (a differenza di Intel ME). Quello che ho trovato lo fa:

  • La PSP ha un ruolo nel processo di avvio della CPU (questo è spesso citato, quindi non lo ripeterò).

  • PSP offre l'API fTPM (firmware based TPM) per la gestione delle chiavi private.

  • La PSP gestisce la gestione delle chiavi per SEV (Secure Encrypted Virtualization API), la crittografia della memoria VM. Utilizza una API per la PSP . Per vedere i dadi e le viti c'è una RFC per patch Linux per introdurre il supporto.

  • La PSP può essere utilizzata per lo scaricamento crittografico. Supporto per questo è atterrato nel kernel Linux sotto drivers/crypto/ccp .

Tuttavia: esiste la prova che il codice può essere caricato dinamicamente,

  • Caricamento di "trustlet" in coreboot. Puntatore per ulteriori analisi: Libreria PSP in coreboot
  • Un commento "Comando per caricare il binario dell'applicazione sicura nel sistema operativo PSP" in drivers/gpu/drm/amd/amdgpu/psp_gfx_if.h nel kernel Linux. Questo potrebbe riguardare una PSP diversa sul die GPU, ma dato che è un codice AMD, anche in quel caso potrebbero esserci delle sovrapposizioni.

È noto disporre di un proprio stack di rete?

No, non è noto avere uno stack di rete nella configurazione stock. Tutte le API sembrano essere rivolte alla CPU, non al mondo esterno.

Sapendo come questi processori sono progettati con specifiche vaghe da "clienti aziendali" e fornitori di DRM, potrebbe essere possibile caricare moduli di gestione remota, con stack di rete. Tuttavia, nulla di ciò che ho trovato lo dimostra in modo definitivo.

Ci sono stati ancora exploit noti che lo hanno bersagliato, o ricerche pubbliche fatte sul suo firmware?

C'è una vulnerabilità pubblica nell'API fTPM . Non sono riuscito a trovare alcuna ricerca pubblica sul firmware.

Su quali basi si potrebbe dire che la situazione con AMD PSP è "migliore" o "peggiore" rispetto a Intel ME?

Almeno il processore di sicurezza AMD non fornisce un'API di gestione remota pronta all'uso (per quanto ne sappiamo), diversamente da Intel ME. Per trasformarlo in una backdoor di ascolto della rete, il software del sistema operativo deve fornire ulteriori moduli, o addirittura comprometterlo.

Tuttavia, come abbiamo scoperto, è una scatola nera con pochissima ricerca pubblica. Nella crittografia un sistema acquisisce fiducia dopo che viene spesso analizzato e non vengono rilevate vulnerabilità. La sicurezza dall'oscurità non è accettabile. Sfortunatamente nessuno gestisce i processori della sicurezza secondo il principio di Kerckhoffs.

    
risposta data 23.02.2018 - 10:30
fonte

Leggi altre domande sui tag