Riepilogo

Per consentire ai clienti di verificare lo stato delle attenuazioni del canale laterale per l'esecuzione speculativa, Microsoft ha pubblicato uno script di PowerShell che i clienti possono eseguire nei loro sistemi. Questo argomento spiega come eseguire lo script e il significato dell'output.

Avvisi ADV180002, ADV180012, ADV180018e ADV190013 coprono nove vulnerabilità:

  • CVE-2017-5715 (branch target injection)

  • CVE-2017-5753 (bounds check bypass)

  • CVE-2017-5754 (rogue data cache load)

  • CVE-2018-3639 (esclusione dello Store speculativo)

  • CVE-2018-3620 (L1 terminale fault-OS)

  • CVE-2018-11091 (Campionamento dei dati di memoria non memorizzabile nella cache (MDSUM))

  • CVE-2018-12126 (Campionamento dei dati del buffer dello Store microarchitectural (MSBDS))

  • CVE-2018-12127 (Campionamento dei dati della porta di carico microarchitectural (MLPDS))

  • CVE-2018-12130 (microarchitectural Fill buffer data Sampling (MFBDS))

La protezione per CVE-2017-5753 (controllo dei limiti) non richiede ulteriori impostazioni del registro di sistema o aggiornamenti del firmware. Questo argomento fornisce informazioni dettagliate sullo script di PowerShell che consente di determinare lo stato dei rimedi per i CVEs elencati che richiedono ulteriori impostazioni del registro di sistema e, in alcuni casi, gli aggiornamenti del firmware.

Ulteriori informazioni

Installare ed eseguire lo script eseguendo i comandi seguenti.

Verifica di PowerShell tramite la raccolta di PowerShell (Windows Server 2016 o WMF 5.0/5.1)

Installare il modulo di PowerShell

PS> Install-Module SpeculationControl

Eseguire il modulo di PowerShell per verificare che le protezioni siano abilitate

PS> # Save the current execution policy so it can be reset

PS> $SaveExecutionPolicy = Get-ExecutionPolicy

PS> Set-ExecutionPolicy RemoteSigned -Scope Currentuser

PS> Import-Module SpeculationControl

PS> Get-SpeculationControlSettings

PS> # Reset the execution policy to the original state

PS> Set-ExecutionPolicy $SaveExecutionPolicy -Scope Currentuser

Verifica di PowerShell tramite download da TechNet (versioni precedenti del sistema operativo/versioni precedenti di WMF)

Installare il modulo di PowerShell da TechNet ScriptCenter

  1. Accedere a https://aka.ms/SpeculationControlPS.

  2. Scaricare SpeculationControl. zip in una cartella locale.

  3. Estrarre il contenuto in una cartella locale, ad esempio C:\ADV180002

Eseguire il modulo di PowerShell per verificare che le protezioni siano abilitate

Avviare PowerShell e quindi (usando l'esempio precedente) copiare ed eseguire i comandi seguenti:

PS> # Save the current execution policy so it can be reset

PS> $SaveExecutionPolicy = Get-ExecutionPolicy

PS> Set-ExecutionPolicy RemoteSigned -Scope Currentuser

PS> CD C:\ADV180002\SpeculationControl

PS> Import-Module .\SpeculationControl.psd1

PS> Get-SpeculationControlSettings

PS> # Reset the execution policy to the original state

PS> Set-ExecutionPolicy $SaveExecutionPolicy -Scope Currentuser

L'output di questo script di PowerShell sarà simile al seguente. Le protezioni abilitate vengono visualizzate nell'output come "vero".

PS C:\> Get-SpeculationControlSettings Speculation control settings for CVE-2017-5715 [branch target injection] Hardware support for branch target injection mitigation is present: False Windows OS support for branch target injection mitigation is present: True Windows OS support for branch target injection mitigation is enabled: False Windows OS support for branch target injection mitigation is disabled by system policy: True Windows OS support for branch target injection mitigation is disabled by absence of hardware support: True Speculation control settings for CVE-2017-5754 [rogue data cache load] Hardware requires kernel VA shadowing: True Windows OS support for kernel VA shadow is present: False Windows OS support for kernel VA shadow is enabled: False Windows OS support for PCID optimization is enabled: False Speculation control settings for CVE-2018-3639 [speculative store bypass] Hardware is vulnerable to speculative store bypass: True Hardware support for speculative store bypass mitigation is present: False Windows OS support for speculative store bypass mitigation is present: True Windows OS support for speculative store bypass mitigation is enabled system-wide: False

Impostazioni di controllo della speculazione per CVE-2018-3620 [L1 Terminal fault]

Hardware is vulnerable to L1 terminal fault: True Windows OS support for L1 terminal fault mitigation is present: True Windows OS support for L1 terminal fault mitigation is enabled: True

Impostazioni di controllo della speculazione per MDS [campionamento dei dati microarchitectural]

Il supporto per Windows OS per la mitigazione MDS è presente: vero L'hardware è vulnerabile a MDS: vero Il supporto per Windows OS per la mitigazione MDS è abilitato: vero BTIHardwarePresent: False BTIWindowsSupportPresent: True BTIWindowsSupportEnabled: False BTIDisabledBySystemPolicy: True BTIDisabledByNoHardwareSupport: True KVAShadowRequired: True KVAShadowWindowsSupportPresent: False KVAShadowWindowsSupportEnabled: False KVAShadowPcidEnabled: False SSBDWindowsSupportPresent: True SSBDHardwareVulnerablePresent: True SSBDHardwarePresent: True SSBDWindowsSupportEnabledSystemWide: False L1TFHardwareVulnerable: True L1TFWindowsSupportPresent: True L1TFWindowsSupportEnabled: True L1TFInvalidPteBit: 45 L1DFlushSupported: False MDSWindowsSupportPresent: True MDSHardwareVulnerable: True MDSWindowsSupportEnabled: True

La griglia di output finale esegue il mapping all'output delle righe precedenti. Questa operazione viene visualizzata perché PowerShell stampa l'oggetto restituito da una funzione. La tabella seguente illustra ogni riga.

Output

Spiegazione

Impostazioni di controllo della speculazione per CVE-2017-5715 [Injection target Branch]

Questa sezione fornisce lo stato del sistema per la variante 2, CVE-2017-5715 , l'iniezione di destinazione della filiale.

È presente il supporto hardware per la mitigazione dell'iniezione di destinazione della filiale

Esegue il mapping a BTIHardwarePresent. Questa riga indica se sono presenti caratteristiche hardware per supportare la mitigazione dell'iniezione di destinazione della filiale. Il dispositivo OEM è responsabile della fornitura del BIOS/firmware aggiornato che contiene il microcodice fornito dai produttori di CPU. Se questa linea èvera, sono presenti le caratteristiche hardware necessarie. Se la linea èfalsa, le caratteristiche hardware necessarie non sono presenti e quindi non è possibile abilitare la mitigazione dell'iniezione di destinazione della filiale.

Nota BTIHardwarePresent saràtruenelle VM Guest se l'aggiornamento OEM è stato applicato all'host e vengono seguite leindicazioni.

È presente il supporto per Windows OS per la mitigazione dell'iniezione di destinazione della filiale

Esegue il mapping a BTIWindowsSupportPresent. Questa riga indica se è presente il supporto per il sistema operativo Windows per la mitigazione dell'iniezione di destinazione della filiale. In caso affermativo, ilsistema operativo supporta l'abilitazione della mitigazione dell'iniezione di destinazione della filiale (e quindi ha installato l'aggiornamento di 2018 gennaio). In caso contrario, l'aggiornamento di gennaio 2018 non è stato installato nel sistema e non è possibile abilitare il Mitigation injection di destinazione della filiale.

Nota Se una VM guest non riesce a rilevare l'aggiornamento hardware dell'host, BTIWindowsSupportEnabled sarà semprefalse.

Supporto per il sistema operativo Windows per la mitigazione dell'iniezione di destinazione Branch è abilitato

Esegue il mapping a BTIWindowsSupportEnabled. Questa riga indica se il supporto del sistema operativo Windows è abilitato per la mitigazione dell'iniezione di destinazione della filiale. In caso affermativo, il supporto hardware e il supporto del sistema operativo per la mitigazione dell'iniezione di destinazione della filiale sono abilitati per ildispositivo,proteggendo così daCVE-2017-5715. Se èfalsa, una delle condizioni seguenti è vera:

  • Il supporto hardware non è presente.

  • Il supporto per il sistema operativo non è presente.

  • La mitigazione è stata disattivata dai criteri di sistema.

