Усиление защиты EMET

На самом деле общесистемный масштаб имеют лишь некоторые функции EMET, а гораздо больших спектр фич применим к процессам конкретных приложений.

Для приложения можно включить следующие функции:

DEP — реализуется за счет вызова kernel32!SetProcessDEPPolicy в контексте контролируемого процесса

BottomUpASLR — в некотором роде представляет собой ASLR для выделяемых регионов памяти на стеке и в куче (по мере выделения памяти и в старших адресах)

NullPage — защита от эксплуатации MS13-031

MandatoryASLR — принудительно включает ASLR для динамически загружаемых библиотек процесса. Реализуется за счет перехвата функции ntdll!NtMapViewOfSection

HeapSpray — позволяет фиксировать попытки операций выделения большого количества участков памяти с размещением там кода эксплойта

LoadLib — отслеживание операций LoadLibrary с целью предотвращения загрузки библиотеки в память по пути UNC

MemProt — запрет изменения статуса страниц стека на executable

Caller — контроль за тем, чтобы функция была вызвана с помощью call, а не ret, что широко применяется в эксплойтах

SimExecFlow — позволяет обнаруживать ROP-гаджеты после вызова контролируемой EMET функции

StackPivot — позволяет обнаруживать ситуации перемещения регистра стека ESP на нужный для эксплойта адрес

SEHOP — отслеживает попытки эксплуатирования обработчиков SEH

EAF (Export Address Table Access Filtering) — запрещает какие-либо операции обращения к странице памяти, на которой расположена таблица экспорта модуля, кроме доступа легитимного кода

Все эти функции можно настроить в окне Mitigations графического интерфейса. Кроме того, в окне Application Configuration есть еще три дополнительных функции:

Deep Hooks — для защиты критических API EMET будет перехватывать не только сами функции, но и те функции (другие API), которые из них будут вызываться

Anti Detours — блокирует действия эксплойтов, которые пропускают первые байты API (обычно пролог) и передают управление на инструкции, следующие за ними

Banned Functions — запрещает вызов API-функций из специального списка

Каждое отдельно взятое приложение может быть несовместимо с некоторыми защитами EMET, поэтому перед его включением требуется тестирование (или гуглинг данных от тех, кто уже протестировал). Однако в административных шаблонах EMET поставляются уже готовые проверенные политики для ряда приложений.

Включаются они следующими групповыми политиками:

– Computer ConfigurationPoliciesAdministrative TemplatesWindows ComponentsEMETDefault Protections for Internet Explorer

– Computer ConfigurationPoliciesAdministrative TemplatesWindows ComponentsEMETDefault Protections for Recommended Software (включает Adobe Reader, Adobe Acrobat, Java, Microsoft Office, блокнот)

– Computer ConfigurationPoliciesAdministrative TemplatesWindows ComponentsEMETDefault Protections for Popular Software (включает Media Pleer, Skype, Lync, Windows Live, Google Talk, Chrome, Firefox, Thunderbird, Adobe Photoshop, Winamp, Opera, WinRAR, WinZip, VLC, 7-Zip, Safari, iTunes и еще немного)

Источник : https://t.me/informhardening



2018-02-02T12:33:01
Закрытие уязвимостей