Ochrona systemu Windows przed lukami w zabezpieczeniach związanych z krachu i widma

W ubiegłym tygodniu ujawniono szczegółowe informacje na temat głównych luk w zabezpieczeniach sprzętowych wykrytych w procesorach Intel, ARM i AMD. Implementacja tych luk umożliwia atakującemu z lokalnym dostępem do systemu uzyskanie dostępu do odczytu danych z uprzywilejowanej pamięci jądra systemu. Obie wykryte luki występują w technologii procesorowej spekulatywnego wykonywania instrukcji, która pozwala nowoczesnym procesorom „przewidzieć”, które instrukcje należy wykonać w przyszłości, co prowadzi do ogólnego wzrostu wydajności systemu.

Treść

  • Zrozumienie luk w zabezpieczeniach związanych z topnieniem
  • Podstawowe informacje o luce w zabezpieczeniach widma
  • Jak sprawdzić, czy twój system jest podatny na ataki
  • Aktualizacja oprogramowania układowego
  • Aktualizacje zabezpieczeń systemu Windows w celu ochrony przed lukami Meltdown i Spectre
  • Co zrobić, jeśli łatka nie jest zainstalowana
  • Spadek wydajności systemu po zainstalowaniu aktualizacji zabezpieczeń Meltdown i Spectre

Zrozumienie luki w zabezpieczeniach związanej z topnieniem

Luka w zabezpieczeniach Rozpad (CVE-2017-5754) dotyczy tylko procesorów Intel i ARM (nie dotyczy to procesorów AMD).

Implementacja podatności Meltdown pozwala na zerwanie izolacji między aplikacjami użytkownika a jądrem systemu operacyjnego. Osoba atakująca może uzyskać dostęp do chronionych danych przetwarzanych przez jądro systemu operacyjnego. Luka ta dotyczy prawie wszystkich modeli procesorów Intel wydanych w ciągu ostatnich 13 lat (z wyjątkiem procesorów Intel Itanium i Intel Atom przed 2013 r.).

Podstawowe informacje o luce w zabezpieczeniach widma

Luka w zabezpieczeniach Spectre (CVE-2017-5753 i CVE-2017-5715) Luka ta występuje zarówno na procesorach Intel z ARM, jak i AMD. Wdrażając lukę z jednego programu, możesz uzyskać dostęp do pamięci innego programu lub usługi (kradnij hasła, dane osobowe itp.). Implementacja ataku poprzez lukę Spectre jest znacznie trudniejsza niż implementacja poprzez Meltdown, ale w związku z tym trudniej jest się przed nim bronić..

Jak sprawdzić, czy twój system jest podatny na ataki

Microsoft wydał specjalny moduł Powershell Spekulacjal w celu sprawdzenia obecności luk w procesorze w systemie (sprawdza zarówno obecność aktualizacji BIOS / oprogramowania układowego, jak i poprawki dla systemu Windows).

Moduł SpeculationControl można zainstalować za pomocą menedżera pakietów z galerii Powershell:

Save-Module -Name SpeculationControl -Path c: \ tmp \ SpeculationControl
Install-Module -Name SpeculationControl

Lub pobierz jako archiwum zip z TechNet.

$ SaveExecutionPolicy = Get-ExecutionPolicy
Set-ExecutionPolicy RemoteSigned -Scope Currentuser
Moduł importu. \ SpeculationControl.psd1
Get-SpeculationControlSettings

W moim przypadku moduł zwrócił następujące dane:

Ustawienia kontroli spekulacji dla CVE-2017-5715 [wstrzyknięcie celu docelowego]
Dostępna jest sprzętowa obsługa ograniczania wstrzykiwania docelowych oddziałów: Fałsz
Dostępna jest obsługa systemu operacyjnego Windows w zakresie ograniczania wstrzykiwania docelowych oddziałów: Fałsz
Obsługa systemu operacyjnego Windows w zakresie ograniczania wstrzykiwania docelowych oddziałów jest włączona: Fałsz
Ustawienia kontroli spekulacji dla CVE-2017-5754 [nieuczciwe ładowanie pamięci podręcznej danych]
Sprzęt wymaga cieniowania VA jądra: prawda
Obecna obsługa cienia VA jądra w systemie Windows: False
Obsługa cienia VA VA jądra jest włączona: Fałsz
Sugerowane działania
* Zainstaluj aktualizację systemu BIOS / oprogramowania układowego dostarczoną przez producenta urządzenia, która umożliwia sprzętową obsługę ograniczania wstrzyknięć docelowych oddziałów.
* Zainstaluj najnowsze dostępne aktualizacje dla systemu Windows z obsługą ograniczania kontroli spekulacji.
* Postępuj zgodnie ze wskazówkami dotyczącymi włączania obsługi klienta Windows w celu złagodzenia kontroli spekulacji opisanej w https://support.microsoft.com/help/4073119
BTIHardwarePresent: False
BTIWindowsSupportPresent: False
BTIWindowsSupportEnabled: False
BTIDisabledBySystemPolicy: False
BTIDisabledByNoHardwareSupport: False
KVAShadowRequired: True
KVAShadowWindowsSupportPresent: False
KVAShadowWindowsSupportEnabled: False
KVAShadowPcidEnabled: False

Jak widać, w tym przypadku komputer jest podatny zarówno na Meltdown (CVE-2017-5754), jak i Spectre (CVE-2017-5715). Brak aktualizacji oprogramowania sprzętowego lub poprawki dla systemu Windows.

Nie zapomnij przywrócić oryginalnej wersji polityki wykonawczej:
Set-ExecutionPolicy $ SaveExecutionPolicy -Scope Currentuser

