Здравствуйте, уважаемые читатели блога о it, компьютерах и технологиях pingmeup.ru!
Сегодня я расскажу вам, о пожалуй, самых масштабных брешах безопасности, которые когда-либо были обнаружены со времен изобретения процессоров с архитектурой х86 и х64.
В самый разгар новогодних праздников были раскрыты детали о найденных больших аппаратных уязвимостях в процессорах Intel, ARM и AMD. Речь идет об уязвимостях, позволяющих злоумышленнику при локальном доступе к системе получить доступ на чтение данных из привилегированной памяти ядра операционной системы.
Обе уязвимости присутствуют в процессорной технологии спекулятивного исполнения команд, позволяющей современным процессорам «предугадывать команды» системы, что приводит к общему росту производительности.
Содержание
Уязвимость Meltdown
Уязвимость Meltdown (CVE-2017-5754) затрагивает только процессоры Intel и ARM. Процессоры семейства AMD не подвластны данной уязвимости.
Уязвимость Meltdown позволяет нарушить изоляцию между пользовательскими приложениями и ядром ОС. Атакующий может получить доступ к защищенным данным, обрабатывающимся ядром ОС.
Этой уязвимости подвержены почти все модели процессоров Intel, выпущенные за последние двенадцать с половиной лет. Обошли стороной эту напасть только процессоры семейства Intel Itanium и Intel Atom производства до 2013 года
Уязвимость Spectre
Уязвимость Spectre (CVE-2017-5753 и CVE-2017-5715). Данная уязвимость присутствует на процессорах Intel и процессорах с ARM-архитектурой, так и AMD.
При эксплуатации этой уязвимости из программы можно получить доступ к памяти другой программе или сервиса (завладеть паролями, персональными данными, номерами кредиток). Проевести атаку через уязвимость Spectre намного сложнее, чем через Meltdown, но и защищаться от нее сложнее.
Проверяем систему на уязвимость к Spectre и Meltdown
Недавно Microsoft выпустила Powershell модуль SpeculationControl для проверки наличия процессорной уязвимости в вашей системе. Скрипт проверяет наличие обновления прошивки BIOS/firmware а так же патча для ОС Windows.
Модуль SpeculationControl удобно устанавливать с помощью менеджера пакетов из галереи Powershell:
Save-Module -Name SpeculationControl -Path c:\tmp\SpeculationControl Install-Module -Name SpeculationControl
А так же скачать с TechNet zip-архивом.
$SaveExecutionPolicy = Get-ExecutionPolicy Set-ExecutionPolicy RemoteSigned -Scope Currentuser Import-Module .\SpeculationControl.psd1 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: False Windows OS support for branch target injection mitigation is enabled: False 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 Suggested actions * Install BIOS/firmware update provided by your device OEM that enables hardware support for the branch target injection mitigation. * Install the latest available updates for Windows with support for speculation control mitigations. * Follow the guidance for enabling Windows Client support for speculation control mitigations described in https://support.microsoft.com/help/4073119 BTIHardwarePresent : False BTIWindowsSupportPresent : False BTIWindowsSupportEnabled : False BTIDisabledBySystemPolicy : False BTIDisabledByNoHardwareSupport : False KVAShadowRequired : True KVAShadowWindowsSupportPresent : False KVAShadowWindowsSupportEnabled : False KVAShadowPcidEnabled : False
Как видно из результатов, в моем случае компьютер оказался уязвим к Meltdown (CVE-2017-5754) и Spectre (CVE-2017-5715). В системе нет патча для Windows, а так же отсутствует прошивка для BIOS.
После выполнения теста не стоит забывать возвращать политику в первоначальное состояние вот этим скриптом:
Set-ExecutionPolicy $SaveExecutionPolicy -Scope Currentuser
Обновляем прошивку компьютера
В связи с тем, что проблема уязвимости в данном случае напрямую связана с аппаратным обеспечением, то в первую очередь необходимо проверить сайт производителя вашей материнской платы, ноутбука или сервера пока что уязвимого к бреши безопасности.
Итак, заходим на официальный сайт, ищем секцию Dowloads/ Firmware Updates и проверяем на наличие обновления прошивки BIOS и firmware для вашей системы. Тут все строго индивидуально, так как производителей очень много.
Если такой прошивки на сайте производителя нет – нужно установить все обновления безопасности которые блокируют доступ к чужой памяти на уровне операционной системы.
Этим мы с вами и займемся в следующей главе статьи.
Скачиваем обновления безопасности ОС 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
- Windows 10 1511 – KB4056888
- Windows 10 1607 – KB4056890
- Windows 10 1703 – KB4056891
- Windows 10 1709 — KB4056892
- Windows 8.1 для x86 систем и для систем х64 и Windows Server 2012 R2 — KB4056898
- Windows 7 SP1 для x86 систем и для систем х64, Windows Server 2008 R2 и Windows Embedded Standard 7 — KB4056897
Если обновление безопасности не устанавливается
Антивирусы могут блокировать установку обновлений, закрывающих уязвимости Meltdown и Spectre. В таком случае в ветке реестра HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\QualityCompat найти ключ cadca5fe-87d3-4b96-b7fb-a231484277cc, и изменить его значение на 0, затем перезагрузить компьютер.
reg add “HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\QualityCompat” /v cadca5fe-87d3-4b96-b7fb-a231484277cc /t REG_DWORD /d 0 /f
После перезагрузки нужно попробовать установить обновление еще раз.
Также есть инсайдерская информация о несовместимости некоторых антивирусов с данными обновлениями, из-за того, что они тоже обращаются к памяти ядра методом, схожим с уязвимостью Meltdown.
Если обновление не устанавливается с ошибкой 0x80070643, скорее всего обновление уже было установлено автоматически, или выпытаетесь установить обновление не предназначенное для вашей операционной системы. Проверьте еще раз всё внимательно!
Снижение производительности систем после установки патчей защиты от Meltdown и Spectre
По оглашенной ранее в пресс-релизах информации данные обновления Windows уменьшают общую производительность системы на значения от 5 до 30% в зависимости от используемого процессора и программного обеспечения.
Это связано это с тем, что после успешной установки защиты от уязвимостей меняется схема работы с памятью ядра ОС Windows.
Если вы бесстрашный человек и вам нечего терять, а также в случае необходимости можно временно отключить защиту, изменив нижеприведенные ветки реестра:
reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management" /v FeatureSettingsOverride /t REG_DWORD /d 3 /f reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management" /v FeatureSettingsOverrideMask /t REG_DWORD /d 3 /f
И снова ее включить::
reg add “HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management” /v FeatureSettingsOverride /t REG_DWORD /d 0 /f reg add “HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management” /v FeatureSettingsOverrideMask /t REG_DWORD /d 3 /f
По информации от Intel, на процессорах Skylake и более новых, падение производительности незначительное.
Так же, по заверениям Intel, следующее поколение мобильных, настольных и серверных процессоров будет не будет подвержено уязвимостям Meltdown и Spectre.
На этом всё, удачной вам установки обновлений в борьбе с серьёзными уязвимостями 2018 года.
Если у вас остались вопросы – буду рад ответить на них в комментариях. Подписывайтесь на обновления блога, поделитесь записью в соцсетях и следите за новыми обзорами и статьями!