Настройка защиты от эксплойтов Защитника Windows в Windows 10
- Категория: Windows
Защита от эксплойтов - это новая функция безопасности Защитника Windows, которую Microsoft представила в Fall Creators Update для операционной системы.
Exploit Guard это набор функций, который включает защиту от эксплойтов, уменьшение поверхности атаки , защита сети и контролируемый доступ к папке ,
Защиту от эксплойтов лучше всего описать как интегрированную версию Microsoft EMET - Exploit Mitigation Experience Toolkit - инструмента безопасности, который компания выйдет на пенсию в середине 2018 года ,
Microsoft ранее заявляла, что операционная система Windows 10 компании сделает ненужным запуск EMET вместе с Windows ; Однако по крайней мере один исследователь опроверг утверждение Microsoft.
Защита от эксплойтов в Защитнике Windows
Защита от эксплойтов включена по умолчанию, если включен Защитник Windows. Эта функция - единственная функция Exploit Guard, которая не требует включения защиты в реальном времени в Защитнике Windows.
Эту функцию можно настроить в приложении Центра безопасности Защитника Windows, с помощью команд PowerShell или в виде политик.
Конфигурация в приложении Центр безопасности Защитника Windows
Вы можете настроить защиту от эксплойтов в приложении Центра безопасности Защитника Windows.
- Используйте Windows-I, чтобы открыть приложение «Настройки».
- Перейдите в Обновление и безопасность> Защитник Windows.
- Выберите Открыть центр безопасности Защитника Windows.
- В открывшемся новом окне выберите Управление приложением и браузером, указанное в виде ссылки на боковой панели.
- Найдите на странице запись о защите от эксплойтов и нажмите «Настройки защиты от эксплойтов».
Настройки разделены на системные настройки и настройки программы.
В системных настройках перечислены доступные механизмы защиты и их состояние. В Windows 10 Fall Creators Update доступно следующее:
- Control Flow Guard (CFG) - по умолчанию включен.
- Предотвращение выполнения данных (DEP) - по умолчанию включено.
- Принудительная рандомизация изображений (Обязательный ASLR) - по умолчанию отключено.
- Произвести случайное распределение памяти (ASLR снизу вверх) - по умолчанию включено.
- Проверять цепочки исключений (SEHOP) - по умолчанию включено.
- Проверять целостность кучи - по умолчанию включено.
Вы можете изменить статус любого параметра на «включено по умолчанию», «выключено по умолчанию» или «использовать по умолчанию».
Параметры программы позволяют настроить защиту отдельных программ и приложений. Это работает аналогично тому, как вы можете добавлять исключения в Microsoft EMET для определенных программ; хорошо, если программа плохо себя ведет при включении определенных защитных модулей.
Во многих программах по умолчанию есть исключения. Сюда входят svchost.exe, spools.exe, runtimebroker.exe, iexplore.exe и другие основные программы Windows. Обратите внимание, что вы можете переопределить эти исключения, выбрав файлы и нажав кнопку «Изменить».
Щелкните «Добавить программу для настройки», чтобы добавить программу по имени или точному пути к файлу в список исключений.
Вы можете установить статус всех поддерживаемых защит индивидуально для каждой программы, которую вы добавили в настройках программы. Помимо переопределения системного значения по умолчанию и принудительного включения или отключения его, есть также возможность установить для него значение «только аудит». Последний записывает события, которые сработали бы, если бы состояние защиты было включено, но будет записывать только событие в журнал событий Windows.
В параметрах программы перечислены дополнительные параметры защиты, которые нельзя настроить в параметрах системы, поскольку они настроены для работы только на уровне приложения.
Эти:
- Защита от произвольного кода (ACG)
- Удалять изображения с низким уровнем целостности
- Блокировать удаленные изображения
- Блокировать ненадежные шрифты
- Защита целостности кода
- Отключить точки расширения
- Отключить системные вызовы Win32
- Не разрешать дочерние процессы
- Фильтрация адресов экспорта (EAF)
- Фильтрация адресов импорта (IAF)
- Имитация выполнения (SimExec)
- Проверить вызов API (CallerCheck)
- Проверить использование дескриптора
- Проверить интеграцию зависимостей изображений
- Проверить целостность стека (StackPivot)
Настройка защиты от эксплойтов с помощью PowerShell
Вы можете использовать PowerShell для установки, удаления или перечисления средств защиты. Доступны следующие команды:
Чтобы перечислить все меры защиты указанного процесса: Get-ProcessMitigation -Name processName.exe
Чтобы установить меры по снижению рисков: Set-ProcessMitigation - - ,,
- Область действия: либо -System, либо -Name.
- Действие: либо -Enable, либо -Disable.
- Смягчение: название смягчения. См. Следующую таблицу. Вы можете разделить смягчения запятой.
Примеры:
- Set-Processmitigation -System -Enable DEP
- Set-Processmitigation -Name test.exe -Remove -Disable DEP
- Set-ProcessMitigation -Name processName.exe -Enable EnableExportAddressFilterPlus -EAFModules dllName1.dll, dllName2.dll
смягчение | Относится к | Командлеты PowerShell | Командлет режима аудита |
---|---|---|---|
Защита потока управления (CFG) | Уровень системы и приложения | CFG, StrictCFG, SuppressExports | Аудит недоступен |
Предотвращение выполнения данных (DEP) | Уровень системы и приложения | DEP, EmulateAtlThunks | Аудит недоступен |
Принудительная рандомизация для изображений (обязательный ASLR) | Уровень системы и приложения | ForceRelocate | Аудит недоступен |
Произвести случайное распределение памяти (ASLR снизу вверх) | Уровень системы и приложения | BottomUp, HighEntropy | Аудит недоступен |
Проверить цепочки исключений (SEHOP) | Уровень системы и приложения | SEHOP, SEHOPТелеметрия | Аудит недоступен |
Проверить целостность кучи | Уровень системы и приложения | TerminateOnHeapError | Аудит недоступен |
Защита от произвольного кода (ACG) | Только на уровне приложения | DynamicCode | AuditDynamicCode |
Блокировать изображения с низким уровнем целостности | Только на уровне приложения | BlockLowLabel | AuditImageLoad |
Блокировать удаленные изображения | Только на уровне приложения | BlockRemoteImages | Аудит недоступен |
Блокировать ненадежные шрифты | Только на уровне приложения | DisableNonSystemFonts | AuditFont, FontAuditOnly |
Защита целостности кода | Только на уровне приложения | BlockNonMicrosoftSigned, AllowStoreSigned | AuditMicrosoftSigned, AuditStoreSigned |
Отключить точки расширения | Только на уровне приложения | ExtensionPoint | Аудит недоступен |
Отключить системные вызовы Win32k | Только на уровне приложения | DisableWin32kSystemCalls | AuditSystemCall |
Не разрешать дочерние процессы | Только на уровне приложения | DisallowChildProcessCreation | AuditChildProcess |
Фильтрация адресов экспорта (EAF) | Только на уровне приложения | EnableExportAddressFilterPlus, EnableExportAddressFilter [один] | Аудит недоступен |
Фильтрация адресов импорта (IAF) | Только на уровне приложения | EnableImportAddressFilter | Аудит недоступен |
Имитация выполнения (SimExec) | Только на уровне приложения | EnableRopSimExec | Аудит недоступен |
Проверить вызов API (CallerCheck) | Только на уровне приложения | EnableRopCallerCheck | Аудит недоступен |
Проверить использование дескриптора | Только на уровне приложения | StrictHandle | Аудит недоступен |
Проверка целостности зависимости изображения | Только на уровне приложения | EnforceModuleDepencySigning | Аудит недоступен |
Проверить целостность стека (StackPivot) | Только на уровне приложения | EnableRopStackPivot | Аудит недоступен |
Импорт и экспорт конфигураций
Конфигурации можно импортировать и экспортировать. Это можно сделать с помощью параметров защиты от эксплойтов Защитника Windows в Центре безопасности Защитника Windows, с помощью PowerShell, с помощью политик.
Кроме того, конфигурации EMET можно преобразовать так, чтобы их можно было импортировать.
Использование настроек защиты от эксплойтов
Вы можете экспортировать конфигурации в приложении настроек, но не импортировать их. При экспорте добавляются все меры по снижению рисков на уровне системы и приложения.
Для этого просто нажмите ссылку «Параметры экспорта» под защитой от эксплойтов.
Использование PowerShell для экспорта файла конфигурации
- Откройте командную строку Powershell с повышенными привилегиями.
- Get-ProcessMitigation -RegistryConfigFilePath filename.xml
Отредактируйте filename.xml так, чтобы он отражал место сохранения и имя файла.
Использование PowerShell для импорта файла конфигурации
- Откройте командную строку Powershell с повышенными привилегиями.
- Выполните следующую команду: Set-ProcessMitigation -PolicyFilePath filename.xml
Измените filename.xml так, чтобы он указывал на расположение и имя файла конфигурации XML-файла.
Использование групповой политики для установки файла конфигурации
Вы можете установить файлы конфигурации с помощью политик.
- Нажмите клавишу Windows, введите gpedit.msc и нажмите клавишу Enter, чтобы запустить редактор групповой политики.
- Перейдите к Конфигурация компьютера> Административные шаблоны> Компоненты Windows> Exploit Guard в Защитнике Windows> Защита от эксплойтов.
- Дважды щелкните «Использовать набор команд для настройки защиты от эксплойтов».
- Установите для политики значение включено.
- Добавьте путь и имя файла XML-файла конфигурации в поле параметров.
Преобразование файла EMET
- Откройте командную строку PowerShell с повышенными привилегиями, как описано выше.
- Выполните команду ConvertTo-ProcessMitigationPolicy -EMETFilePath emetFile.xml -OutputFilePath filename.xml
Измените emetFile.xml на путь и расположение файла конфигурации EMET.
Измените filename.xml на путь и расположение, в котором вы хотите сохранить преобразованный файл конфигурации.