Aktualizacja oprogramowania układowego

Ponieważ problem jest związany ze sprzętem, przede wszystkim musisz sprawdzić witrynę internetową dostawcy pod kątem aktualizacji systemu BIOS / oprogramowania układowego. Jeśli nie ma jeszcze takiego oprogramowania układowego, musisz przynajmniej zainstalować aktualizacje zabezpieczeń, które blokują dostęp do pamięci innych osób na poziomie systemu operacyjnego.

Aktualizacje zabezpieczeń systemu Windows w celu ochrony przed lukami Meltdown i Spectre

Microsoft szybko opublikował aktualizacje zabezpieczeń, które powinny chronić system operacyjny Windows przed atakami poprzez luki Meltdown i Spectre.

Wydano aktualizacje dla systemów Windows 10 i Windows 7 / Windows Server 2008 R2 (KB4056897) oraz Windows 8.1 / Windows Server 2012 R2 (KB4056898).

Aktualizacje powinny być automatycznie instalowane na komputerze za pośrednictwem usługi Windows Update / WSUS.

Aby ręcznie pobrać i zainstalować aktualizację, możesz użyć poniższych łączy do katalogu Windows Update.

  • Windows 10 1507 - KB4056893 - https://www.catalog.update.microsoft.com/Search.aspx?q=kb4056893
  • Windows 10 1511 - KB4056888 - https://www.catalog.update.microsoft.com/Search.aspx?q=kb4056888
  • Windows 10 1607 - KB4056890 - https://www.catalog.update.microsoft.com/Search.aspx?q=kb4056890
  • Windows 10 1703 - KB4056891 - https://www.catalog.update.microsoft.com/Search.aspx?q=kb4056891
  • Windows 10 1709 - KB4056892 - https://www.catalog.update.microsoft.com/Search.aspx?q=kb4056892
  • Windows 8.1 x86 / x64 i Windows Server 2012 R2 (KB4056898): https://www.catalog.update.microsoft.com/Search.aspx?q=KB4056898
  • Windows 7 SP1 x86 / x64, Windows Server 2008 R2 i Windows Embedded Standard 7 (KB4056897): https://www.catalog.update.microsoft.com/Search.aspx?q=KB4056897

Co zrobić, jeśli łatka nie jest zainstalowana

Niektóre antywirusy innych firm mogą blokować instalację aktualizacji obejmujących luki w zabezpieczeniach Meltdown i Spectre. W takim przypadku jest zalecane w gałęzi rejestru HKLM \ SOFTWARE \ Microsoft \ Windows \ CurrentVersion \ QualityCompat znajdź klucz cadca5fe-87d3-4b96-b7fb-a231484277cc, zmień jego wartość na 0 i uruchom ponownie komputer.

reg dodaj „HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Windows \ CurrentVersion \ QualityCompat” / v cadca5fe-87d3-4b96-b7fb-a231484277cc / t REG_DWORD / d 0 / f

Po ponownym uruchomieniu musisz ponownie zainstalować aktualizację.

Istnieją również informacje o niezgodności niektórych programów antywirusowych z tymi aktualizacjami, ponieważ uzyskują dostęp do pamięci jądra w sposób podobny do Meltdown.

Jeśli aktualizacja nie zostanie zainstalowana z błędem 0x80070643, upewnij się, że poprawka jest już zainstalowana lub jej wersja nie jest zgodna z wersją systemu operacyjnego.

W niektórych przypadkach po zainstalowaniu aktualizacji KB4056894 w systemie Windows 7 system ulega awarii w BSOD po ponownym uruchomieniu z błędem 0x000000c4 i przestaje się ładować. W takim przypadku pomoże jedynie odinstalowanie aktualizacji za pomocą dysku rozruchowego / odzyskiwania (podobnie jak w tym artykule).

reż d:
dism / image: d: \ /remove-package/packagename:Package_for_RollupFix~31bf3856ad364e35~amd64~~7601.24002.1.4 / norestart

Spadek wydajności systemu po zainstalowaniu aktualizacji zabezpieczeń Meltdown i Spectre

Zgodnie z dostępnymi informacjami te aktualizacje systemu Windows zmniejszają ogólną wydajność systemu o 5-30%, w zależności od wersji procesora i używanego oprogramowania. Zauważono również wzrost temperatury procesora. Wynika to z faktu, że schemat działania jądra systemu Windows z pamięcią zmienia się znacznie. Tak więc wywołania są spowalniane wraz ze zmianą poziomu uprawnień - wywołania systemowe muszą dodatkowo przełączyć się na inną tablicę stron opisującą całą pamięć jądra systemu operacyjnego

Możesz tymczasowo wyłączyć ochronę, zmieniając następujące klucze rejestru:

reg dodaj „HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Control \ Session Manager \ Memory Management” / v FeatureSettingsOverride / t REG_DWORD / d 3 / f
reg dodaj „HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Control \ Session Manager \ Memory Management” / v FeatureSettingsOverrideMask / t REG_DWORD / d 3 / f

Włącz ochronę:

reg dodaj „HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Control \ Session Manager \ Memory Management” / v FeatureSettingsOverride / t REG_DWORD / d 0 / f
reg dodaj „HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Control \ Session Manager \ Memory Management” / v FeatureSettingsOverrideMask / t REG_DWORD / d 3 / f

Według informacji firmy Intel na Skylake i nowszych procesorach spadek wydajności jest niewielki. Najwyraźniej użytkownicy serwerów chmurowych o dużym obciążeniu z dużą liczbą maszyn wirtualnych / usług odczują przede wszystkim problem spadku wydajności..