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

вторник, 9 октября 2012 г.

Virus Bulletin 2012: немного впечатлений

Чуть больше недели назад состоялось одно из важнейших ежегодных мероприятий для антивирусных компаний. Речь идет об одной из старейших конференций организованной для обмена опытом между представителями различных антивирусных вендоров и просто исследователей ИБ. Конечно же речь идет о Virus Bulletin, которая в этом году состоялась в Далласе.

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

Открывал конференцию достаточно интересный кейнот "The trade in security exploits: free speech or weapons in need of regulation" о горячо обсуждаемой теме продажи эксплойтов и легальных компаниях, которые их скупают/продают.


Не обошлось и без фото Чарли Миллера на слайдах :)


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

среда, 26 октября 2011 г.

Как определить точную дату заражения Win32/Duqu

После того, как появилась первая информация о Win32/Duqu мы не могли пройти мимо, так как нам было очень интересно составить собственные впечатления об этой угрозе (да и challenge со Stuxnet напомнило). Начали копать, оказалось, что код Duqu имеет очень много общего со своим старшим братом Stuxnet. В процессе анализа складывается впечатление, что некоторые части просто полностью повторяют код из Win32/Stuxnet. Код драйверов практически идентичен, еще из наблюдений скорее всего для обоих разработок был использован какой то общий фреймворк для разработки всякого.

С того момента, как мы начали исследовать Win32/Duqu, нас интересовал вопрос, каким образом можно идентифицировать точную дату заражения компьютера этой вредоносной программой (т.к. дроппер нам до сих пор найти не удалось). Такая информация, прежде всего, полезна для проведения криминалистической экспертизы и восстановления картины произошедших событий. У нас появилась идея о том, что если Duqu хранит информацию о моменте своего самоудаления, то должна быть информация, с которой начинается этот отсчет (варианта могло быть два, либо счетчик, либо дата заражения). Нам удалось обнаружить интересную вещь, на данный момент у нас есть несколько наборов сэмплов с различных зараженных машин. И оказалось, что в процессе заражения формируется так называемая main.dll, в которой сохраняется точная дата заражения в UTC-формате. Ниже мы приводим декомпилированный код, осуществляющий проверку этой самой даты:

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

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

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

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

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

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


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

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

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

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

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

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

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

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

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 не за горами. Интересно, когда они начнут нам анонсировать вкусности шестерки :)

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

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

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

пятница, 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/

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

Hex-Rays 1.2 have been released!

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

четверг, 31 декабря 2009 г.

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

Вчера в самый канун НГ зарелизилось очередное обновление горячо мной почитаемого инструмента IDA Pro до версии 5.6. Не буду перечислять здесь всех улучшений, так как здесь есть полная версия фича листа.
Фичи нового релиза, которые мне показались полезными для моих проектов:
- Scriptable loaders - теперь появилась возможности реализовывать модули загрузчиков не только в виде DLL на плюсах, но и ввиде скриптов на Python. Полезность этой фичи в значительном уменьшении трудозатрат и времени на разработку собственных загрузчиков
- Значительно увеличина скорость работы загрузчика crash dump'ов для винды
- Появилась вменяемая поддержка отладки х64 приложений для Mac OS X
- Appcall - фича удобная для фазинга входных параметров вызываемых функций
- Добавлена полная поддержка CLI 2.0 иснтукций для .NET приложений, ну что сказать давно пара уже было ее добавить
- Улучшен разбор формата исполняемых файлов MACHO с использованием dylibs

вторник, 29 декабря 2009 г.

О полезности x86emu

Решил написать об одном довольно интересном и полезном плагине для IDA, о котором почему-то не так много народу знает и еще меньше использует.
Разработчиком этого плагина, вот уже более пяти лет (разрабатывается с 2003 года), является Chris Eagle. Небезызвестный автор уникальной в своем роде книге The IDA PRO Book. На самом деле попыток реализовать эмуль в виде плагина для IDA было довольно много и даже некоторые из них были довольно удачными, но все они постепенно канули в лету. Причин для этого было много не удачная реализация и лень чего-то менять в ней, закрытые исходники и игнорирование автором просьб общественности о добавление полезного функционала и т.п.

Итак что же умеет x86emu (стандартные вещи опущу пожалуй):
- есть поддержка floating point operations
- поддержка MMX
- поддержка SSE
- парсит PE import tables
- показывает структуру PEB/TEB
- понимает SEH
- понимает специфику формата ELF (правда пока еще не все реализовано)
- эмуляция вызова некоторых WinAPI-функций

Помимо эмуляции x86-инструкций x86emu умеет эмулировать вызов довольно большого количества WinAPI-функций: список всех эмулируемых WinAPI-функций.
Этот плагин распространяется в исходных кодах, что само по себе очень ценно. Так же в стандартной поставке есть скомпилированный вариант x86emu.plw для версии IDA Pro 4.9 (freeware version). Есть некоторые нюансы при сборке плагина для новых версий IDA, поэтому я залил сюда свою сборку для IDA v5.5.
Домашняя страница проекта
Репозиторий на SourceForge

понедельник, 30 ноября 2009 г.

Обновился VirtualTotal Uploader до версии 2.0

