Описание вредоносного ПО

«Рекламный» ботнет

Ботнет Artro, боты которого детектируются продуктами «Лаборатории Касперского» как Trojan-Downloader.Win32.CodecPack, известен как минимум с 2008 года. Однако до сих пор отсутствует полное описание его функционала. Чтобы восполнить этот пробел, мы решили представить вниманию читателей результаты проведенного исследования.

Загрузчик

Формированием ботнета Artro занимается загрузчик, детектируемый нами как Trojan-Downloader.Win32.CodecPack. Троянец защищен упаковщиком, код которого сильно обфусцирован. Как правило, упаковщики используются для того, чтобы максимально усложнить детектирование упакованной вредоносной программы, а не для защиты кода от анализа. Данный случай исключением не является — программа распаковывается достаточно легко. После распаковки функция WinMain разных вариантов троянца выглядит примерно одинаково. Но злоумышленники все-таки попытались защитить свой код от анализа с помощью обфускации, разбавив его большим количеством мусорных инструкций.

botnet_april2011_pic01

Функция WinMain распакованного загрузчика Trojan-Downloader.Win32.CodecPack

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

botnet_april2011_pic02

Мусорные инструкции в фрагменте дизассемблированного кода троянца

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

Среди интересных особенностей Trojan-Downloader.Win32.CodecPack можно отметить, что троянец проверяет, не запущен ли он в виртуальной машине или под отладчиком. Однако в отличие от стандартной ситуации, когда при обнаружении отладчика или виртуальной машины вредоносная программа завершает свое исполнение, чтобы затруднить динамический анализ, CodecPack просто отправляет результаты проверки на управляющий сервер.

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

После запуска Trojan-Downloader.Win32.CodecPack первым делом проверяет соединение с интернетом, отсылая несколько DNS-запросов на популярные сайты, например на wordpress.com, walmart.com, photobucket.com, которые с большой вероятностью доступны в любое время суток. В случае если соединение с интернетом отсутствует, CodecPack завершает свой процесс. Если зараженный компьютер находится в Сети, загрузчик собирает информацию об инфицированной машине: серийный номер тома, на котором находится папка Windows; версия операционной системы; имеет ли текущий пользователь права администратора системы; выполняется ли троянец в виртуальной машине или под отладчиком. После этого формируется запрос к C&C, содержащий полученную информацию. Кстати, домены, на которые отправляются запросы загрузчика, не являются настоящими C&C. Серверы, обслуживающие эти домены, — всего лишь обратные прокси и нужны для того, чтобы скрывать истинный центр управления ботнетом.

botnet_april2011_pic03

POST-запрос загрузчика к C&C и полученный ответ

Сразу отметим, что все запросы троянца к управляющим серверам передаются в зашифрованном виде. Шифрование осуществляется следующим образом: сначала данные зашифровываются с помощью алгоритма RC4, после чего кодируются с помощью алгоритма Base64. Ответы C&C также приходят в шифрованном виде. Расшифровка ответов происходит в обратном порядке: сначала ответ декодируется с помощью алгоритма Base64 и затем расшифровывается алгоритмом RC4. Ключ, которым зашифровываются и расшифровываются данные, одинаковый для всех самплов и находится в теле троянца.

Запрос к C&C представляет собой POST-запрос, параметр ini которого содержит последовательность символов

v22MnmDnHYfxCWI06FcUQOE5OLPvIYg4OtcPHid3L0oHCw7U2
UWOm2rzU1rHIQqMgMqVv8JHeAiBMF4QB33zfYiRtufQpKX8MPtpuO7vlA==

под которой скрывается строка

a1=4ded23cdfec1eb7b512840cadb
35a169ddfc4eef&a2=00001920&cd=Fri 04 2011,22:16:41

Она содержит уникальный идентификатор троянца (параметр a1), идентификатор партнера, через которого была осуществлена загрузка CodecPack на машину пользователя (параметр a2), и временную метку, содержащуюся в файле в виде строки (параметр cd). В параметре data содержится строка

qSrTzGL0RMCyDnY9+xJEQe5nNLundsMqfdgBGzUoJ0xVTU/DzQ
WC3DLbXB/UfETT1o6F2ZIbLEGVJ0MOJTSDP9PX4aSS/OagY6143bGp0y/uGVSLV
L0u+us+x5NraqI7DJaKGg7TCqXkTszGInUBxiK1/h
KL2oFYpjsSeY04x+zt2a9dO+UI5VhP0W45

которая до того, как была зашифрована, выглядела так:

wvbffv=updpov&admin=yes&wloapl=gcpxsp&os=Microsoft
Windows XP Professional Service Pack 2 (build 2600)
&qymxsz=mkgflj&debug=none&oeuprp=cbvhox

В этой строке на C&C передается следующая информация:

  • имеет ли учетная запись, под которой запустился троянец, привилегии администратора системы (параметр admin может принимать значения yes или no);
  • запущен ли троянец под отладчиком или в виртуальной машине (параметр debug, который может принимать значения ‘none’, ‘vmware’, ‘vmware2’, ‘vmware3’,
    ‘msvpc’, ‘msvpc2’, ‘cvpc’, ‘debu
    gger1′, ‘debugger2’, ‘debugger3’, ‘debugger4’, ‘debugger5’, ‘softice’, ‘vm’, ‘vm2’);
  • а также версия операционной системы (параметр os).

Смысл этого запроса состоит в том, чтобы получить от управляющего сервера конфигурационный файл, который приходит в ответе от управляющего сервера в виде бессмысленного набора символов

4i7exXC8c4mxHmcg+QoZUPFieuWsasB4N5MJEyNjOltZTkONmky
DiDH+QQjWKRiTxI3M6pIRJgCLOkw1AGagIs7Cq+7Vre2vZ6c8v+a+ln7uRBC6U78
gvLoo3sN7YqxrG8beHgvNHe2vEYzQbC5cmybl8xnJj4Ze4D0aL4Nvk6m0juMfLaN
Rt1wK2jV1LMVonwYDZhQV9TCcLC8K/jaSl2iGyFsFOJqlI+v+lGTo8iCwjl9V63rlQ1
wdvDjgc9lvdhMXOK3bWNlwF8mkitR2ZMZ/sJ03lxw1AfJKjiNhuuDR1lVIseLFz7od7
42Zcy/PifsYkiiD2iSfnyGbl3c2hVH3kXKO3swayP+1QBLrc7kPxNAuYPBjwOexIGzm
vVIu7DxjAj1+PumU4TTpwpByVNtEpjkCu4bTqG8SE85NgTJX+/zhzpolGgDVPI2lx
x0OLx8MX2dQ9TO7l6GH7q6BOZ5kZAI7100GGEcPLEeIwgY1y9mawLoQVSiHoL//
E2MFZMW85b//lKxW6p2tSCwdScWkakghLoknwKdn/CMzvqWMjSFj0dlWqdjypa
eOQIdRUp/7fC4jnUI5pimM9vJ+7CM4OP84XsAVCUz9P/WRMVtQaAI4I3WFMtk/Kl
VTd5d4eyrH48XVCsscUrFuEedu65qcc6i/BmNDHdt/wC/3RSnbD3dG5OjrAjsJShe
GQHyBjhNz5koM1oxsqCIAsQVAh9RYl0/D0aJHkDHwGGX+wK0D785mxcU7oH35A
1S7U9POcJ3vae3Ive/zdZsQok4QJIFwB4VoCX2Ed4ipL5BtfyoiKRoHMlTn0E5Rvpd
E+AVYEDE33zE74KNALfcDmFkGh7dqXHgX/BQ4s6NpGNMwT+pE2IEyrDOBtBlN9j
nhyR5fcQpJQoSlyaylfY8oHJftstYeWqdAIkMgXxmeBtaSYMG7jewjKHAz1L8N2sc
PVwcHWa56EL5O0JyD1u9rXO3pMpRe4p4j7FfYwazDXV9TrnKRfGzw14nipxscdY
oV8cOVP6WW1XQ2TaGHyKjhFpYbibUiABWH8KDgxbZtYTMgNMq45eFTEYrMY9
8i7insKDyWS6ecEJqmRjXAwsqPNxX1gI3ZzKR7k5kYIs60gdTV8VbReidhBTPab8h
DGMvKbwROhJtSeIyUYqGdltIMlLtbLaNl6Tn9rrg8yjuLAdulravoMF1Tb/uJkYKRwF
760SJAaJT5eD+nlGLFed+QpUtZFf32Ww5UxdQQ0bo3efpE6V2dNRQGcc2uDwKp
YxLumd9Vf/JaragjDfT89MXC9YG7bb79+cjmsv91Ecy7CyyOD/WISJ0bjHHODo28
aRGO7iuYADfRXi8aMmXQklxnElDZ+YGcpf1fd5Dji4cBo4PVIChOR+9K++TVyJFuX
diEUsL9aLUMafmb76ZKTuFuisgiGnOVH8+P1vMM+8ze7w4bBvuEqGtxWmrxFDrg
px5rq0VDr+oT33TbRsJpAOgPmvzlewQDyyV31A+Ux2p9lRjpxURJsbmS+gpTiCgiu
fQnHf2X1BRZsbIjYlzJaPZRKHRB713LeG+FmwhQlsEFJRQMrTZLaRpj8yzbH6YRmf
MjNWu8p5C4Y30qKutNHRBXzFqrASBIjm4=

и после расшифровки превращается в конфигурационный файл, имеющий формат XML:

<root>

<start><url crypt=’gif’
post=’on’>http://tw***dn.in/cursors/948daefd12e38c8dafaefc612eab47b
b45719228e4f06c6aad1bd3a58a91c6292d6d1f3c44aebeff4/b6647362a/cursor
_upp.gif</url><url crypt=’gif’
post=’on’>http://web***ith.in/cursors/24ad2ecdd213bc3d7f6e5c410eebe
7cb050122284470cc0a7d1bc3d58a2186b9cdad7f9cb43ede3f9/267493126/cu
rsor_upp.gif</url></start>

<start><url crypt=’gif’
post=’on’>http://shu***edrive.in/werber/562473824/217.gif</url
><url crypt=’gif’
post=’on’>http://new***bridge.in/werber/b6
0413b27/217.gif</url></start>

<start><url crypt=’gif’
post=’on’>http://data***ykey.in/perce/247d5ebd92d36c6d7feefc311ecb
67abf5d1420844a02cba2d7b63259a21a6c99dfd7f3cc4ee9e4fc/8674d352d/q
werce.gif</url><url crypt=’gif’
post=’on’>http://filefo****online.in/perce/845dbecd62f37c9dbf9e0c11ce
ab377b65d162e80430cc9a8d8b23f56a81d6f9dd9dbf3c842ede3fc/d65493829/
qwerce.gif</url></start>

<start><url crypt=’gif’
post=’on’>http://tw***dn.in/papers/e46d7ecd62b39c0d4f1e3c318ebb177
b95a132d83460ac7a2d8bc3c50a51d6f9cd5dbf3c045e3e5f6/6684f322a/paper
.gif</url><url crypt=’gif’
post=’on’>http://web***ith.in/papers/64bd5e9d82830c2d0f3eacc1feab27
cb95f122582430ac5a8d1bc3151ae1b6799
d0d1f2c941e4e9f4/f66443a29/paper.gif</url></start>

</root>

Конфигурационный файл имеет довольно простую структуру. Корневой элемент root содержит элементы start. Каждый элемент start соответствует файлу, который нужно загрузить и исполнить. Элемент start в свою очередь содержит элементы url, задающие адреса для загрузок. Этих элементов внутри start может быть несколько, и тогда в случае если вредоносной программе не удалось загрузить файл по ссылке из первого элемента url, она попытается загрузить его же по следующей ссылке.

Файлы на компьютер пользователя загружаются в зашифрованном виде. Способ шифрования задается атрибутом crypt элемента url, который может принимать два значения: gif или rc4. Последний способ, как нетрудно догадаться, состоит в шифровании файла с помощью алгоритма RC4. Значение же gif означает, что будет загружена картинка в формате gif, например, такого вида:

botnet_april2011_pic04

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

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

В ходе исследования ботнета выяснилось, что конфигурационный файл загрузчика скачивается пользователям не всех стран. Например, по сей день вообще не происходят загрузки на компьютеры пользователей России, Беларуси и Казахстана — им возвращается ошибка 404 Not Found.

Загрузки: рекламные программы/кликеры

