KB4457951: Windows-richtlijnen ter bescherming tegen speculatieve beveiligingslekken in kanalen aan de uitvoeringszijde

Van toepassing op
Windows Server 2019, all editions Windows 10, version 1809, all editions Windows Server version 1803 Windows Server 2016, all editions Windows 10, version 1803, all editions Windows 10, version 1709, all editions Windows 10, version 1703, all editions Windows 10 Windows Server 2012 R2 Windows RT 8.1 Windows 8.1 Windows Server 2012 Windows Server 2008 R2 Service Pack 1 Windows Server 2008 Service Pack 2 Windows 10, version 1607, all editions Windows 7
Wijzigingenlogboek
Datum Beschrijving van wijziging
27 oktober 2023 Verwijzingen naar Beperking B toegevoegd
17 juli 2023 MMIO-informatie toegevoegd

Samenvatting

Microsoft is op de hoogte van nieuwe varianten van de aanvalsklasse die bekend staat als speculatieve beveiligingslekken in kanalen aan de uitvoeringszijde. De varianten hebben de naam L1 Terminal Fault (L1TF) en Microarchitectural Data Sampling (MDS). Een aanvaller die misbruik kan maken van L1TF of MDS, kan mogelijk over de grenzen van vertrouwensregels heen geprivilegieerde gegevens lezen.

BIJGEWERKT OP 14 mei 2019: Op 14 mei 2019 publiceerde Intel informatie over een nieuwe subklasse van speculatieve kwetsbaarheden in kanalen aan de uitvoeringszijde die bekend staat als Microarchitectural Data Sampling. Ze hebben de volgende CVE's toegewezen gekregen:

BIJGEWERKT OP 12 NOVEMBER 2019: Op 12 november 2019 heeft Intel een technisch advies gepubliceerd over® Intel Transactional Synchronization Extensions (Intel® TSX) Transaction Asynchroon afbreken kwetsbaarheid die is toegewezen aan CVE-2019-11135. Microsoft heeft updates uitgebracht om dit beveiligingslek te beperken. Houd rekening met het volgende:

  • Beveiliging van besturingssystemen is standaard ingeschakeld voor bepaalde edities van het Windows Server-besturingssysteem. Zie het Microsoft Knowledge Base-artikel 4072698 voor meer informatie.
  • Beveiliging van besturingssystemen is standaard ingeschakeld voor alle edities van het Windows Client-besturingssysteem. Zie het Microsoft Knowledge Base-artikel 4073119 voor meer informatie.

Overzicht van kwetsbaarheden

In omgevingen waarin bronnen worden gedeeld, zoals virtualisatiehosts, kan een aanvaller die willekeurige code kan uitvoeren op de ene virtuele machine toegang krijgen tot informatie van een andere virtuele machine of van de virtualisatiehost zelf.

Serverworkloads zoals Windows Server Extern bureaublad Services (RDS) en meer specifieke functies zoals Active Directory-domeincontrollers lopen ook gevaar. Aanvallers die willekeurige code kunnen uitvoeren (ongeacht hun bevoegdheidsniveau), kunnen mogelijk toegang krijgen tot geheimen van het besturingssysteem of de werkbelasting, zoals versleutelingssleutels, wachtwoorden en andere gevoelige gegevens.

Windows-clientbesturingssystemen lopen ook risico, vooral als ze niet-vertrouwde code uitvoeren, gebruikmaken van op virtualisatie gebaseerde beveiligingsfuncties zoals Windows Defender Credential Guard of Hyper-V gebruiken om virtuele machines uit te voeren.

Opmerking: Deze beveiligingslekken zijn alleen van invloed op Intel Core-processors en Intel Xeon-processors.

Overzicht van risicobeperking

Om deze problemen op te lossen, werkt Microsoft samen met Intel aan de ontwikkeling van softwarematige oplossingen en richtlijnen. Er zijn software-updates uitgebracht om de beveiligingsproblemen te beperken. Om alle beschikbare beveiligingen te verkrijgen, zijn mogelijk updates vereist die ook microcode van apparaat-OEM's kunnen bevatten.