Сегодня обнаружил обновление VirtualTotal Uploader до версии 2.0. Вещь в хозяйстве полезная, а еще теперь и быстрее работать стала. Поправили несколько глюков с обращением к сервису, когда он перегружен. К примеру у прошлой версии этой утилиты приключался полный коллапс в эти моменты. Обновленная тулза теперь выглядит так:

Теперь стало возможным просматривать список запущенных процессов и выбрав из него интересующий вас, прямиком делать сабмит на VT. Еще интересным нововведением стала возможность указать URL (к примеру: auctiondirectory.org/1258736060.exe (Trojan:Win32/Alureon.CT)) и сделать сразу сабмит находящегося по нему файла или сплойта на VT.

Кстати до сих пор не пойму, почему граждане разрабатывающие VT не сделают нормальный REST API интерфейс, чтобы можно было автоматизировать все под себя. На данный момент из официальных способов обработки сэмплов, только отправка им на мыло и использование VirtualTotal Uploader. Но таки нашлись умельцы не поленившиеся поковырять протокол взаимодействия и выложившие в открытый доступ свои изыскания в виде скрипта на Perl. Скриптик у них довольно увесистый получился, что-то около 800 строчек перлового кода. Умеет он тоже не мало всего интересного:
Options:
-n --no-distrib The sample is not distributed to AV vendors
-h --help Displays this help
-v --verbose Output detailed information about the progress
-b --bb-code Output the result as BBCode
-c --csv Output the result as CSV
-t --tab Output the result as tab delimited file
-m --html Output the result as HTML
-s --ssl Use SSL
-e --timeout=[t] Timeout the scanning process after a number of seconds.
The timeout is per file
-l --log=[file] Save the output (the result of the scans) to the specified
file
-i --site=[site] Use a site other than the default (VirusTotal) for scanning
Available sites:
Умеет проверять не только на сайте VT, но еще поддерживает:
http://virusscan.jotti.org
http://scanner.virus.org
http://www.viruschief.com
http://www.filterbit.com
http://www.virscan.org
http://scanner.novirusthanks.org
Здесь собраны все публично доступные мультисканеры и автор постоянно актуализирует их список.
Очень полезный в хозяйстве скриптик, что тут еще сказать. При должном усердии позволит вам заточить VT, как наиболее мощный из публичных мультисканеров, под свои собственные нужны.

среда, 18 ноября 2009 г.

Обновился проект Metasploit до версии 3.3

Вчера вечером по московскому времени обновился горячо мной почитаемый проект Metasploit до версии 3.3. Это минорный релиз, но тем не менее в него вошло не мало интересного.
Итак, на что я обратил внимание:
- Увеличилось количество эксплойтов(445) и вспомогательных модулей(216), против 320 и 99 в предыдущей версии;
- При использовании arbitrary code execution для винды (x32/x64), теперь можно можно передовать в качестве полезной нагрузки любые исполняемые файлы 'msfencode -a x64 -e x64/xor -t exe -o MYNEWFILE.exe;
- Добавлена возможность генерации полезной нагрузки для систем под управление Win7, Win x64 и с учетом NX, DEP, IPv6;
- Добавлено simple fuzzer API с уже готовыми модулями HTTP, SMB, TDS, DCERPC, WiFi, and SSH;
- Meterpreter теперь умеет работать по HTTPS, снимать скриншоты, сниффать трафик, регистрировать нажатия на клавиш на атакованной системе;
- Добавлены новые модули для полезных нагрузок на JSP для эксплуатации Java-based application engines, таких как Bea или Tomcat;
- Еще добавлены новые модули для эксплуатации БД, через протокол TDS(MSSQL/Sybase) и включена поддержка Oracle.

В целом было замечено возросшая скорость работы, видимо сказался переход на Ruby 1.9.1. Выше я уже упоминал о возможности захвата трафика на атакованной системе, здесь меня заинтересовал один нюанс, касающийся использованной библиотеки для этого. Как оказалось там используется MicroOLAP Packet Sniffing SDK , а ведь библиотечка эта является платной и прямо сказать не из дешевых. Хотя именно она позволила реализовать модули захвата трафика на целевой системе.

вторник, 27 октября 2009 г.

Впечатления от VMware Fusion 3

Сегодня себе скачал сначала триальную версию VMware Fusion 3 и был приятно удивлен, что разработчики были действительно не голословны и прирост производительности ощутим практически сразу. Понравились улучшения в юзабилити и различные нововведения решеченного толку. После недолгих раздумий я таки решился себе прикупить академическую лицензию, ибо за такие улучшения 30$ не жалко.

среда, 21 октября 2009 г.

Интеграция интерактивной консоли IPython и IDA Pro

На днях обнаружил интересный скриптик на питоне, который осуществляет интеграцию интерактивной консоли IPython в IDA. Прелесть этой интеграции в том, что во встроенной в IDA интерактивной консоли совершенно не удобно набирать длинные скрипты на IdaPython, а в IPython это делать гораздо удобнее. В общем экономит время, нервы и потраченные силы :)
Забирать сие счастье тут

вторник, 20 октября 2009 г.

Обновился Virtual AntiVirus REchecker

Сегодня появилось обновление live-дистрибутива ViAvRe Virtual AntiVirus REchecker 10.09 (на базе OpenSuse 11.1), который содержит на борту сразу 5 антивирусных сканнеров Avg, Avast, Doctor Web (CureIt), McAfee, BitDefender.