В конфигурационном файле загрузчика содержатся ссылки, как правило, на 3-4 программы. Ссылки могут вести на вредоносные файлы, которые загружаются владельцами ботнета по заказу «коллег по цеху». Список таких файлов может быть свой для каждой страны, а может и вообще отсутствовать в задании на загрузку в определенных странах. Но есть программы, которые загрузчик скачивает всегда, — это программы-боты, показывающие рекламу (Adware) и совершающие клики по ссылкам, рекламным баннерам и всплывающим окнам. В отличие от файлов, загружаемых на зараженный компьютер по заказу, эти программы — дело рук тех же авторов, которые создали загрузчик. Это следует из двух фактов:

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

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

botnet_april2011_pic05

Общение HitBot с сервером

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

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

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

BannerBot. В файле конфигурации получает прямые ссылки на баннеры рекламных сервисов, по которым совершает клик с последующим переходом на какой-либо веб-сайт, или ссылки на веб-сайты, на странице которых по заданному тегу <div> находит определенный баннер и кликает по нему. Часть баннеров бот показывает пользователю. Среди параметров в конфигурационном файле присутствует поле referer, содержащее ссылку на источник запроса (откуда на рекламируемый сайт пришел пользователь).

botnet_april2011_pic06

Пример расшифрованного config-файла для BannerBot

New_bb. Имеет похожий на BannerBot функционал, но посылает серверу некоторые дополнительные статистические параметры о своей работе и может взаимодействовать с сервером, не получая конфигурационный файл. В этом случае сервер, которому бот отправляет POST-запрос, перенаправляет его на другой сервер, используя код ответа 302. Из HTTP-поля Set-Cookie в полученном ответе бот извлекает необходимые параметры, такие как поле referer для запрашиваемых ссылок на баннеры и число кликов по баннерам до следующего обращения к первому серверу.

botnet_april2011_pic07

Извлечение параметров для new_bb из поля Set-Cookie и перенаправление на другой сервер

Второй сервер, в свою очередь, возвращает JavaScript со ссылкой на баннер, который исполняется в браузере.

botnet_april2011_pic08

Получение JavaScript от второго сервера для New_bb

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

botnet_april2011_pic09

Расшифрованное задание от сервера для PopupBot

HitBot — кликер, получает от сервера задание на периодическое запрашивание сетевых ресурсов с заданным полем referer и с заданным интервалом времени.

botnet_april2011_pic10

Расшифрованное задание от сервера для HitBot

В случае если параметр ref в конфигурационном файле пуст, HitBot осуществляет просто накрутку посещаемости сайта, указанного в параметре url.

Oms. Единственный бот, который реализован в виде динамической библиотеки и устанавливается в системе как сервис. Имеет поддержку регулярных выражений, перехватывает запросы браузеров к поисковым системам google, bing, yahoo, извлекая запрос, который ввел пользователь.

botnet_april2011_pic11

Регулярные выражения, использующиеся в разборе пользовательского запроса

После извлечения запроса пользователя oms посылает на сервер параметры в зашифрованном виде. Среди этих параметров пользовательский запрос к поисковой системе и адрес сайта поисковой системы.

botnet_april2011_pic12

Расшифрованные параметры, передаваемые серверу ботом oms

В зависимости от запроса пользователя в ответе от сервера может прийти конфигурационный файл с указанием ссылки, по которой пользователь перенаправляется при клике на любой сайт из выданного поисковиком результата, и поля referer для нее.

botnet_april2011_pic13

Расшифрованное задание от сервера для Oms

Например, ссылка, пришедшая в конфигурационном файле, может перенаправлять пользователей на страницу, имитирующую окно explorer.exe с проверкой компьютера на вредоносные программы и последующим предложением скачать поддельный антивирус.

botnet_april2011_pic14

Веб-страница, имитирующая проверку компьютера антивирусом

Веб-сайты, открываемые и ботом oms, и другими ботами CodecPack, характеризуются самым разнообразным контентом. Один из примеров — на скриншоте ниже.

botnet_april2011_pic15

Пример веб-сайта, который открывает adware-программа

Деньги

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

Каким же образом зарабатывают владельцы «рекламного» ботнета?

botnet_april2011_pic16

Схема обмана рекламодателей

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

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