In dit artikel wordt beschreven hoe u de volgende kwetsbaarheden kunt beperken:

  • CVE-2018-3620 | L1-terminalfout - besturingssysteem, SMM
  • CVE-2018-3646 | L1 Terminalfout – VMM
  • CVE-2018-11091 | Microarchitectural Data Sampling Uncacheable Memory (MDSUM)
  • CVE-2018-12126 | MSBDS (Microarchitectural Store Buffer Data Sampling)
  • CVE-2018-12127 | Microarchitectural Load Port Data Sampling (MLPDS)
  • CVE-2018-12130 | Microarchitectural Fill Buffer Data Sampling (MFBDS)
  • CVE-2019-11135 | Kwetsbaarheid in Windows Kernel Information Disclosure
  • CVE-2022-21123 | Gedeelde buffergegevens lezen (SBDR)
  • CVE-2022-21125 | Gedeelde buffergegevenssteekproef (SBDS)
  • CVE-2022-21127 | Special Register Buffer Data Sampling Update (SRBDS-update)
  • CVE-2022-21166 | Gedeeltelijke schrijfactie voor apparaatregister (DRPW)

Zie de volgende beveiligingsadviezen voor meer informatie over de beveiligingsproblemen:

L1TF:ADV180018 | Microsoft-richtlijnen om de L1TF-variant te beperken

MDS:ADV190013 | Microsoft-richtlijnen voor het beperken van kwetsbaarheden in microarchitecturale gegevenssteekproeven

MMIO:ADV220002 | Microsoft-richtlijnen voor verouderde gegevenskwetsbaarheden in Intel-processors MMIO

Beveiligingslek met betrekking tot openbaarmaking van Windows-kernel:CVE-2019-11135 | Kwetsbaarheid in Windows Kernel Information Disclosure

Bepalen welke acties nodig zijn om de dreiging te beperken

De volgende secties kunnen u helpen bij het identificeren van systemen die zijn getroffen door de L1TF- en/of MDS-beveiligingslekken, en helpen u de risico's te begrijpen en te beperken.

Mogelijke invloed op de prestaties

Tijdens het testen heeft Microsoft enige invloed van deze beperkingen op de prestaties ondervonden, afhankelijk van de configuratie van het systeem en welke beperkingen vereist zijn.

Sommige klanten moeten mogelijk hyperthreading (ook bekend als gelijktijdige multithreading of SMT) uitschakelen om het risico van L1TF en MDS volledig aan te pakken. Houd er rekening mee dat het uitschakelen van hyperthreading kan leiden tot verminderde prestaties. Deze situatie is van toepassing op klanten die gebruikmaken van:

  • Eerdere versies van Hyper-V dan Windows Server 2016 of Windows 10 versie 1607 (Jubileumupdate)
  • VBS-functies (Virtualization-based security), zoals Credential Guard en Device Guard
  • Software die de uitvoering van niet-vertrouwde code mogelijk maakt (bijvoorbeeld een build automation-server of een gedeelde IIS-hostingomgeving)

Dit effect kan variëren per hardware en de workloads die op het systeem worden uitgevoerd. De meest algemene systeemconfiguratie is het inschakelen van hyperthreading. Daarom is de invloed op de prestaties beperkt tot de gebruiker of beheerder die de actie onderneemt om hyperthreading uit te schakelen op het systeem.

Opmerking: Voer de volgende stappen uit om te bepalen of uw systeem gebruikmaakt van met VBS beveiligde beveiligingsfuncties:

  1. Typ MSINFO32 in het menu Start .

    Opmerking: Het venster Systeeminformatie wordt geopend.

  2. Typ in het vak Zoeken naarde tekst beveiliging.

  3. Zoek in het rechterdeelvenster naar de twee rijen die in de schermafbeelding zijn geselecteerd en kijk in de kolom Waarde of virtualisatiegebaseerde beveiliging is ingeschakeld en welke gevirtualiseerde beveiligingsservices worden uitgevoerd.
    Venster Systeeminfo

De Hyper-V kernplanner beperkt de L1TF- en MDS-aanvalsvectoren tegen Hyper-V virtuele machines, terwijl hyper-threading ingeschakeld blijft. De basisplanner is beschikbaar vanaf Windows Server 2016 en Windows 10 versie 1607. Dit heeft minimale invloed op de prestaties van de virtuele machines.

De kernplanner beperkt de L1TF- of MDS-aanvalsvectoren niet tegen met VBS beveiligde beveiligingsfuncties. Raadpleeg voor meer informatie Mitigation C en het volgende Virtualization Blog-artikel:

https://aka.ms/hyperclear

Ga naar de volgende Intel-website voor gedetailleerde informatie van Intel over de invloed hiervan op de prestaties:

www.intel.com/securityfirst

Betrokken systemen en vereiste oplossingen identificeren

Het stroomdiagram in figuur 1 kan u helpen bij het identificeren van betrokken systemen en het bepalen van de juiste set acties.

Belangrijk: Als u virtuele machines gebruikt, moet u het stroomdiagram overwegen en toepassen op Hyper-V-hosts en elke betrokken VM-gast afzonderlijk, omdat op beide risicobeperkingen van toepassing kunnen zijn. Met name voor een Hyper-V-host bieden de stappen in het stroomdiagram beveiligingen tussen VM's en binnen hosts. Het toepassen van deze beperkingen op alleen de Hyper-V-host is echter niet voldoende om intra-VM-beveiliging te bieden. Als u bescherming binnen VM's wilt bieden, moet u het stroomdiagram toepassen op elke Windows-VM. In de meeste gevallen betekent dit dat u ervoor moet zorgen dat de registersleutels in de VM zijn ingesteld.

Terwijl u door het stroomdiagram navigeert, komt u blauwe cirkels met letters tegen die zijn toegewezen aan een actie of een reeks acties die nodig zijn om L1TF-aanvalsvectoren te beperken die specifiek zijn voor uw systeemconfiguraties. Elke actie die u tegenkomt, moet worden toegepast. Als u een groene lijn tegenkomt, geeft dit een direct pad naar het einde aan en zijn er geen aanvullende stappen om de risicobeperking op te lossen.

Een korte uitleg van elke beperking met letters is opgenomen in de legenda aan de rechterkant. Gedetailleerde uitleg voor elke risicobeperking, met inbegrip van stapsgewijze installatie- en configuratie-instructies, vindt u in de sectie 'Risicobeperkingen'.

Stroomdiagram

Risicobeperkingen

Belangrijk: In de volgende sectie worden oplossingen beschreven die ALLEEN moeten worden toegepast onder de specifieke voorwaarden die worden bepaald door het stroomdiagram in afbeelding 1 in de vorige sectie. Pas deze beperkingen NIET toe, tenzij het stroomdiagram aangeeft dat de specifieke beperking noodzakelijk is.

Naast software- en microcode-updates kunnen handmatige configuratiewijzigingen ook vereist zijn om bepaalde beveiligingen in te schakelen. Verder adviseren we zakelijke klanten zich te registreren voor de e-mailer met beveiligingsmeldingen om waarschuwingen te ontvangen over wijzigingen in de inhoud. (Zie Technische beveiligingsmeldingen van Microsoft.)

Beperking A

De meest recente Windows-updates ophalen en toepassen

Pas alle beschikbare updates voor het Windows-besturingssysteem toe, inclusief de maandelijkse beveiligingsupdates voor Windows. Je vindt de tabel met betrokken producten in het Microsoft-beveiligingsadvies | ADV 180018 voor L1TF, Beveiligingsadvies | ADV 190013 voor MDS, beveiligingsadvies | ADV220002 voor MMIO en beveiligingsproblemen | CVE-2019-11135 voor het beveiligingslek met betrekking tot informatievrijgave van de Windows-kernel.

Beperking B

De meest recente microcode of firmware-updates ophalen en toepassen

Naast het installeren van de meest recente beveiligingsupdates voor Windows, is mogelijk ook een processormicrocode of firmware-update vereist. We raden u aan de meest recente microcode-update voor uw apparaat te verkrijgen en toe te passen, voor zover van toepassing op uw apparaat. Zie de volgende referenties voor meer informatie over microcode- of firmware-updates:

