Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Questo articolo descrive come Microsoft contribuisce a garantire l'integrità e la sicurezza dell'host tramite l'avvio misurato e l'attestazione dell'host.
Avvio con misurazioni
Il Trusted Platform Module (TPM) è un componente di audit a prova di manomissione e crittograficamente sicuro, con firmware fornito da una terza parte fidata. Il log di configurazione di avvio contiene misurazioni concatenate tramite hash registrate nei Registri di Configurazione della Piattaforma (PCR) quando l'host ha eseguito per l'ultima volta la sequenza di avvio. La figura seguente illustra questo processo di registrazione. L'aggiunta incrementale di una misurazione precedentemente sottoposta ad hashing all'hash della misurazione successiva e l'esecuzione dell'algoritmo di hashing sull'insieme risultante consentono di realizzare il concatenamento degli hash.
L'attestazione avviene quando un host fornisce una prova del proprio stato di configurazione utilizzando il suo boot configuration log (TCGLog). La falsificazione di un log di avvio è difficile perché il TPM non espone i valori PCR diversi dalle operazioni di lettura ed estensione. Inoltre, le credenziali del servizio Host Attestation sono vincolate a specifici valori PCR. L'hash-chaining rende computazionalmente inviabile falsificare o sbloccare le credenziali fuori banda.
Servizio di attestazione host
Il Servizio di Attestazione Host è una misura preventiva che verifica se le macchine host sono affidabili prima di poter interagire con i dati o i carichi di lavoro dei clienti. Il Servizio di Attestazione Host valida una dichiarazione di conformità (prova verificabile della conformità dell'host) inviata da ciascun host rispetto a una policy di attestazione (definizione dello stato sicuro). Una radice di fiducia fornita da un TPM garantisce l'integrità di questo sistema.
Il servizio di attestazione host è presente in ogni cluster di Azure all'interno di un ambiente bloccato specializzato. L'ambiente bloccato include altri servizi gatekeeper che partecipano al protocollo di avvio della macchina host. Un'infrastruttura a chiave pubblica (PKI) agisce come intermediario per la validazione della provenienza delle richieste di attestazione e come emittente di identità dopo l'attestazione di successo dell'host. Le credenziali post-attestazione rilasciate all'host attestante sono vincolate alla sua identità. Solo l'host richiedente può sbloccare le credenziali e usarle per ottenere permessi incrementali. Questa progettazione aiuta a prevenire attacchi man-in-the-middle e di spoofing.
Se un host Azure arriva dalla fabbrica con una configurazione di sicurezza errata o qualcuno lo manomette nel datacenter, il suo TCGLog contiene indicatori di compromissione che il Servizio di Attestazione Host segnala durante la successiva attestazione. Questo rilevamento provoca un errore di attestazione. Gli errori di attestazione impediscono alla flotta di Azure di considerare attendibile l'host che causa l'errore. Questa misura di prevenzione blocca completamente tutte le comunicazioni da e verso l'host e attiva un workflow di gestione degli incidenti. Microsoft conduce un'indagine e un'analisi post-mortem dettagliata per determinare le cause profonde e eventuali indicazioni di compromesso. Solo dopo il completamento dell'analisi Microsoft può rimediare a un host e permettergli di entrare nella flotta Azure e assumere carichi di lavoro dei clienti.
Il diagramma seguente mostra un'architettura ad alto livello del servizio di attestazione host:
Misurazioni di attestazione
Le sezioni seguenti forniscono esempi delle misurazioni catturate oggi.
Secure Boot e chiavi Secure Boot
Validando i digest del database delle firme e delle firme revocate, il servizio di attestazione host garantisce che l'agente client si fidi del software giusto. Validando le firme del database della chiave di registrazione della chiave pubblica e della chiave pubblica della piattaforma, il Servizio di Attestazione Host conferma che solo le parti affidabili possono modificare le definizioni di software affidabile. Infine, assicurando che il secure boot sia attivo, il Host Attestation Service convalida l'applicazione attiva di queste definizioni.
Controlli di debug
I debugger sono strumenti potenti per gli sviluppatori. Tuttavia, se una parte non affidabile ottiene accesso alla memoria e ad altri comandi di debug, ciò può indebolire la protezione dei dati e l'integrità del sistema. Il Host Attestation Service verifica che le macchine di produzione si avviino con il debugging disabilitato.
Integrità del codice
UEFI Secure Boot garantisce che durante la sequenza di avvio vengano eseguiti solo software affidabile di basso livello. Gli stessi controlli devono applicarsi anche nell'ambiente post-boot ai driver e ad altri eseguibili con accesso in modalità kernel. A tal fine, una policy di integrità del codice (CI) specifica firme valide e invalide per identificare driver affidabili, binari e altri eseguibili. Il Servizio di Attestazione Host fa rispettare queste politiche. Le violazioni delle politiche generano avvisi al team di risposta agli incidenti di sicurezza per l'indagine.
Passaggi successivi
Per saperne di più su come Microsoft guida l'integrità e la sicurezza della piattaforma, consulta: