Защита на Windows от Meltdown и Spectre уязвимости

Миналата седмица бяха разкрити подробности за основните уязвимости на хардуера, открити в процесори Intel, ARM и AMD. Реализацията на тези уязвимости позволява на атакуващ с локален достъп до системата да получи достъп до четене на данни от привилегированата памет на ядрото на системата. И двете открити уязвимости присъстват в процесорната технология за спекулативно изпълнение на инструкции, което позволява на съвременните процесори да "прогнозират" кои инструкции трябва да бъдат изпълнени в бъдеще, което води до цялостно увеличаване на производителността на системата.

Съдържание:

  • Разбиране на уязвимостта
  • Основна информация за уязвимостта на спектъра
  • Как да проверите дали вашата система е уязвима
  • Актуализация на фърмуера
  • Актуализации на защитата на Windows за защита от уязвимости на Meltdown и Spectre
  • Какво да направите, ако пластирът не е инсталиран
  • Понижаване на производителността на системата след инсталиране на актуализации за сигурност на Meltdown и Spectre

Разбиране на уязвимостта

уязвимост Meltdown (CVE-2017-5754) засяга само процесори Intel и ARM (AMD процесорите не са засегнати).

Внедряването на уязвимостта на Meltdown позволява прекъсване на изолацията между потребителските приложения и ядрото на ОС. Нападателят може да получи достъп до защитени данни, обработени от ядрото на ОС. Почти всички модели процесори на Intel, пуснати през последните 13 години (с изключение на процесорите Intel Itanium и Intel Atom преди 2013 г.), са засегнати от тази уязвимост.

Основна информация за уязвимостта на спектъра

уязвимост призрак (CVE-2017-5753 и CVE-2017-5715). Тази уязвимост е налице и при процесорите на Intel с ARM и AMD. Когато реализирате уязвимост от една програма, можете да получите достъп до паметта на друга програма или услуга (крадете пароли, лични данни и т.н.). Реализирането на атака чрез уязвимостта на Spectre е много по-трудно, отколкото реализирането чрез Meltdown, но, съответно, е по-трудно да се защити срещу нея..

Как да проверите дали вашата система е уязвима

Microsoft пусна специален модул Powershell SpeculationControл да тествате за наличие на уязвимости на процесора във вашата система (проверява както наличието на актуализация на BIOS / фърмуер, така и кръпка за Windows).

Модулът SpeculationControl може да бъде инсталиран чрез мениджъра на пакети от галерията на Powershell:

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

Или изтеглете като zip архив от TechNet.

$ SaveExecutionPolicy = Get-ExecutionPolicy
Set-ExecutionPolicy RemoteSigned -Scope Currentuser
Импорт-модул. \ SpeculationControl.psd1
Get-SpeculationControlSettings

В моя случай модулът върна следните данни:

Настройки за контрол на спекулацията за CVE-2017-5715 [инжектиране на целеви клон]
Налице е хардуерна поддръжка за намаляване на сместа за инжектиране на клон: Невярно
Налице е поддръжка на Windows OS за смекчаване на инжекционното насочване: Неправилно
Поддръжката на Windows OS за смекчаване на насочването на инжектиране на клонове е активирана: Грешно
Настройки за контрол на спекулацията за CVE-2017-5754 [измамно зареждане на кеш на данни]
Хардуерът изисква VA засенчване на ядрото: True
Поддръжката на Windows OS за VA сянка на ядрото е налице: False
Поддръжката на Windows OS за VA сянка на ядрото е активирана: False
Предложени действия
* Инсталирайте актуализация на BIOS / фърмуер, осигурена от OEM на вашето устройство, която позволява хардуерна поддръжка за намаляване на инжектирането на клона.
* Инсталирайте последните налични актуализации за Windows с поддръжка за ограничаване на контрола на спекулациите.
* Следвайте указанията за разрешаване на поддръжката на Windows Client за ограничаване на контрола на спекулациите, описани в https://support.microsoft.com/help/4073119
BTIHardwarePresent: Неверни
BTIWindowsSupportPresent: Неверно
BTIWindowsSupportEnabled: Неверно
BTIDisabledBySystemPolicy: Грешно
BTIDisabledByNoHardwareSupport: Грешно
KVAShadowRequired: Вярно
KVAShadowWindowsSupportPresent: Неверно
KVAShadowWindowsSupportEnabled: Грешно
KVAShadowPcidEnabled: Грешно

Както можете да видите, в този случай компютърът е уязвим както за Meltdown (CVE-2017-5754), така и за Spectre (CVE-2017-5715). Няма актуализация на хардуерния фърмуер или пластир за Windows.

Не забравяйте да върнете правилата за изпълнение в оригиналния си:
Set-ExecutionPolicy $ SaveExecutionPolicy -Scope Currentuser

Актуализация на фърмуера

защото проблемът е свързан с хардуера, първо трябва да проверите уебсайта на вашия доставчик за актуализация на BIOS / фърмуер за вашата система. Ако все още няма такъв фърмуер, трябва поне да инсталирате актуализации за сигурност, които блокират достъпа до паметта на други хора на ниво ОС.

Актуализации на защитата на Windows за защита от уязвимости на Meltdown и Spectre

Microsoft бързо публикува актуализации за сигурност, които трябва да предпазват операционната система Windows от внедряване на атаки чрез уязвимости Meltdown и Spectre.

Бяха пуснати актуализации както за Windows 10, така и за Windows 7 / Windows Server 2008 R2 (KB4056897) и Windows 8.1 / Windows Server 2012 R2 (KB4056898).

Актуализациите трябва да се инсталират автоматично на компютъра чрез Windows Update / WSUS.

За да изтеглите и инсталирате ръчно актуализацията, можете да използвате следните връзки към каталога на 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 и Windows Server 2012 R2 (KB4056898): https://www.catalog.update.microsoft.com/Search.aspx?q=KB4056898
  • Windows 7 SP1 x86 / x64, Windows Server 2008 R2 и Windows Embedded Standard 7 (KB4056897): https://www.catalog.update.microsoft.com/Search.aspx?q=KB4056897

Какво да направите, ако пластирът не е инсталиран

Някои антивируси на трети страни могат да блокират инсталирането на актуализации, покриващи уязвимостите на Meltdown и Spectre. В този случай се препоръчва в клона на системния регистър HKLM \ SOFTWARE \ Microsoft \ Windows \ CurrentVersion \ QualityCompat намерете ключа cadca5fe-87d3-4b96-b7fb-a231484277cc, променете стойността си на 0 и рестартирайте компютъра си.

reg добавете „HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Windows \ CurrentVersion \ QualityCompat" / v cadca5fe-87d3-4b96-b7fb-a231484277cc / t REG_DWORD / d 0 / f

След рестартиране трябва да опитате да инсталирате актуализацията отново.

Има и информация за несъвместимостта на някои антивирусни вируси с тези актуализации, защото те имат достъп до паметта на ядрото по начин, подобен на Meltdown.

Ако актуализацията не се инсталира с грешка 0x80070643, проверете дали пачът вече е инсталиран или версията на пластира не съвпада с версията на ОС.

В някои случаи, когато инсталирате актуализация KB4056894 на Windows 7, системата се срива в BSOD след рестартиране с грешка 0x000000c4 и спира зареждането. В този случай ще помогне само деинсталирането на актуализацията през диска за зареждане / възстановяване (подобно на тази статия).

реж. г:
dism / image: d: \ /remove-package/packagename:Package_for_RollupFix~31bf3856ad364e35~amd64~~7601.24002.1.4 / norestart

Понижаване на производителността на системата след инсталиране на актуализации за сигурност на Meltdown и Spectre

Според наличната информация, тези актуализации на Windows намаляват общата производителност на системата с 5-30%, в зависимост от версията на процесора и използвания софтуер. Отбелязва се и повишаване на температурата на процесора. Това се дължи на факта, че работната схема на ядрото на Windows с памет се променя значително. Така обажданията се забавят с промяна в нивото на привилегии - системните обаждания трябва допълнително да преминат към друга таблица на страниците, която описва цялата памет на ядрото на ОС

Можете временно да деактивирате защитата, като промените следните ключове в системния регистър:

reg добави "HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Control \ Session Manager \ Управление на паметта" / v FeatureSettingsOverride / t REG_DWORD / d 3 / f
reg добави "HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Control \ Session Manager \ Управление на паметта" / v FeatureSettingsOverrideMask / t REG_DWORD / d 3 / f

Активиране на защитата:

reg добави „HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Control \ Session Manager \ Управление на паметта" / v FeatureSettingsOverride / t REG_DWORD / d 0 / f
reg добави „HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Control \ Session Manager \ Управление на паметта" / v FeatureSettingsOverrideMask / t REG_DWORD / d 3 / f

Според информация на Intel, при Skylake и по-новите процесори спадът на производителността е незначителен. Очевидно потребителите на облачни сървъри с високо натоварване с висока плътност на виртуални машини / услуги най-вече ще почувстват проблема с намаляването на производителността..