Opmerking: Als u geneste virtualisatie gebruikt (inclusief het uitvoeren van Hyper-V-containers in een gast-VM), moet u de nieuwe microcode-verlichting aan de gast-VM blootstellen. Hiervoor is mogelijk een upgrade van de VM-configuratie naar versie 8 vereist. Versie 8 bevat standaard de microcode-verlichtingen. Zie het volgende artikel voor meer informatie en de vereiste stappen in het artikel over Microsoft Docs:

Hyper-V uitvoeren op een virtuele machine met geneste virtualisatie

Beperking C

Moet ik hyperthreading (HT) uitschakelen?

De beveiligingslekken L1TF en MDS brengen het risico met zich mee dat de vertrouwelijkheid van virtuele Hyper-V-machines en de geheimen die worden onderhouden door Microsoft Virtualization Based Security (VBS) kunnen worden aangetast door het gebruik van een side-channel-aanval. Wanneer Hyper-Threading (HT) is ingeschakeld, worden de beveiligingsgrenzen van zowel Hyper-V als VBS verzwakt.

De Hyper-V Core-planner (beschikbaar vanaf Windows Server 2016 en Windows 10 versie 1607) beperkt de L1TF- en MDS-aanvalsvectoren tegen Hyper-V virtuele machines terwijl Hyper-Threading ingeschakeld blijven. Dit heeft een minimale invloed op de prestaties.

De Hyper-V Core Scheduler beperkt de L1TF- of MDS-aanvalsvectoren niet tegen met VBS beveiligde beveiligingsfuncties. De L1TF- en MDS-beveiligingslekken brengen het risico met zich mee dat de vertrouwelijkheid van VBS-geheimen kan worden aangetast via een side-channel-aanval wanneer Hyper-Threading (HT) is ingeschakeld, waardoor de beveiligingsgrens van VBS wordt verzwakt. Zelfs met dit verhoogde risico biedt VBS nog steeds waardevolle beveiligingsvoordelen en beperkt het een reeks aanvallen met HT ingeschakeld. Daarom raden we aan om VBS te blijven gebruiken op HT-systemen. Klanten die het potentiële risico van de L1TF- en MDS-beveiligingslekken op de vertrouwelijkheid van VBS willen elimineren, moeten overwegen HT uit te schakelen om dit extra risico te beperken.

Klanten die het risico willen elimineren dat de L1TF- en MDS-beveiligingslekken vormen, voor de vertrouwelijkheid van Hyper-V-versies die eerder zijn dan Windows Server 2016 of voor VBS-beveiligingsmogelijkheden, moeten de beslissing afwegen en overwegen HT uit te schakelen om het risico te beperken. In het algemeen kan deze beslissing worden gebaseerd op de volgende richtlijnen:

  • Voor Windows 10 versie 1607, Windows Server 2016 en recentere systemen die geen Hyper-V uitvoeren en geen gebruikmaken van VBS-beveiligde beveiligingsfuncties, moeten klanten HT niet uitschakelen.
  • Voor Windows 10 versie 1607, Windows Server 2016 en recentere systemen die Hyper-V uitvoeren met de Core Scheduler, maar geen gebruikmaken van VBS-beveiligde beveiligingsfuncties, mogen klanten HT niet uitschakelen.
  • Voor Windows 10 versie 1511, Windows Server 2012 R2 en eerdere systemen waarop Hyper-V wordt uitgevoerd, moeten klanten overwegen HT uit te schakelen om het risico te beperken.

De stappen die nodig zijn om HT uit te schakelen, verschillen van OEM tot OEM. Ze maken echter meestal deel uit van de BIOS- of firmware-instellings- en configuratiehulpprogramma's.

Microsoft heeft ook de mogelijkheid geïntroduceerd om Hyper-Threading technologie uit te schakelen via een software-instelling als het moeilijk of onmogelijk is om HT uit te schakelen in het BIOS of in de hulpprogramma's voor firmware-installatie en -configuratie. De softwarematige instelling voor het uitschakelen van HT is ondergeschikt aan uw BIOS- of firmware-instelling en is standaard uitgeschakeld (wat betekent dat HT uw BIOS- of firmware-instelling volgt). Zie het volgende artikel voor meer informatie over deze instelling en hoe u HT kunt uitschakelen:

4072698 Windows Server richtlijnen ter bescherming tegen speculatieve beveiligingslekken in kanalen aan de uitvoeringszijde