Желая увеличить доход от перенаправления посетителей на ресурс рекламодателя, некоторые владельцы сайтов, размещающих у себя рекламные ссылки, пользуются услугами владельцев ботнета. Боты эмулируют переход пользователей с сайтов, содержащих рекламные ссылки, на рекламируемые ресурсы. Для этого в HTTP-запросе к рекламному сервису (для получения ссылки на целевой ресурс) бот подставляет в поле referer адрес сайта заказчика услуг ботнета или передает в параметрах запроса ID партнера рекламной сети.

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

Мы полагаем, что многие из владельцев сайтов и партнеров рекламных сетей не знают о том, что заработать им помогает ботнет.

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

botnet_april2011_pic17

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

botnet_april2011_pic18

Например, адрес сайта businessite.net подставляется в поле referer для бота oms. Вот как оценивается этот сайт в одном из сервисов, предоставляющих информацию о выручке и стоимости сайтов:

botnet_april2011_pic19

Оценка стоимости сайта businessite.net и его выручки сервисом websiteworths.com

В ходе исследования мы выяснили, сколько в среднем за сутки каждый модуль совершает кликов по полученным в конфигурационном файле ссылкам. Зная эту цифру и такие параметры как средняя оплата рекламных сервисов за клик, минимальное количество ботов в зомби-сети и вероятная доля владельцев ботнета от продажи трафика, мы можем подсчитать предполагаемый доход злоумышленников. По нашим оценкам, он составляет 1-2 тысячи долларов США в сутки.

Следует отметить, что в расчете не учитывался бот oms, клики которого целиком зависят от действий пользователя по производимым запросам к поисковым системам. Также важно принимать во внимание, что со стороны злоумышленников имеется гибкая настройка частоты кликов для ботов. Она позволяет имитировать поведение настоящих пользователей: клики совершаются не с постоянной частотой, а в течение определенного времени с последующими продолжительными паузами.

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

Распространение

CodecPack попадает на компьютеры разными путями, что свидетельствует о том, что владельцы Artro для распространения своего загрузчика пользуются услугами своих коллег, предоставляющих сервисы по установке вредоносного ПО на компьютеры пользователей. Загрузчик CodecPack распространяется через ботнеты, в этом случае его установка происходит на уже зараженный ранее троянцем-загрузчиком компьютер. Он может распространяться и через наборы эксплойтов: пользователю достаточно посетить зараженный сайт, чтобы находящийся на нем эксплойт автоматически загрузил и запустил CodecPack. Довольно ярким примером распространения загрузчика через эксплойты была рассылка спама, зафиксированная «Лабораторией Касперского» в марте 2011 после случившегося в Японии землетрясения. Спам содержал ссылку на вредоносный сайт, использующий эксплойты для установки Trojan-Downloader.Win32.CodecPack на компьютеры пользователей.

Основной же метод заражения пользовательских машин CodecPack банален: пользователи сами скачивают и запускают вредоносный исполняемый файл. Естественно, в наше время редкий пользователь запустит на своем компьютере неизвестный файл «просто так», из праздного любопытства. Злоумышленники этот факт учитывают и выдают троянца за кодек, легальную программу, генератор ключей или программу для взлома программного обеспечения («кряк») на так называемых «варезных сайтах». CodecPack распространяется и через сайты поддельных видеохостингов, порносайты, созданные специально для заражения пользователей, и поддельные блоги. Учитывая специфику этих сайтов, можно предопложить, что на удочку злоумышленников попадаются в основном любители халявы и клубнички и просто невнимательные пользователи.

Как это происходит? Предположим, пользователь зашел на сайт поддельного видеохостинга посмотреть видео.

botnet_april2011_pic20

Сайт фальшивого видеохостинга

Надпись рядом с окном плеера предупреждает о том, что для просмотра видеоролика, возможно, потребуется скачать кодек. Поэтому когда при попытке посмотреть ролик всплывает стандартное диалоговое окно, предлагающее сохранить или запустить исполняемый файл с внушающим доверие именем (например, DivXcodec.exe), пользователь без колебаний его запускает, полагая, что это и есть необходимый для просмотра кодек. На самом деле он запускает вредоносную программу Trojan-Downloader.Win32.CodecPack, название которой, кстати, отражает данный способ установки вредоносного ПО на компьютеры пользователей. Сходным образом происходит заражение пользователей, решивших посмотреть порно на поддельных порносайтах или посты на поддельных блогах.