Il supporto del sistema operativo Windows per la mitigazione dell'iniezione della destinazione Branch è disabilitato dai criteri di sistema

Esegue il mapping a BTIDisabledBySystemPolicy. Questa riga indica se la mitigazione dell'iniezione di destinazione della filiale è stata disattivata dai criteri di sistema, ad esempio i criteri definiti dall'amministratore. I criteri di sistema si riferiscono ai controlli di registro come documentati inKB 4072698. In caso affermativo, i criteri disistema sono responsabilidella disabilitazione della mitigazione. Se èfalsa, la mitigazione viene disabilitata da una causa diversa.

Il supporto di Windows OS per la mitigazione dell'iniezione di destinazione di Branch è disabilitato per assenza di supporto hardware

Esegue il mapping a BTIDisabledByNoHardwareSupport. Questa riga indica se la mitigazione dell'iniezione di destinazione della filiale è stata disattivata a causa dell'assenza di supporto hardware. In caso affermativo, l'assenza di supporto hardware è responsabile della disabilitazione della mitigazione. Se èfalsa, la mitigazione viene disabilitata da una causa diversa.

Nota Se una VM guest non riesce a rilevare l'aggiornamento hardware dell'host, BTIDisabledByNoHardwareSupport sarà sempretrue.

Impostazioni di controllo della speculazione per CVE-2017-5754 [caricamento della cache dei dati Rogue]

Questa sezione include lo stato del sistema di riepilogo per la variante 3,CVE-2017-5754, il caricamento della cache dei dati canaglia. La mitigazione per questa operazione è nota come ombreggiatura dell'indirizzo virtuale del kernel (VA) o per la riduzione del carico della cache dei dati canaglia.

L'hardware richiede lo shadowing del kernel VA

Esegue il mapping a KVAShadowRequired. Questa riga indica se l'hardware è vulnerabile aCVE-2017-5754. Se èvero, l'hardware viene considerato vulnerabile a CVE-2017-5754. Se èfalsa, l'hardware è noto per non essere vulnerabile a CVE-2017-5754.

Il supporto per Windows OS per il kernel VA Shadow è presente

Esegue il mapping a KVAShadowWindowsSupportPresent. Questa riga indica se è presente il supporto per il sistema operativo Windows per la caratteristica ombreggiatura del kernel VA. Se èvero, l'aggiornamento di gennaio 2018 è installato nel dispositivo e l'ombreggiatura del kernel va è supportata. Se èfalso, l'aggiornamento di gennaio 2018 non è installato e il supporto shadow di kernel va non esiste.

Il supporto per Windows OS per l'ombreggiatura da kernel VA è abilitato

Esegue il mapping a KVAShadowWindowsSupportEnabled. Questa riga indica se la caratteristica ombreggiatura del kernel VA è stata abilitata. In caso affermativo, l'hardware è ritenutovulnerabile aCVE-2017-5754, il supporto del sistema operativo Windows è presente e la caratteristica è stata abilitata. La caratteristica ombreggiatura del kernel VA è attualmente abilitata per impostazione predefinita nelle versioni client di Windows ed è disabilitata per impostazione predefinita nelle versioni di Windows Server. Se il valore èfalse, il supporto del sistema operativo Windows non è presente oppure la caratteristica non è stata abilitata.

Il supporto per Windows OS per l'ottimizzazione delle prestazioni di PCID è abilitato

Nota PCID non è necessario per la sicurezza. Indica solo se è abilitato un miglioramento delle prestazioni. PCID non è supportato con Windows Server 2008 R2

Esegue il mapping a KVAShadowPcidEnabled. Questa riga indica se è stata abilitata un'ulteriore ottimizzazione delle prestazioni per il kernel VA Shadow. Se èvero, l'ombreggiatura del kernel va è abilitata, il supporto hardware per PCID è presente e l'ottimizzazione di PCID per kernel va Shadow è stata abilitata. Se èfalso, l'hardware o il sistema operativo potrebbe non supportare PCID. Non si tratta di un punto debole per la sicurezza per cui l'ottimizzazione PCID non deve essere abilitata.

Il supporto per Windows OS per la disattivazione dello Store speculativo è presente

Esegue il mapping a SSBDWindowsSupportPresent. Questa riga indica se il supporto per il sistema operativo Windows per la disattivazione dello Store speculativo è presente. Se è vero , l'aggiornamento di gennaio 2018 è installato nel dispositivo e l'ombreggiatura del kernel va è supportata. Se è falso , l'aggiornamento di gennaio 2018 non è installato e il supporto shadow di kernel va non esiste.