Het wordt aanbevolen om, indien mogelijk, HT in uw BIOS of firmware uit te schakelen voor de sterkste garantie dat HT is uitgeschakeld.

Opmerking: Het uitschakelen van hyperthreading zal het aantal CPU-kernen verminderen. Dit kan gevolgen hebben voor functies die een minimale CPU-kern vereisen om te functioneren. Bijvoorbeeld Windows Defender Application Guard (WDAG).

Beperking D

Schakel Hyper-V Core-planner in en stel het aantal VM-hardwarethreads per core in op 2

Opmerking: Deze risicobeperkende stappen zijn alleen van toepassing op versies van Windows Server 2016 en Windows 10 van vóór versie 1809. De kernplanner is standaard ingeschakeld op Windows Server 2019 en Windows 10 versie 1809.

Het gebruik van de kernplanner is een proces in twee fasen waarbij u eerst de planner moet inschakelen op de Hyper-V-host en vervolgens elke VM zodanig configureren dat deze functie optimaal gebruikt door het aantal hardwarethreads per core in te stellen op twee (2).

De Hyper-V kernplanner die is geïntroduceerd in Windows Server 2016 en Windows 10 versie 1607 is een nieuw alternatief voor de klassieke plannerlogica. De kernplanner biedt verminderde prestatievariabiliteit voor werkbelastingen in VM's die worden uitgevoerd op een Hyper-V-host met HT.

Zie het volgende artikel voor Windows IT Pro Center voor een gedetailleerde uitleg van de kernplanner van Hyper-V en de stappen om deze in te schakelen:

Hyper-V-hypervisorplanners begrijpen en gebruiken

Voer de volgende opdracht in om Hyper-V Core Scheduler in te schakelen op Windows Server 2016 of Windows 10:

bcdedit /set HypervisorSchedulerType core

Bepaal vervolgens of u het aantal hardwarethreads per core van een bepaalde VM wilt configureren op twee (2). Als u het feit blootstelt dat virtuele processors hyper-threaded zijn met een virtuele gastmachine, stelt u de planner in het VM-besturingssysteem, en ook de VM-workloads, in staat om HT te gebruiken in hun eigen werkplanning. Hiertoe voert u de volgende PowerShell-opdracht in, waarbij <VMName> de naam is van de virtuele machine:

Set-VMProcessor -VMName <VMName> -HwThreadCountPerCore 2

Beperking E

Oplossingen inschakelen voor adviezen CVE-2017-5715, CVE-2017-5754 en CVE-2019-11135

Opmerking: Deze oplossingen zijn standaard ingeschakeld op Windows Server 2019- en Windows-clientbesturingssystemen.

Als u oplossingen wilt inschakelen voor de adviezen CVE-2017-5715, CVE-2017-5754 en CVE-2019-11135, gebruikt u de richtlijnen in de volgende artikelen:

4072698 Windows Server richtlijnen ter bescherming tegen speculatieve beveiligingslekken in kanalen aan de uitvoeringszijde

4073119 Windows-clientrichtlijnen voor IT-professionals ter bescherming tegen speculatieve beveiligingslekken in kanalen aan de uitvoeringszijde

Opmerking: Deze oplossingen omvatten en schakelen automatisch de veilige beperking van de paginaframebits in voor de Windows-kernel en ook voor de oplossingen die worden beschreven in CVE-2018-3620. Zie het volgende blogartikel over beveiligingsonderzoek & defensie voor een gedetailleerde uitleg van de beperking van veilige paginaframebits:

Analyse en beperking van L1 Terminal Fault (L1TF)

Meer informatie

Leidraad voor het beperken van speculatieve beveiligingslekken in kanalen aan de uitvoeringszijde in Azure

Disclaimerinformatie van derden

De producten van derden die in dit artikel worden besproken, worden ontwikkeld door bedrijven die losstaan van Microsoft. We geven geen garantie, impliciet of anderszins, over de prestaties of betrouwbaarheid van deze producten.

We bieden contactgegevens van derden om u te helpen technische ondersteuning te vinden. Deze contactgegevens kunnen zonder voorafgaande kennisgeving worden gewijzigd. We kunnen de juistheid van deze contactgegevens van derden niet garanderen.