Этой осенью Windows 10 обновилась до версии 1709 с кодовым названием Fall Creators Update или Redstone 3. Среди множества изменений нас прежде всего заинтересовала улучшенная защита от неизвестных зловредов. В Microsoft приняли ряд мер для противодействия троянам-шифровальщикам и эксплоитам. Насколько же они оказались успешны?
 

Старый новый защитник

Все новое — это хорошо ребрендированное старое. В «осеннем обновлении для дизайнеров» встроенные компоненты защиты объединили в «Центре безопасности Защитника Windows». Даже программный файрвол стал называться «Брандмауэр Защитника Windows», но эти изменения — чисто косметические. Более существенные касаются новых функций, которые мы подробнее рассмотрим ниже.

Еще один старый-новый компонент, появившийся в Redstone 3, называется «Защита от эксплоитов». Windows Defender Exploit Guard, или просто EG, включается через «Центр безопасности Защитника Windows» в разделе «Управление приложениями и браузером».

Технически Exploit Guard — это бывшая служебная программа Enhanced Mitigation Experience Toolkit со слегка выросшим набором функций и новым интерфейсом. EMET появилась еще во времена Windows Vista, теперь же ее поддержка прекращена, а Exploit Guard занял ее место. Он относится к средствам продвинутой защиты от угроз (Advanced Threat Protection), наряду с менеджером подключаемых устройств Device Guard и защитником приложений Application Guard. Злые языки поговаривают, что в Microsoft изначально хотели представить общий компонент Advanced System Security Guard, но аббревиатура вышла совсем неблагозвучной.

 

Защита от эксплоитов

Exploit Guard — это всего лишь инструмент снижения риска, он не избавляет от необходимости закрывать уязвимости в софте, но затрудняет их использование. В целом принцип работы Exploit Guard состоит в том, чтобы запрещать те операции, которые чаще всего используются зловредами.

Проблема в том, что многие легитимные программы тоже их используют. Более того, есть старые программы (а точнее, динамические библиотеки), которые просто перестанут работать, если задействовать в Windows новые функции контроля памяти и прочие современные средства защиты.

Поэтому настройка Exploit Guard — это такие же вилы, какими ранее было использование EMET. На моей памяти многие администраторы месяцами вникали в тонкости настроек, а затем просто прекращали использовать ограничительные функции из-за многочисленных жалоб пользователей.

Если же безопасность превыше всего и требуется закрутить гайки потуже, то самыми востребованными функциями Exploit Guard были (со времен EMET) и остаются:

  • DEP (Data Execution Prevention) — предотвращение выполнения данных. Не позволяет запустить на исполнение фрагмент кода, оказавшийся в не предназначенной для этого области памяти (например, в результате ошибки переполнения стека);
  • случайное перераспределение памяти — предотвращает атаку по известным адресам;
  • отключение точек расширения — препятствует внедрению DLL в запускаемые процессы (см. статью про обход UAC, где этот метод широко использовался);
  • команда DisallowChildProcessCreation — запрещает указанному приложению создавать дочерние процессы;
  • фильтрация таблиц адресов импорта (IAF) и экспорта (EAF) — не позволяет (вредоносному) процессу выполнять перебор таблиц адресов и обращаться к странице памяти системных библиотек;
  • CallerCheck — проверяет наличие прав на вызов конфиденциальных API;
  • SimExec — имитация выполнения. Проверяет перед реальным исполнением кода, кому вернутся вызовы конфиденциальных API.

Команды могут быть переданы через PowerShell. Например, запрет создавать дочерние процессы выглядит так:

Set-ProcessMitigation -Name исполняемый_файл.exe
  -Enable DisallowChildProcessCreation

Все x86-процессоры и чипсеты последних десяти лет выпуска поддерживают DEP на аппаратном уровне, а для совсем старых доступна программная реализация этой функции. Однако ради совместимости новых версий Windows со старым софтом Microsoft до сих пор рекомендует включать DEP в режиме «только для системных процессов». По той же причине была оставлена возможность отключать DEP для любого процесса. Все это успешно используется в техниках обхода системы предотвращения выполнения данных.

Поэтому смысл от использования Exploit Guard будет только в том случае, если есть возможность задействовать сразу несколько защитных функций, не вызывая сбой хотя бы в работе основных приложений. На практике это редко удается. Вот пример профиля EG, конвертированного из EMET, который вообще вызывает сваливание Windows 10 в BSoD. Когда-то в «Хакере» была рубрика «Западлостроение», и Exploit Guard бы в нее отлично вписался.

Продолжение статьи доступно только подписчикам

Вариант 1. Оформи подписку на «Хакер», чтобы читать все статьи на сайте

Подписка позволит тебе в течение указанного срока читать ВСЕ платные материалы сайта, включая эту статью. Мы принимаем оплату банковскими картами, электронными деньгами и переводами со счетов мобильных операторов. Подробнее о подписке

Вариант 2. Купи одну статью

Заинтересовала статья, но нет возможности оплатить подписку? Тогда этот вариант для тебя! Обрати внимание: этот способ покупки доступен только для статей, опубликованных более двух месяцев назад.


Оставить мнение

Check Also

Десятка быстрых. Выбираем консольный софт для повседневных нужд

И вновь на страницах нашего журнала рубрика «Кто самый большой гик на планете». В этот раз…