botnet_april2011_pic21

Сайт фальшивого блога

При попытке пользователя посмотреть опубликованное в блоге видео открывается веб-страница с изображением видеоплеера.

botnet_april2011_pic22

Веб-страница с изображением видеоплеера

На самом деле это не видеоплеер, а всего лишь картинка со ссылкой на вредоносный файл вида:

<A href=»http://mo***ilite.in/vimeoHDRviewer.40014.exe»>
<IMG src=»xplayer.gif» border=0></A>

Дальше, как уже было описано, пользователь кликает по изображению видеоплеера, после чего ему предлагается загрузить «кодек». Не стоит говорить, что после его загрузки и запуска никакого видео пользователю так и не покажут, а его компьютер будет заражен.

При попытке пользователя скачать ПО, генератор ключей или программу для взлома ПО с «варезных» сайтов все выглядит еще убедительнее — ведь пользователь пришел на сайт именно для того, чтобы скачать программу. Только вот загружаемое ПО не содержит ничего, кроме троянца.

botnet_april2011_pic23

Сайт, распространяющий загрузчик Trojan-Downloader.Win32.CodecPack под видом
взломанного лицензионного ПО

Теперь о том, как пользователи попадают на сайты со ссылками на вредоносные файлы. Для того чтобы обеспечить приток посетителей на такие сайты, используются методы черной поисковой оптимизации (Black SEO). Например, приведенный выше поддельный блог появлялся уже на второй странице выдачи поисковой системы bing.com по некоторым ключевым словам. Кроме того, ссылки на сайты с вредоносными ссылками размещаются в комментариях к постам на различных популярных блогах и новостных порталах.

Вредоносные ссылки на многих сайтах ведут на один и тот же домен. Домены в ссылках меняются несколько раз в сутки.

botnet_april2011_pic24

Количество доменов, с которых загружался CodecPack в течение суток

Масштабы проблемы

Первый сампл CodecPack был обнаружен «Лабораторией Касперского» летом 2008 года. За два с половиной года ботнет Artro разросся до огромных масштабов: в январе 2011 года CodecPack был задетектирован хотя бы один раз примерно у 140 тыс. наших пользователей.

botnet_april2011_pic25

Количество пользователей, на компьютерах которых был задетектирован
Trojan-Downloader.Win32.CodecPack

Интересно сопоставить эту цифру с данными, полученными с серверов самих злоумышленников. В нашем распоряжении оказались лог-файлы с одного из back-end серверов ботнета, содержащие такую информацию как IP-адрес компьютера, от которого поступил запрос на C&C; дата и время запроса; страна, в которой находится зараженный компьютер. На графике ниже показано количество уникальных IP-адресов, с которых в период с 24 апреля по 7 августа 2010 г. поступали запросы на C&C ботнета (по дням).

botnet_april2011_pic26

Количество уникальных IP-адресов в лог-файлах C&C

На графике видно, что количество уникальных IP-адресов в некоторые дни достигало 150 тысяч Отметим, что лог-файлы были получены только с одного back-end сервера, всего же таких серверов у ботнета как минимум три. При этом непонятно, хранятся ли лог-файлы централизованно на одном из этих серверов, или каждый сервер имеет свои лог-файлы. Во втором случае может оказаться, что реальные цифры гораздо больше приведенных выше.

Согласно данным из лог-файлов, вредоносной программой Trojan-Downloader.Win32.CodecPack были заражены компьютеры пользователей в 235 странах мира. В таблице ниже представлена двадцатка наиболее пострадавших стран.

Страна %
США 14,46%
Бразилия 6,45%
Индия 5,65%
Германия 5,87%
Мексика 4,08%
Франция 2,45%
Италия 2,28%
Великобритания 2,26%
Испания 2,14%
Колумбия 2,01%
Вьетнам 1,78%
Турция 1,53%
Украине 1,47%
Канада 1,43%
Иран 1,43%
Пакистан 1,38%
Индонезия 1,35%
Таиланд 1,31%
Перу 1,27%
Аргентина 1,25%
Другие 27,51%

Распределение по странам зараженных Trojan-Downloader.Win32.CodecPack компьютеров
(по информации из лог-файлов)