L'hardware richiede la disabilitazione dello Store speculativo

Esegue il mapping a SSBDHardwareVulnerablePresent. Questa riga indica se l'hardware è vulnerabile a CVE-2018-3639. Se è vero , l'hardware viene considerato vulnerabile a CVE-2018-3639. Se è falsa , l'hardware è noto per non essere vulnerabile a CVE-2018-3639.

Il supporto hardware per la disattivazione dello Store speculativo è presente

Esegue il mapping a SSBDHardwarePresent. Questa riga indica se le caratteristiche hardware sono presenti per supportare la disabilitazione dello Store speculativo. Il dispositivo OEM è responsabile della fornitura del BIOS/firmware aggiornato che contiene il microcodice fornito da Intel. Se questa linea è vera , sono presenti le caratteristiche hardware necessarie. Se la linea è falsa , le caratteristiche hardware necessarie non sono presenti e quindi non è possibile attivare l'esclusione dello Store speculativo.

Nota SSBDHardwarePresent sarà true nelle VM Guest se l'aggiornamento OEM è stato applicato all'host.

 

Il supporto per Windows OS per il bypass dello Store speculativo disabilitato è attivato

Esegue il mapping a SSBDWindowsSupportEnabledSystemWide. Questa riga indica se il bypass dello Store speculativo Disable è stato attivato nel sistema operativo Windows. In caso affermativo , il supporto hardware e il supporto per il sistema operativo per la disattivazione dello Store speculativo disabilitano è attivato per il dispositivo impedendo il verificarsi di un bypass speculativo, eliminando completamente il rischio di sicurezza. Se è falsa , una delle condizioni seguenti è vera:

  • Il supporto hardware non è presente.

  • Il supporto per il sistema operativo non è presente.

  • L'esclusione dello Store speculativo Disable non è stata attivata tramite le chiavi del registro di sistema. Per istruzioni su come attivare, vedere gli articoli seguenti:

Istruzioni client Windows per i professionisti IT per la protezione dalle vulnerabilità del canale laterale di esecuzione speculativa

Guida di Windows Server per la protezione dalle vulnerabilità del canale laterale di esecuzione speculativa

 

Impostazioni di controllo della speculazione per CVE-2018-3620 [L1 Terminal fault]

Questa sezione include lo stato del sistema di riepilogo per L1TF (sistema operativo) a cui fa riferimento CVE-2018-3620. Questa attenuazione garantisce che vengano usati bit di frame pagina sicuri per le voci della tabella di pagina non presenti o non valide.

Nota Questa sezione non offre un riepilogo dello stato di attenuazione per L1TF (VMM) a cui fa riferimento CVE-2018-3646.

L'hardware è vulnerabile all'errore terminale L1: vero

Esegue il mapping a L1TFHardwareVulnerable. Questa riga indica se l'hardware è vulnerabile a un errore terminale L1 (L1TF, CVE-2018-3620). Se è vero, l'hardware viene considerato vulnerabile a CVE-2018-3620. Se è falsa, l'hardware è noto per non essere vulnerabile a CVE-2018-3620.

Il supporto per Windows OS per la mitigazione degli errori del terminale L1 è presente: vero

Esegue il mapping a L1TFWindowsSupportPresent. Questa riga indica se è presente il supporto per il sistema operativo Windows per l'attenuazione del sistema operativo L1 Terminal fault (L1TF). In caso affermativo, l'aggiornamento di agosto 2018 è installato nel dispositivo e la mitigazione per CVE-2018-3620 è presente. Se il valore è false, l'aggiornamento di agosto 2018 non è installato e la mitigazione per CVE-2018-3620 non è presente.

Il supporto per Windows OS per l'attenuazione degli errori del terminale L1 è abilitato: vero

Esegue il mapping a L1TFWindowsSupportEnabled. Questa riga indica se l'attenuazione del sistema operativo Windows per l'errore terminale L1 (L1TF, CVE-2018-3620) è abilitata. In caso affermativo, l'hardware è ritenuto vulnerabile a CVE-2018-3620, il supporto per il sistema operativo Windows per la mitigazione è presente e la mitigazione è stata abilitata. Se il valore è falso, l'hardware non è vulnerabile, il supporto del sistema operativo Windows non è presente oppure l'attenuazione non è stata abilitata.

