SamForum.org  
SamLab.ws
Заблокированные пользователи

Вернуться   SamForum.org > Программы > Бесплатные / Freeware > Безопасность
Важная информация

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
Enhanced Mitigation Experience Toolkit (EMET)
Старый Добавлено: 26.12.2010, 18:11
  (#1)
SAlexB
И правил богами Энлиль...
Заслуженный пользователь
 
Аватар для SAlexB

По умолчанию Enhanced Mitigation Experience Toolkit (EMET)


Enhanced Mitigation Experience Toolkit (EMET) использует превентивные методы по блокированию различных действий эксплойтов для защиты приложений от атак, которые имеют целью эксплуатирование flaws (или уязвимостей) в ПО и изменение потока выполнения кода.

[Ссылки могут видеть только зарегистрированные пользователи. ]

Подробно об используемых технологиях

Важно знать

Enhanced Mitigation Experience Toolkit (EMET) 5.52
[Ссылки могут видеть только зарегистрированные пользователи. ]
User's Guide
[Ссылки могут видеть только зарегистрированные пользователи. ]

Последний раз редактировалось altaivital; 07.01.2017 в 16:48.. Причина: 5.52
SAlexB вне форума Отправить личное сообщение для SAlexB
Вверх
Ответить с цитированием
Эти 5 пользователя(ей) сказали cпасибо за это полезное сообщение:
ED_Sln (26.12.2010), IvGrad (28.12.2010), SamLab (26.12.2010), zzkk (26.12.2010), _schaytan_ (06.01.2011)
Старый Добавлено: 26.12.2010, 22:33
  (#2)
svoit
Старожил
Пользователь
 
Аватар для svoit

По умолчанию

Цитата:
Сообщение от SAlexB Посмотреть сообщение
Добавляем в нее какое нибудь кривое приложение

то есть drag and drop (перетаскивание) оно не поддерживает?
svoit вне форума Отправить личное сообщение для svoit
Вверх
Ответить с цитированием
Старый Добавлено: 26.12.2010, 23:18
  (#3)
SAlexB
И правил богами Энлиль...
Заслуженный пользователь
 
Аватар для SAlexB

По умолчанию

svoit,
Перетаскивания нет, но можно накликать мышкой так
[Ссылки могут видеть только зарегистрированные пользователи. ]


SAlexB вне форума Отправить личное сообщение для SAlexB
Вверх
Ответить с цитированием
Старый Добавлено: 27.12.2010, 22:54
  (#4)
ED_Sln
♫МелоMan♫
Модератор
 
Аватар для ED_Sln

По умолчанию

А как он действует на выбранные программы? Ни в автозапуске, ни в службах, ни даже системных драйверах я его не нашел.


Человек прошел сложную эволюцию - от DOS'a к 7! А дальше - все смутно.
ED_Sln вне форума Отправить личное сообщение для ED_Sln
Вверх
Ответить с цитированием
Старый Добавлено: 28.12.2010, 20:16
  (#5)
zzkk
•°•°•°•°•°•°•°
Пользователь
 
Аватар для zzkk

По умолчанию

Цитата:
Сообщение от ED_Sln Посмотреть сообщение
А как он действует на выбранные программы?

[Ссылки могут видеть только зарегистрированные пользователи. ]
Еще [Ссылки могут видеть только зарегистрированные пользователи. ] и [Ссылки могут видеть только зарегистрированные пользователи. ]

А, вообще говоря, с программой поставился хэлп на английском. В нем вся полезная инфа.

Добавлено через 54 минуты
Замечания:
  • Не весь софт поддерживает DEP. У меня с DEP "Always On" не запустился Anvir Task Manager.
  • ASLR не нужно включать в “Always On” для системных настроек. Можно получить синий экран смерти - придется загружаться в безопасном режиме и переключать настройку на “Opt In” или “Disabled”.

Добавлено через 1 час 6 минут
Для моей Win 7 x64 получилось примерно следующее:



Для системы:
  • DEP - не "always" чтобы AnVir Tasl Manager был работоспособен.
  • SEHOP - "Application Opt out" потому что для приложений не работает на х64 ОС (хотя не совсем уверен в правильности выбора этого пункта).

Для приложений:
  • SEHOP снят потому что не работает для приложений на х64 ОС.
  • EAF снят потому что не поддерживается для приложений на х64 ОС.


.

.
•°•°•°•°•°•°•°:
ВЕЛИКАЯ БОРЬБА между добром и злом - http://samforum.org/showpost.php?p=982169&postcount=1

twitter.com/SDAblog

Последний раз редактировалось zzkk; 28.12.2010 в 19:00..
zzkk вне форума Отправить личное сообщение для zzkk
Вверх
Ответить с цитированием
Эти 2 пользователя(ей) сказали cпасибо за это полезное сообщение:
ED_Sln (28.12.2010), IvGrad (28.12.2010)
Старый Добавлено: 28.12.2010, 21:17
  (#6)
SAlexB
И правил богами Энлиль...
Заслуженный пользователь
 
Аватар для SAlexB

По умолчанию

ED_Sln,
Собственно эта программа не содержит DEP и прочего, она лишь принудительно активирует их для заданных приложений. Полезной инфы по программе за исключением хелпа и пары статей на технете увы нет. Тут есть интересная инфа
[Ссылки могут видеть только зарегистрированные пользователи. ]
По моему мнению она полезна для pdf читалок и браузера. Загонять туда всякие плееры и блокноты наверное не стоит


SAlexB вне форума Отправить личное сообщение для SAlexB
Вверх
Ответить с цитированием
Эти 3 пользователя(ей) сказали cпасибо за это полезное сообщение:
ED_Sln (28.12.2010), IvGrad (28.12.2010), zzkk (28.12.2010)
Старый Добавлено: 29.12.2010, 17:21
  (#7)
zzkk
•°•°•°•°•°•°•°
Пользователь
 
Аватар для zzkk

По умолчанию

Думаю, какой-бы файлик добавить, чтобы повысить безопасность Adobe Flash...


.

.
•°•°•°•°•°•°•°:
ВЕЛИКАЯ БОРЬБА между добром и злом - http://samforum.org/showpost.php?p=982169&postcount=1

twitter.com/SDAblog
zzkk вне форума Отправить личное сообщение для zzkk
Вверх
Ответить с цитированием
Старый Добавлено: 30.12.2010, 19:34
  (#8)
SAlexB
И правил богами Энлиль...
Заслуженный пользователь
 
Аватар для SAlexB

По умолчанию

zzkk,
Интересно, абстрактно я бы посмотрел сюда C:\Windows\SysWOW64\Macromed\Flash
но эту тему не копал...


SAlexB вне форума Отправить личное сообщение для SAlexB
Вверх
Ответить с цитированием
Этот пользователь сказал cпасибо за это полезное сообщение:
zzkk (30.12.2010)
Старый Добавлено: 30.12.2010, 20:29
  (#9)
zzkk
•°•°•°•°•°•°•°
Пользователь
 
Аватар для zzkk

По умолчанию

Цитата:
Сообщение от SAlexB Посмотреть сообщение
Интересно, абстрактно я бы посмотрел сюда C:\Windows\SysWOW64\Macromed\Flash
но эту тему не копал...

Ну отлично, тогда FlashUtil10l_ActiveX.exe и FlashUtil10l_Plugin.exe

Комментарий модератора
SAlexB:
В этой части совсем не уверен (


.

.
•°•°•°•°•°•°•°:
ВЕЛИКАЯ БОРЬБА между добром и злом - http://samforum.org/showpost.php?p=982169&postcount=1

twitter.com/SDAblog

Последний раз редактировалось SAlexB; 30.12.2010 в 23:00..
zzkk вне форума Отправить личное сообщение для zzkk
Вверх
Ответить с цитированием
Старый Добавлено: 31.12.2010, 14:18
  (#10)
zzkk
•°•°•°•°•°•°•°
Пользователь
 
Аватар для zzkk

По умолчанию

Цитата:
Сообщение от SAlexB Посмотреть сообщение
В этой части совсем не уверен (

Согласен. Эти пара файлов в свойствах откомментированы как инсталлер/анинстраллер. Собственно, при вызове указанные функции и предлагают.

Цитата:
Сообщение от SAlexB Посмотреть сообщение
эту тему не копал...

Копнул. Интересную (и единственную) инфу нашел в [Ссылки могут видеть только зарегистрированные пользователи. ] статье.

Цитата:
On a Windows system that has Adobe Flash installed for Internet Explorer, Flash will run as an ActiveX control and will not appear as a separate standalone executable process. Although there are files named FlashUtil10k_ActiveX.exe and FlashUtil10k_Plugin.exe within C:\WINDOWS\system32\Macromed\Flash\, these are not the processes that render Flash content. If you right-click on either file (which have the exact same byte length -- at least for the 10.1.85.3 version) and view their properties, you will see that they are the uninstaller (you can find the same type of information if you do a string search on the binaries), and double-clicking on either will produce a pop-up prompting you whether you wish to uninstall Flash. Doing so will uninstall Flash for both Firefox and Internet Explorer.

When Flash is installed within Firefox versions 3.6.4 and above, Flash will be offloaded to plugin-container.

This can be seen below. In this example both Internet Explorer and Firefox have Adobe Flash installed and are both visiting the Flash test page at [Ссылки могут видеть только зарегистрированные пользователи. ]. For Internet Explorer, accessing Flash content will cause Flash10k.ocx to appear within the iexplore.exe process, and for Firefox doing the same will cause plugin-container.exe to appear with Adobe Flash library NPSWF32.dll within it. No Flash*.exe processes appear anywhere.

Список приложений, рекомендованных к добавлению:
CLASS I
-------
Adobe Reader 9.x C:\Program Files\Adobe\Reader 9.0\Reader\AcroRd32.exe
Internet Explorer C:\Program Files\Internet Explorer\iexplore.exe
Firefox C:\Program Files\Mozilla Firefox\firefox.exe
Firefox container C:\Program Files\Mozilla Firefox\plugin-container.exe
MS Access 2003 C:\Program Files\Microsoft Office\OFFICE11\MSACCESS.EXE
MS Excel 2003 C:\Program Files\Microsoft Office\OFFICE11\EXCEL.EXE
MS Outlook 2003 C:\Program Files\Microsoft Office\OFFICE11\OUTLOOK.EXE
MS PowerPoint 2003 C:\Program Files\Microsoft Office\OFFICE11\POWERPNT.EXE
MS PowerPoint 2003 Viewer C:\Program Files\Microsoft Office\OFFICE11\PPTVIEW.EXE
MS Word 2003 C:\Program Files\Microsoft Office\OFFICE11\WINWORD.EXE
MS Access 2007 C:\Program Files\Microsoft Office\OFFICE12\MSACCESS.EXE
MS Excel 2007 C:\Program Files\Microsoft Office\OFFICE12\EXCEL.EXE
MS Outlook 2007 C:\Program Files\Microsoft Office\OFFICE12\OUTLOOK.EXE
MS PowerPoint 2007 C:\Program Files\Microsoft Office\OFFICE12\POWERPNT.EXE
MS PowerPoint 2007 Viewer C:\Program Files\Microsoft Office\OFFICE12\PPTVIEW.EXE
MS Word 2007 C:\Program Files\Microsoft Office\OFFICE12\WINWORD.EXE
MS Wordpad C:\Program Files\Windows NT\Accessories\wordpad.exe
Sun Java JRE SE 6 C:\Program Files\Java\jre6\bin\java.exe
Sun Java JRE SE 6 C:\WINDOWS\system32\java.exe
Windows Media Player C:\Program Files\Windows Media Player\wmplayer.exe
Windows Print Spooler C:\WINDOWS\system32\spoolsv.exe
Windows LSASS C:\WINDOWS\system32\lsass.exe


CLASS II
--------
VLC Media Player C:\Program Files\VideoLAN\VLC\vlc.exe
Winamp C:\Program Files\Winamp\winamp.exe
Apple QuickTime Player C:\Program Files\QuickTime\QuickTimePlayer.exe
Apple iTunes C:\Program Files\iTunes\iTunes.exe
Windows Live Messenger C:\Program Files\Windows Live\Messenger\msnmsgr.exe
OpenOffice.org C:\Program Files\OpenOffice.org 3\program\soffice.exe
OpenOffice.org Base C:\Program Files\OpenOffice.org 3\program\sbase.exe
OpenOffice.org Calc C:\Program Files\OpenOffice.org 3\program\scalc.exe
OpenOffice.org Draw C:\Program Files\OpenOffice.org 3\program\sdraw.exe
OpenOffice.org Impress C:\Program Files\OpenOffice.org 3\program\simpress.exe
OpenOffice.org Math C:\Program Files\OpenOffice.org 3\program\smath.exe
OpenOffice.org Writer C:\Program Files\OpenOffice.org 3\program\swriter.exe
Skype1 C:\Program Files\Skype\Phone\Skype.exe

1 You may need to disable EAF protection for skype.exe in EMET.


.

.
•°•°•°•°•°•°•°:
ВЕЛИКАЯ БОРЬБА между добром и злом - http://samforum.org/showpost.php?p=982169&postcount=1

twitter.com/SDAblog
zzkk вне форума Отправить личное сообщение для zzkk
Вверх
Ответить с цитированием
Эти 2 пользователя(ей) сказали cпасибо за это полезное сообщение:
IvGrad (31.12.2010), SAlexB (31.12.2010)
Старый Добавлено: 31.12.2010, 16:56
  (#11)
SAlexB
И правил богами Энлиль...
Заслуженный пользователь
 
Аватар для SAlexB

По умолчанию

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

/upd
Из статьи перенес рекомендации к защите приложений в шапку, так как по моему они вполне разумны.



Последний раз редактировалось SAlexB; 31.12.2010 в 17:01.. Причина: upd
SAlexB вне форума Отправить личное сообщение для SAlexB
Вверх
Ответить с цитированием
Этот пользователь сказал cпасибо за это полезное сообщение:
zzkk (31.12.2010)
Старый Добавлено: 28.02.2011, 08:44
  (#12)
zzkk
•°•°•°•°•°•°•°
Пользователь
 
Аватар для zzkk

По умолчанию

Пересмотрел свою политику из #5 поста.

Для системы:
SEHOP - "Application Opt In".

Для приложений:
Вернул галочки SEHOP и EAF потому, что эти технологии продолжают работать для 32-разрядных процессов (в Win7x64). А для 64-разрядных процессов (наверное) не вредят.


.

.
•°•°•°•°•°•°•°:
ВЕЛИКАЯ БОРЬБА между добром и злом - http://samforum.org/showpost.php?p=982169&postcount=1

twitter.com/SDAblog
zzkk вне форума Отправить личное сообщение для zzkk
Вверх
Ответить с цитированием
Старый Добавлено: 28.09.2011, 19:38
  (#13)
zzkk
•°•°•°•°•°•°•°
Пользователь
 
Аватар для zzkk

По умолчанию

Цитата:
Сообщение от SAlexB Посмотреть сообщение
Вышла новая версия 2.1

Обновляли поверх?


.

.
•°•°•°•°•°•°•°:
ВЕЛИКАЯ БОРЬБА между добром и злом - http://samforum.org/showpost.php?p=982169&postcount=1

twitter.com/SDAblog
zzkk вне форума Отправить личное сообщение для zzkk
Вверх
Ответить с цитированием
Старый Добавлено: 29.09.2011, 06:23
  (#14)
zzkk
•°•°•°•°•°•°•°
Пользователь
 
Аватар для zzkk

По умолчанию

Новый EMET 2.1 – обзор технологий DEP, ASLR, SEHOP, EAT/EAF, HSA, NPA, BUR


На днях Microsoft выпустил новую версию своей утилиты Enhanced Mitigation Experience Toolkit, адресно предназначенной для усиления защиты серверных (да и не только) ОС Microsoft. Так как утилита эта достаточно ценная и практичная, то предлагаю разобраться в том, что ж хорошего она приносит в систему.

Продолжение:
Что внутри

Утилита не снабжена подробной документацией (в комплекте идёт ссылка на файл User’s Guide, а самого файла нет), поэтому хорошо бы знать, что она точно делает, и зачем нужны все указанные технологии. Это, в общем-то, хорошо знать всегда, но в случае утилиты, которая делает достаточно масштабные и глубокие изменения на уровне всей ОС – тем более.

Краткий перечень функций EMET будет таким:
  • Data Execution Prevention (DEP)
  • Address Space Layout Randomization (ASLR)
  • Structured Exception Handler Overwrite Protection (SEHOP)
  • Export Address Table Access Filtering (EAT или EAF)
  • Heap Spray Allocation (HSA)
  • Null Page Allocation (NPA)
  • Bottom-Up Rand (BUR) (технология является нововведением в EMET 2.1, отличающим эту версию от EMET 2.0)

Давайте кратко разберемся, зачем это всё, что это и как это будет работать, заодно подробнее опишем нововведения.

Какие вообще задачи решает EMET и как он это делает

Основная задача EMET – это повышение “нижней планки” уровня защиты ОС, чтобы защитить ПО, написанное без учёта всех современных технологий безопасности. То есть предполагается, что новое и качественное ПО уже само по себе будет и на уровне проектирования, и на уровне компиляции (те же ключи /GS или /safeseh в Visual Studio, начиная с 2003) обладать указанными технологиями, а вот старое и менее качественное нуждается в доп.защите.

Замечу, что именно основная, а не единственная. EMET как управляет включением тех технологий защиты, которые теоретически могут быть добавлены на фазе компиляции ПО, так и включает то, что на уровне компилятора никак не настраивается.

Что такое DEP

Если очень обобщённо, то практически любое приложение, стартуя, резервирует для себя в оперативной памяти три типа страниц – программного кода, стека и т.н. “кучи” (heap). Количество их различается, но суть задач остаётся одинаковой – в страницах с программным кодом размещается сам код приложения, в стеке и куче – различные типы данных. DEP делает следующее – он помечает страницы с данными специальным флагом (бит называется PTE), чтобы в случае попытки передать туда указатель выполняемой инструкции было бы вызвано исключение STATUS_ACCESS_VIOLATION (0xC0000005) (которое можно перехватить, но Microsoft почему-то упорно называет его “необрабатываемым”). Т.е. функционал DEP адресно предназначен для ликвидации целого класса атак, которые проводятся следующим образом – нежелательный программный код копируется в область данных, а после на него каким-то образом передаётся управление. Если такое происходит – Вы видите окно с кодом 0xC0000005 и приложение закрывается. Кстати, из-за этого DEP мешает целому классу “кряков″ и подобных приложений.

Примечание: Microsoft различает два вида DEP – аппаратный и программный. На самом деле программный DEP – это не DEP, а доп.проверка, которая перекликается с функционалом SEHOP, рассматриваемым далее. Вкратце “программный DEP” представляет из себя проверку перед вызовом обработчика исключения – расположен ли этот обработчик в памяти, помеченой как “не содержащая исполняемого кода” или нет. Если расположен, происходит такое же исключение STATUS_ACCESS_VIOLATION. Кстати – применяется только к программам без таблицы SafeSEH. Т.е., говоря проще, если Вы “правильно” скомпилируете программу, с ключом /safeseh, то “программный DEP” для неё работать не будет. И работать этот “костыль” будет только для программного кода, выполняющегося в userspace – для кода, выполняющегося в режиме ядра ОС, никакого “программного DEP” вообще нет. То есть если у Вас процессор без поддержки DEP, то включение “программного DEP” – это частичная защита и только приложений, а не самой ОС.

Вернёмся к DEP.

Данный функционал реализуется на уровне процессора (функция No-execute Page-protection (NX) у AMD или бит Execute Disable (XD) у Intel), а поддерживается в операционных системах Microsoft начиная с ОС Windows XP SP2, Windows Server 2003 SP1 и Microsoft Windows XP Tablet PC Edition 2005.

Примечание: Кстати, чтобы данный функционал – т.е. DEP – корректно использовался ОС, для x32 битных систем необходима поддержка и включение технологии PAE (Physical Address Extensions), а для x86-64 систем – технологии AWE (Address Windowing Extension), которая “замещает” PAE.

Говоря проще, список действий по включению DEP выглядит так:
  • Найти процессор с поддержкой NX или XD
  • Включить данную функцию в BIOS
  • Если ОС x86, то:
  • - Для Windows 2000/XP/2003 – добавить в boot.ini в строке для загрузки текущего экземпляра ОС параметр /PAE
  • - Для Vista/2008 – добавить через BCDEdit команду /set PAE forceenable
  • Включить DEP в настройках системы, выбрав один из вариантов (OptIn – разрешить для выбранного ПО, OptOut – включить для всех программ, кроме тех, кто сами отключат, AlwaysOn – включить для всех программ без исключения)

В случае с EMET 2.1 это делается через основное (и единственное) окно настройки программы.

Примечание: В x86-64 системах DEP вообще всегда работает для 64х битового кода, а видимые Вам “настройки DEP” влияют лишь на 32х битовый код, выполняемый через WOW64. Выключить DEP на таких системах для native x64 code нельзя.

Пойдём дальше.

Что такое ASLR

ASLR – это механизм, который “перемешивает” относительно случайным образом (насколько хорошо случайным – зависит от реализации в конкретной версии конкретной ОС – например, в NT 6.0 случайность выражается числом 2^8) выделяемые программе страницы памяти (да и сами модули при загрузке), что затрудняет проведение целого класса атак, использующих предсказание расположения этих страниц относительно друг друга.

Попробую пояснить на синтетическом примере. Допустим, есть некое приложение. Оно запрашивает 3 отдельных сегмента для данных – каждый по мегабайту. У этого приложения есть известная уязвимость, которая позволяет разместить выполняемый код в конце первого сегмента и начале второго. В случае без ASLR сегменты всегда будут фактически расположены в оперативной памяти как 1,2,3, и атака будет успешной, а в случае ASLR сегменты каждый раз будут менять расположение относительно друг друга (3,1,2 или 2,3,1 например) и атака не будет проведена.

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

Примечание: Ещё ASLR мешает целому классу атак на подмену адреса возврата (т.н. ret2libc), но это отдельная история

Технология реализована в Windows Vista (без сервиспаков), Windows Server 2008 SP1 и выше.

Примечание: И даже в айфонах с iOS 4.3 и выше

Как включить ASLR в EMET? Опять же – через основное и единственное окно настройки программы. Всё, что Вы сможете – это поставить этот параметр для всей системы в OptIn. Почему нет варианта AlwaysOn? Дело в том, что для компонентов ОС эта технология включена всегда и не отключается, а для ПО необходима поддержка данной технологии на фазе проектирования/компиляции. Иначе возникает вероятность (крайне малая, по факту) того, что программа будет некорректно работать в случае неготовности к “перетасовке” своей памяти. Но, кстати, если Вы выберете отдельное приложение, то для него возможно форсирование этой технологии – просто поставьте отметку в колонке Mandatory ASLR.

Примечание: ASLR для компонентов ОС всегда “перемешивает” не только страницы данных, но и кода

Влияет ли ASLR на скорость? На скорость работы ПО – ничуть. На скорость загрузки – по идее, негативно, но по факту – в пределах погрешности измерений. Включайте поддержку ASLR всегда, когда есть такая возможность.

Далее – SEHOP.

Что такое SEHOP

Технология Structured Exception Handler Overwrite Protection (SEHOP) работает достаточно просто – она проверяет цепочки обработчиков исключений на предмет нарушения их целостности злонамеренным ПО, так как изменение обработчиков исключений – достаточно распространённый метод захвата управления над системой.

SEHOP включен по умолчанию на Windows Server 2008 и Windows Server 2008 R2, а на десктопных ОС – Windows Vista и Windows 7 – выключен.

Примечание: Крайне позитивным является то, что изначально механизм SEHOP был только в Vista (т.е. появился в ядре NT 6.0), но благодаря установке EMET 2.1 Вы получите этот механизм и на XP / 2003.

Благодаря EMET Вы можете включить SEHOP на всей системе, либо на отдельных приложениях.

Кстати, можно включить SEHOP вручную. Для этого надо сделать следующие действия:
  • Выбрать ветку реестра HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\kernel\
  • Создать там DWORD32 с названием DisableExceptionChainValidation
  • Присвоить ему значение 0x0

Очень рекомендуется включать SEHOP, хотя это и приводит зачастую к проблемам в работе приложений (например, Skype). Поэтому включайте, но тщательно тестируя используемое ПО.

Что такое EAF

Конкретной информации по реализации EAF (Export address table Access Filtering) в Windows достаточно мало. Задачей этой технологии является адресная борьба с шеллкодами, и реализуется это (судя по документации) через фильтрацию чтения EAT у модулей kernel32.dll и ntdll.dll (используя аппаратные breakpoints), блокирование доступа инструкции в случае, если IP (который Instruction Pointer, а не то, что обычно) указывает на адрес вне текущего модуля (проверяется через Vectored Exception Handler). В принципе, такое должно блокировать большинство шеллкодов.

Т.е. работает EAF, говоря проще, следующим образом – ставит аппаратный breakpoint на доступ к EAT у указанных модулей, и когда breakpoint срабатывает, EAF проверяет – является ли код, который пытается обратиться к EAT, “правильным” или добавлен в модуль каким-то эксплойтом.

Примечание: Начиная с EMET 2.1, EAF работает и для 64х битных процессов на x86-64 системах. Раньше на x64 ОС он работал только для процессов, запускаемых в WOW64. Это, по идее, заблокирует большинство 64х битных эксплойтов, использущих данную схему доступа.

Примечание-2: Если совсем запутались, то EAT – это таблица, а EAF – отслеживание тех, кто её читает

Вы можете включить EAF для явно указанных приложений – EMET создаст для них специальные записи в реестре (они будут содержать информацию о том, что при запуске этих приложений необходимо использовать EAF). Запускать EMET каждый раз при старте системы не нужно – он лишь включает EAF для указанных приложений, а реализует логику EAF операционная система.

Примечание: Настройки EAF для конкретного приложения будут выглядеть как файл в каталоге C:\Windows\AppPatch\Custom\, имеющий в качестве имени GUID приложения, а в качестве расширения – .sdb

Включить EAF для всех приложений сразу нельзя. И через реестр нельзя, и через политику – тоже. Увы и ах.

Продолжим копаться скальпелем. На очереди HSA.

Что такое HSA

Heap Spray Allocation (HSA), пожалуй, одна из самых “древних” атак из рассматриваемых.

Логика атаки достаточно проста – заполнить максимально доступное количество памяти процесса-жертвы мелкими блоками, в которых будет, допустим, переход на исполняемый код эксплойта. Вариаций очень много – это может быть и заполненный единственным переходом файл swf-формата (который точно будет помечен DEP как исполняемый), может и что-то другое. Важно – что это будет много одинаковых блоков, а на кого удастся перенаправить выполнение – не важно, каждый приведёт к нужному результату.

EMET позволяет обнаружить начало такой атаки и предотвратить её. Включается только для выбранного приложения.

Замечу, что в силу того, что это не атака, а целый класс оных, говорить о том, что включение HSA является панацеей – мягко говоря, некорректно.

Что такое NPA

Это достаточно мистическая атака, базирующаяся на предположении, что будет реализована атака, базирующаяся на том, что зловредный код “займёт” для себя страницу с адресом 0x0. Для этого сама программа – EMET – занимает адрес 0x0. Впрок, так сказать.

Что интересно, если вызвать VirtualAlloc с параметром 0, то VirtualAlloc (что, в общем-то, логично) выделит память по адресу, который выберет сама, а не по нулевому. Для того, чтобы “застолбить” за собой такой адрес, как предполагается, применяется вызов NtAllocateVirtualMemory, у которой запрашивается адрес 0x1, при попытке выделения которого выделяется блок, начинающийся с 0x0.

На данный момент зловредов, использующих эту возможность, не обнаружено.

Включить NPA можно как и EAF – только для явно указанных приложений, а не на уровне системы. Когда эта технология включена, “нулевая” страница при запуске приложения будет занята в профилактических целях.

Что такое BUR

Bottom-Up Rand (BUR) – новая возможность версии EMET 2.1

Суть проста – к базовым адресам выделяемых сегментов (кучи, стека, и прочих) прибавляется случайное число размером в 8 бит, что (несмотря на казалось бы небольшой диапазон значений) делает ощутимо более сложной попытку доступа к “верхним” адресам этих сегментов. Скажем проще – с вероятностью 1/256 она будет неудачной и вызовет exception.

Смешное примечание: единственное найденное ПО, которое страдает от включения этой технологии – Live Messenger. При включённом BUR он падает при включении.

UPDATE: Новый Live Messenger – 15.4.3538.513 – не падает.


Включается BUR так же, как и NPA и EAF – только для явно указанных приложений, а не на уровне системы.

Как это всё включить, например?

Например, если речь о почтовом сервере – открыть EMET, выбрать пункт Configure Apps (внизу справа), нажать в появившемся окне кнопку Add, зайти в каталог %ExchangeInstallPath%\bin\ и выделить там все exe-файлы. После чего – перезапустить все сервисы MS Exchange.

Если речь о домашней машине – сделайте аналогичную операцию как минимум с internet-facing софтом – браузерами, мессенгерами, MS Office, продуктами Adobe (вот с этими практически обязательно).

И помните, это – не панацея, а достаточно серьёзных барьеров на пути различного вредоносного ПО. Тот факт, что есть прецеденты демонстрации теоретической возможности создать вредносное ПО, которое всё же “проходит” все указанные механизмы, ничуть не отменяет другой факт – что каждая из применяемых технологий эффективна в своей области применения, а все вместе они в разы снижают возможность многих атак, некоторые делая невозможными вовсе.

Где взять и почему ж такую полезную штуку не встроят в Windows Server, да и вообще – в любую ОС?

Загрузить его можно отсюда – [Ссылки могут видеть только зарегистрированные пользователи. ].

Почему не встроят – ну, на то есть несколько причин.

Во-первых, часть технологий – ASLR, DEP, SEHOP – уже интегрированы в ОС начиная с Vista (а тот же DEP – с XP). Просто EMET даёт возможность их “красиво” настроить из единой точки.

Во-вторых, множество ПО написано не со 100% совместимостью со всеми требованиями, выдвигаемыми со стороны ОС. Достаточно частой является ситуация, когда при выходе новой ОС производитель ПО (или драйверов) делает минимальное тестирование своего продукта. Вида “вроде подожглось, значит всё ОК, кому надо – в режиме совместимости пусть запускают, у нас своих дел много”. К сожалению, политика корпорации Microsoft, которая поддерживает совместимость ПО на протяжении десятилетий, имеет такой негативный эффект как наплевательское отношение ряда производителей ПО к выпуску новых версий продуктов. Поэтому, когда на новой платформе “закручиваются гайки” по уровню безопасности, это всегда делается крайне медленно и осторожно – именно из соображений совместимости. Достаточно усилить настройки по-умолчанию слишком сильно, и во всех СМИ будет синхронный крик “Microsoft специально делает новую ОС несовместимой со старым ПО, потому что хочет, чтобы покупали новое ПО”. Хотя по факту Microsoft просто заботится о безопасности пользователей и не хочет отвечать за некачественное ПО сторонних разработчиков. Ведь когда такое ПО “роняет систему в синий экран”, весь негатив идёт на производителя ОС – вот ведь какие плохие разработчики в Microsoft, у них же ОС падает. То, что это вызвано noname-драйвером китайского mp3-проигрывателя, который пытается записывать в защищённую область памяти, написано на экране, и понятно профессионалам, но в СМИ профессионалы в IT обычно такие статьи не пишут.
Поэтому выпустить EMET интегрированным в ОС, притом сразу с “максимальными” настройками – это убить множество любительского (да и не только) ПО и вызвать шквал негодования.

Вместо заключения

Надеюсь, что материал будет для Вас полезен. Удач!

[Ссылки могут видеть только зарегистрированные пользователи. ]


.

.
•°•°•°•°•°•°•°:
ВЕЛИКАЯ БОРЬБА между добром и злом - http://samforum.org/showpost.php?p=982169&postcount=1

twitter.com/SDAblog
zzkk вне форума Отправить личное сообщение для zzkk
Вверх
Ответить с цитированием
Этот пользователь сказал cпасибо за это полезное сообщение:
SAlexB (29.09.2011)
Старый Добавлено: 29.09.2011, 13:46
  (#15)
SAlexB
И правил богами Энлиль...
Заслуженный пользователь
 
Аватар для SAlexB

По умолчанию

zzkk,
Если есть возможность - ставлю софт вчистую, как и в этом случае.


SAlexB вне форума Отправить личное сообщение для SAlexB
Вверх
Ответить с цитированием
Этот пользователь сказал cпасибо за это полезное сообщение:
zzkk (29.09.2011)
Старый Добавлено: 29.09.2011, 13:51
  (#16)
zzkk
•°•°•°•°•°•°•°
Пользователь
 
Аватар для zzkk

По умолчанию

Цитата:
Сообщение от SAlexB Посмотреть сообщение
Если есть возможность - ставлю софт вчистую, как и в этом случае.

Эт понятно. Настройки жаль.
Кстати, если правильно понял, EMET - всего лишь оболочка, которая соответствующим образом настраивает реестр. Таким образом, ничего "тяжелого", из-за чего ее опасно было бы ставить поверх, вроде бы не наблюдается.


.

.
•°•°•°•°•°•°•°:
ВЕЛИКАЯ БОРЬБА между добром и злом - http://samforum.org/showpost.php?p=982169&postcount=1

twitter.com/SDAblog
zzkk вне форума Отправить личное сообщение для zzkk
Вверх
Ответить с цитированием
Старый Добавлено: 29.09.2011, 14:09
  (#17)
SAlexB
И правил богами Энлиль...
Заслуженный пользователь
 
Аватар для SAlexB

По умолчанию

Ну да, что то вроде единой точки входа для настроек технологий безопасности винды. НА мой взгляд очень удобная и незаслуженно малоиспользуемая. У меня список маленький, я быстро восстановил. Думаю что последствий обновлений "накатом" не будет, я просто исторически предпочитаю сначала удалить старое потом ставить новое.
[Ссылки могут видеть только зарегистрированные пользователи. ]


SAlexB вне форума Отправить личное сообщение для SAlexB
Вверх
Ответить с цитированием
Этот пользователь сказал cпасибо за это полезное сообщение:
zzkk (29.09.2011)
Старый Добавлено: 12.04.2012, 20:40
  (#18)
zzkk
•°•°•°•°•°•°•°
Пользователь
 
Аватар для zzkk

По умолчанию

[Ссылки могут видеть только зарегистрированные пользователи. ]

  • не нуждается в .NET
  • имеются доп. функции, например, экспорт/импорт настроек

Добавлено через 21 минуту
Кстати, 16 февраля 2012 вышло [Ссылки могут видеть только зарегистрированные пользователи. ], содержащие новую функцию Force ASLR. Видимо, ждем обновления EMET'a.


.

.
•°•°•°•°•°•°•°:
ВЕЛИКАЯ БОРЬБА между добром и злом - http://samforum.org/showpost.php?p=982169&postcount=1

twitter.com/SDAblog

Последний раз редактировалось zzkk; 12.04.2012 в 20:24..
zzkk вне форума Отправить личное сообщение для zzkk
Вверх
Ответить с цитированием
Старый Добавлено: 15.04.2012, 15:50
  (#19)
zzkk
•°•°•°•°•°•°•°
Пользователь
 
Аватар для zzkk

По умолчанию

В [Ссылки могут видеть только зарегистрированные пользователи. ] проводится тестирование способности EMET'a отражать атаки:

Цитата:
Sending a specially crafted RPC request to a Windows host vulnerable to Microsoft Server Service Relative Path Stack Corruption. With EMET enabled (protecting svchost.exe), exploit is sent but payload does not succeed (we tested Windows meterpreter bind_tcp, and Windows arbitrary process execution). Note: Given the criticality of the svchost process, we do not recommend configuring EMET to protect svchost.exe without extensive testing. Although in our tests EMET protected the system from compromise, certain Windows commands were no longer processed properly and the system needed to be manually reset in order to shutdown.

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


.

.
•°•°•°•°•°•°•°:
ВЕЛИКАЯ БОРЬБА между добром и злом - http://samforum.org/showpost.php?p=982169&postcount=1

twitter.com/SDAblog
zzkk вне форума Отправить личное сообщение для zzkk
Вверх
Ответить с цитированием
Этот пользователь сказал cпасибо за это полезное сообщение:
SAlexB (15.04.2012)
Старый Добавлено: 15.04.2012, 21:37
  (#20)
Istari
Постоялец
Пользователь
 
Аватар для Istari

По умолчанию

Цитата:
Сообщение от zzkk Посмотреть сообщение
Microsoft® EMET third-party GUI

Скачал, проверил хеш-суммы, - не совпадают с указанными на сайте:

Download: Native EMET graphical interface
MD5: B8FB870B831954EC6FB6580F72E4AF83
SHA1: 806E50C3A7BF38363E045BD1B5CA42351D40DB3B

По факту:
CRC32: A50CA44F
MD5: 1CA76129519B29FF93E6C6C5DEBC09BD
SHA-1: 9C3034FD756FC1813D940836E26962FCCB8FF368

Не рискну запускать.
Istari вне форума Отправить личное сообщение для Istari
Вверх
Ответить с цитированием
Ответ

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Реклама



Powered by vBulletin® Version 3.8.2
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd. Перевод: zCarot

Время генерации страницы 0.48777 секунды с 36 запросами