Этот список неплохо коррелирует с аналогичными данными, полученными с помощью KSN: состав стран в двадцатке почти не изменился, изменились лишь их позиции в рейтинге.

Страна %
Индия 10,64%
США 9,16%
Германия 5,48%
Россия 4,61%
Италия 4,15%
Вьетнам 3,64%
Великобритания 3,63%
Саудовская Аравия 2,92%
Франция 2,77%
Малайзия 2,55%
Бразилия 2,45%
Испания 2,34%
Индонезия 2,30%
Канада 2,29%
Таиланд 2,20%
Турция 1,99%
Мексика 1,61%
Польша 1,55%
ОАЭ 1,50%
Иран 1,44%
Другие 30,78%

Распределение детектирований Trojan-Downloader.Win32.CodecPack на компьютерах
пользователей по странам (по статистике KSN)

Упаковщик

Увеличению размеров ботнета способствует, в частности, то, что для противодействия детектированию антивирусами вирусописатели защищают загрузчик CodecPack упаковщиком. Как уже было сказано выше, рекламные файлы, которые загружает Trojan-Downloader.Win32.CodecPack, также упакованы тем же упаковщиком, что и загрузчик. Упаковщик является полиморфным и использует методы антиэмуляции.

Перепаковка загрузчика и загружаемых им файлов осуществляется довольно часто, минимум раз в день, что делает задачу детектирования данного зловреда непростой.

botnet_april2011_pic27

Количество перепакованных вариантов загрузчика
Trojan-Downloader.Win32.CodecPack (по дням)

В ходе небольшого эксперимента на сервис антивирусной проверки Virustotal был отправлен загрузчик Trojan-Downloader.Win32.CodecPack, распространявшийся злоумышленниками двумя днями ранее. Результат проверки оказался очень даже неплохой: 40 антивирусов из 43 определили файл как вредоносный.

botnet_april2011_pic28

Результат проверки файла двухдневной давности

Те же самые действия были выполнены для сампла, распространяемого злоумышленниками в день проверки. Результаты проверки были, мягко говоря, не очень хорошими: всего 11 антивирусных продуктов из 43 задетектировали файл как вредоносный:

botnet_april2011_pic29

Удручающий результат проверки «свежего» сампла

Как выяснилось, злоумышленники проводят активный мониторинг детектирования перепакованных программ. Так, на одном из компьютеров был установлен наш продукт с включенным Kaspersky Security Network. В течение определенного времени мы получали нотификации о том, что perl-приложение на этом компьютере пытается скачать с определенных ссылок файлы, детектируемые нами как CodecPack. Эти ссылки имеют весьма интересный вид: они разоблачают названия ботов, присвоенные самими авторами, и показывают структуру папок на веб-сервере, раскрывая предназначение этого сервера.

botnet_april2011_pic30

Нотификации KSN о срабатывании Web Anti-Virus при попытке скачать детектирующийся файл

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

В заключение

Ботнет Artro существует уже более двух лет и за это время вырос до весьма внушительных размеров. Ключевая программа для формирования ботнета — загрузчик Trojan-Downloader.Win32.CodecPack, защищенный полиморфным упаковщиком, которым он перепаковывается несколько раз в день.

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

Мы продолжим внимательно следить за активностью ботнета Artro.

«Рекламный» ботнет

Ваш e-mail не будет опубликован. Обязательные поля помечены *

 

Отчеты

StripedFly: двуликий и незаметный

Разбираем фреймворк StripedFly для целевых атак, использовавший собственную версию эксплойта EternalBlue и успешно прикрывавшийся майнером.

Азиатские APT-группировки: тактики, техники и процедуры

Делимся с сообществом подходами, которые используют азиатские APT-группировки при взломе инфраструктуры, и подробной информацией о тактиках, техниках и процедурах (TTPs) злоумышленников, основанной на методологии MITRE ATT&CK.

Как поймать «Триангуляцию»

Эксперты «Лаборатории Касперского» смогли получить все этапы «Операции Триангуляция»: эксплойты нулевого дня для iOS, валидаторы, имплант TriangleDB и дополнительные модули.

Подпишитесь на еженедельную рассылку

Самая актуальная аналитика – в вашем почтовом ящике