Impostazioni di controllo della speculazione per MDS [campionamento dei dati microarchitectural]

Questa sezione fornisce lo stato del sistema per il set di vulnerabilità MDS, CVE-2018-11091, CVE-2018-12126, CVE-2018-12127e CVE-2018-12130

Il supporto per Windows OS per la mitigazione MDS è presente

Esegue il mapping a MDSWindowsSupportPresent. Questa riga indica se è presente il supporto del sistema operativo Windows per la mitigazione del sistema operativo per il campionamento dei dati microarchitectural (MDS). In caso affermativo, l'aggiornamento di maggio 2019 è installato nel dispositivo e la mitigazione per MDS è presente. In caso contrario, l'aggiornamento di maggio 2019 non è installato e la mitigazione per MDS non è presente.

L'hardware è vulnerabile a MDS

Esegue il mapping a MDSHardwareVulnerable. Questa riga indica se l'hardware è vulnerabile a un set di vulnerabilità per il campionamento dei dati microarchitectural (CVE-2018-11091, CVE-2018-12126, CVE-2018-12127, CVE-2018-12139). In caso affermativo, l'hardware viene considerato influenzato da queste vulnerabilità. Se è falso, l'hardware è noto per non essere vulnerabile.

Il supporto per Windows OS per la mitigazione MDS è abilitato

Esegue il mapping a MDSWindowsSupportEnabled. Questa riga indica se è abilitata la mitigazione del sistema operativo Windows per il campionamento dei dati microarchitectural (MDS). In caso affermativo, l'hardware viene considerato influenzato dalle vulnerabilità di MDS, il supporto operativo di Windows per la mitigazione è presente e la mitigazione è stata abilitata. Se il valore è falso, l'hardware non è vulnerabile, il supporto del sistema operativo Windows non è presente oppure l'attenuazione non è stata abilitata.

L'output seguente è previsto per un computer con tutte le attenuazioni abilitate, insieme a ciò che è necessario per soddisfare ogni condizione.

BTIHardwarePresent: True -> apply OEM BIOS/firmware update BTIWindowsSupportPresent: True -> install January 2018 update BTIWindowsSupportEnabled: True -> on client, no action required. On server, follow guidance. BTIDisabledBySystemPolicy: False -> ensure not disabled by policy. BTIDisabledByNoHardwareSupport: False -> ensure OEM BIOS/firmware update is applied. KVAShadowRequired: True or False -> no action, this is a function of the CPU the computer uses If KVAShadowRequired is True KVAShadowWindowsSupportPresent: True -> install January 2018 update KVAShadowWindowsSupportEnabled: True -> on client, no action required. On server, follow guidance. KVAShadowPcidEnabled: True or False -> no action , this is a function of the CPU the computer uses

If SSBDHardwareVulnerablePresent is True SSBDWindowsSupportPresent: True -> install Windows updates as documented in adv180012 SSBDHardwarePresent: True -> install BIOS/firmware update with support for SSBD from your device OEM SSBDWindowsSupportEnabledSystemWide: True -> follow recommended actions to turn on SSBD

If L1TFHardwareVulnerable is True L1TFWindowsSupportPresent: True -> install Windows updates as documented in adv180018 L1TFWindowsSupportEnabled: True -> follow actions outlined in adv180018 for Windows Server or Client as appropriate to enable the mitigation

La tabella seguente associa l'output alle chiavi del registro di sistema coperte da linee guida di Windows Server per la protezione dalle vulnerabilità del canale laterale di esecuzione speculativa.

Chiave del registro di sistema

Mapping

FeatureSettingsOverride-bit 0

Eseguire il mapping a un'iniezione di destinazione-ramo-BTIWindowsSupportEnabled

FeatureSettingsOverride-bit 1

Caricamento della cache di dati a-Rogue di Maps-VAShadowWindowsSupportEnabled

Serve aiuto?

Amplia le tue competenze
Esplora i corsi di formazione
Ottieni in anticipo le nuove caratteristiche
Partecipa a Microsoft Insider

Queste informazioni sono risultate utili?

Quanto ti soddisfa la qualità della traduzione?

Cosa ha influito sulla tua esperienza?

Altri commenti e suggerimenti? (Facoltativo)

Grazie per il feedback!

×