Фальшивая анатомия. Часть 2

  1. Динамическая библиотека
  2. Механизм впрыска
  3. Аудит версий
  4. Firefox addon
  5. суммирование

В первой части нашего анализа мы рассмотрели распространение и механизмы заражения, используемые Flashfake (также известным как Flashback) - вредоносной программой, которая к концу апреля 2012 года заразила около 748 000 компьютеров Mac OS X. Во второй части анализа мы рассмотрим другую. Мы посмотрим, как киберпреступники, стоящие за Flashfake, зарабатывают деньги на созданном ими бот-сети.

Динамическая библиотека

Вредный Flashfake состоит из нескольких модулей и динамической библиотеки, которая внедряется в процессы веб-браузера. Эта библиотека реализована в виде инжектора вредоносного кода (см. Схему ниже).

Блок-схема Flashfake
Блок-схема Flashfake

Наша база данных сигнатур в настоящее время содержит две модификации библиотеки, обычно известной как libmbot.dylib. Эта динамическая библиотека (размером около 400 КБ) является стандартным пакетом Mach-O для 32- и 64-разрядных операционных систем.

Работа библиотеки инициируется стандартной функцией _dylibmain, которая допускает целое число в качестве входного параметра. По умолчанию зарядка начинается с цифры 7.


Псевдокод для запуска оригинальной динамической библиотеки

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

Пример блока конфигурации для динамической библиотеки Flashfake
Пример блока конфигурации для динамической библиотеки Flashfake

Этот блок содержит следующие типы записей (определяющих функциональность):

  1. функция обновления и заражения веб-браузеров через библиотеки DYLD_INSERT_LIBRARIES;
  2. первоначальный список доменов, которые действуют как управляющие серверы для динамической библиотеки;
  3. функция генерации доменных имен в зонах: «org», «com», «co.uk», «cn» и «in» - для поиска управляющих серверов;
  4. функция для генерации трехуровневых доменов для доменов: ".PassingGas.net", ".MyRedirect.us", ".rr.nu", ".Kwik.To", ".myfw.us", ".OnTheWeb.nu" и т. д. .
  5. функция аудита поисковых систем путем генерации поисковых запросов для мобильной версии Twitter;
  6. функция внедрения внешнего кода в контекст сайтов, посещаемых пользователем.

Механизм впрыска

По умолчанию библиотека, если она работает в контексте браузера, отслеживает пользовательские запросы, захватывая функции: send, recv, CFReadStreamRead и CFWriteStreamWrite. После обнаружения посещения страницы, указанной в блоке конфигурации, библиотека внедряется в контекст браузера JavaScript с управляющего сервера.

JavaScript внедряется в контекст веб-браузера
JavaScript внедряется в контекст веб-браузера

Значение поля {DOMAIN} берется из списка начальных управляющих серверов, например,

googlesindication.com, gotredirect.com, dotheredirect.com, adfreefeed.com, googlesindications.cn, googlesindications.in, instasearchmod.com, jsseachupdates.cn.

По умолчанию JavaScript всегда выполняется всякий раз, когда браузер открывает веб-сайт google.com. Тем не менее, блок конфигурации содержит список из 321 домена, в котором не включен JavaScript, когда они появляются в результатах поиска. Помимо поисковых систем, список включает в себя список социальных сетей, новостных сайтов, интернет-магазинов и банков. Скорее всего, эти домены были внесены в список, чтобы минимизировать сетевой трафик, генерируемый на киберпреступном сервере.

Список доменов, исключенных из JavaScript-инъекции
Список доменов, исключенных из JavaScript-инъекции

Аудит версий

Функциональность динамической библиотеки включает механизм самообновления. Авторы вирусов также реализовали механизм проверки серверов управления и обновления сигнатур с использованием алгоритма RSA. На данный момент доступны две основные версии вредоносной библиотеки. К сожалению, дата включения всех вредоносных файлов установлена ​​на 1 января 1970 года, что не позволяет нам создать точный график публикации библиотек. Тем не менее, различия в функциях, содержащихся в библиотеках, могут позволить нам определить момент их возникновения.

Основываясь на нашем анализе, характерными особенностями версии 1.0 <nobr> (MD50x8ACFEBD614C5A9D4FBC65EDDB1444C58) </ nobr>, которая была активна до марта 2012 года, являются: случайные имена библиотек, получение функции CFReadStreamRead и функция CFWriteStreamWrite и установка в местоположении / Users / Shared /. svcdmp. Вредоносный JavaScript также включен в тело текущей вредоносной программы. Единственное отличие в версии 1.1 - это изменения в первоначальном списке серверов управления и алгоритме генерации для них новых доменных имен.

В версии 2.0 (MD5 434C675B67AB088C87C27C7B0BC8ECC2) - активной в марте 2012 года - был добавлен алгоритм поиска управляющих серверов через Twitter.com. Вредоносный JavaScript был удален из блока конфигурации, а в функции send и recv была добавлена ​​поддержка захвата сетевого трафика и подмены. Фиксированное имя вредоносной библиотеки - libmbot.dylib - также было добавлено в версии 2.0 вместе с несколькими загрузчиками и дополнительным контролем входного параметра для активации основной части вредоносной программы. Версия 2.1 включает в себя новый алгоритм поиска для серверов управления через Twitter. Последняя версия библиотеки - версия 2.2 - в центре внимания, главным образом, благодаря добавлению веб-браузера Firefox.


Firefox addon

В этой динамической версии библиотеки все обработки поисковых запросов Google по умолчанию выполняются хуками send, recv, CFReadStreamRead и CFWriteStreamWrite. Это универсальный подход для всех веб-браузеров Mac OS X, но он требует дополнительных усилий при создании кода для декодирования сетевого трафика пользователей. Вот почему библиотека появилась в блоке конфигурации как дополнение к Firefox, называется AdobeFlashPlayer 11.1, чтобы минимизировать изменения в версии 2.2.

Вредоносное дополнение к Firefox, скрытое под наложением Adobe Flash PlayerПодлинное дополнение Adobe Flash
Вредоносное дополнение к Firefox, скрытое под наложением Adobe Flash Player
Подлинное дополнение Adobe Flash

Вредоносный оверлей имеет те же функции, что и основной модуль, то есть собирает пользовательские данные из Google и «заменяет» сетевой трафик, используя данные сервера управления.


суммирование

Flashfake в настоящее время является самой распространенной вредоносной программой для Mac OS X. Этот факт является следствием как небрежного отношения Apple к обновлению операционных систем, так и расширения возможностей киберпреступников использовать последние тенденции вредоносного ПО: уязвимости нулевого дня, меры самозащиты. Сильные криптографические алгоритмы для связи с управляющими серверами, проверка наличия антивирусных решений в системе, использование общедоступных сервисов для управления ботнетами. Все эти технологии способны обидеть как системы Mac, так и Windows. Срывая активность пользователей на платформе Google, люди, стоящие за Flashfake, создали постоянный источник дохода, способный приносить тысячи долларов в день. Остается неясным, какая партнерская программа размещает ссылки на ложные результаты поиска и кто именно отвечает за помощь злоумышленникам в распространении вредоносного ПО.

А это значит, что мы вернемся к этой теме снова ...