Исследование

Байки из блокчейна

Криптовалюта постепенно превратилась из элемента утопической экономики нового мира в бизнес, затронувший даже наименее вовлеченные в информационные технологии слои общества. Одновременно с этим она обзавелась изрядным числом «неблагонадежных элементов», ставящих себе цель обогатится за счет других пользователей: майнеры, встроенные в пользовательские JS-скрипты, планы по внедрению майнеров в IoT устройства на этапе производства, бесчисленные вариации троянцев в связке с SMB эксплойтами и т.п.

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

DiscordiaMiner и форумные баталии

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

Продукты «Лаборатории Касперского» определяют данный троянец как Trojan.Win32.DiscordiaMiner. Работает он следующим образом:

  1. Создает в системе ряд каталогов, в которые в дальнейшем загружает необходимые для работы файлы;
  2. Копирует себя в C:\ProgramData\MicrosoftCorporation\Windows\SystemData\Isass.exe;
  3. Получает обновление с сервера;
  4. Создает задачу автозапуска;
  5. Получает файлы майнера;
  6. Получает учетные данные пользователя, для которого необходимо осуществлять майнинг;
  7. Запускает майнер.

Всё взаимодействие с командным сервером происходит в открытом виде с помощью GET-запросов, без проверки или верификации. В качестве C&C во всех семплах сейчас указан адрес hxxp://api[.]boosting[.]online. К адресу сервера добавляется ассоциированная с определенным пользователем строка (etc. MTn31JMWIT) и адрес необходимого ресурса − список файлов, обновление и т.д. Пример: hxxp://api[.]boosting[.]online/MTn31JMWIT/getDiscordia

Раздор на форуме

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

-user <user_email> -xmr

Используя значение аргумента <user_email>, первой же строкой выдачи поисковика получаем тему на русскоязычном форуме, посвященную троянцу:

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

На форуме в качестве аргумента в свою защиту автор DiscordiaMiner приводит кратковременность жизни данной ошибки:

Он же упоминает цифру в 200 000 зараженных машин. Сложно сказать, насколько она соответствует истине, однако в поступающих к нам образцах данного вредоноса часто фигурирует именно та почта, на которую ссылался «обвинитель». Примеры других адресов: ilya-soro*****12@mail.ru, v*****re@gmail.com, topne*****arin@gmail.com, J*****m@yandex.ru, steamfa*****aunt1@mail.ru, me*****ook@gmail.com, x*****z@yandex.ru, piedmont*****lines@yahoo.com .

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

И действительно, так же, первой строкой поисковика получаем ссылку на репозиторий автора.


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


Сами исходники представлены в полном объеме, и, по всей видимости, от сборки к сборке варьируется только ассоциированная с пользователем строка (ClientID).

Хотя «слив» исходного кода программы не является событием уникальным, однако данный случай во многом перекликается с историей NukeBot − те же споры на форуме с последующей публикацией исходников автором с целью «защиты чести и достоинства». Еще одной общей чертой является «минималистичный» дизайн обоих троянцев: NukeBot умел только внедрять веб-инжекты в браузер, а DiscordiaMiner – загружать и запускать файлы с удаленного сервера.Но имеют ли данные боты какую-то более конкретную связь, сказать нельзя.

MD5

00B35FB5C534DEA3EA13C8BE4E4585CC
083FD078FECFE156B17A50F73666B43E
0AB8E9C539554CBA532DFC5BC5E10F77
377B9C329EBF7ACFE7DABA55A0E90E98
48E6714A486B67D237B07A7CF586B765
4BD80738059B5D34837633692F18EA08
4E79B826AE4EC544481784EF77E05DE4
4EF5A04A56004AA93167F31296CCACF7
539B092C176183EDCA6A69421B62BCE8
5F8E4CF0971B543525CA807B6A2EC73F
65CF0CC192E69EA54373758C130A983F
7F65252701C80F8D4C1484EE06597DF0
80B04BBC2F18E3FE4625C3E060DA5465

CryptoShuffler

Случаи получения баснословного богатства среди авторов майнеров крайне редки. За редким исключением, используемые злоумышленниками кошельки содержат $50-100 в сумме по всем входящим переводам за всё время работы троянца. Однако находятся и такие, что не идут проторенной тропой и извлекают выгоду «альтернативными» способами. Авторы троянца CryptoShuffler относятся как раз к такой категории.

Продукты Лаборатории Касперского определяют данный троянец как Trojan-Banker.Win32.CryptoShuffler.gen. MD5 рассматриваемого файла: 0ad946c351af8b53eac06c9b8526f8e4

Ключевая особенность CryptoShuffler: вместо траты процессорного времени на майнинг, зловред просто подменяет адрес отправителя в буфере обмена! Так уже было когда-то с WebMoney и BitCoin, но данный зловред нацелен на все популярные криптовалюты.

Вначале, как это обычно и бывает, троянец прописывается в реестр в автозагрузку.

В более поздних версиях троянца данная процедура чуть отличается — в случае, если модуль реализован в виде динамически загружаемой библиотеки, последующий запуск её на старте осуществляется средствами системной утилиты rundll32. Имя вызываемой процедуры, а также по совместительству основной функции представленной библиотеки — call_directx_9.

Троянец создает поток выполнения, в котором поддерживает указанную на скриншоте выше ветку автозагрузки в неизменном состоянии.

Сама замена осуществляется с помощью связки API функций OpenClipboard\GetClipboardData\ SetClipboardData

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

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

WALLET Currency name
1v9UCfygQf3toN1vA5xyr7LhKmv9QWcwZ  BITCOIN
D7uMywpgSyvy9J2RkyQ2oozT4xTmSSWGgR  DOGECOIN
LeHrMiPzEUtJen73T5P1bVG2tG8PerzFR1  LITECOIN
Xv4M3y36iu6Fc5ikk8XuQBDFMtRz2xFXKm  DASH
0xfb25b3d5ae0d6866da17c4de253ce439b71d0903  ETHEREUM
4ZFYNck6mZfG52RMdWThJEXq4Sjdszf719  MONERO
N6VeTbNiFG1oapzPZmeLLkkNC55FQGMTgr  ???
t1VVkuasB7pNHPES2ei6LCqP1hZWb5rfPrB  ZCASH
PM44dh7LNEjThgmscw8t5rb9LZqEPc2Upg  ???

Больше всего денег злоумышленникам удалось получить с пользователей биткойн-кошельков − на момент написания данной статьи на балансе их кошелька в поступивших числилось ~23 BTC, что по курсу на конец октября составляло приблизительно $140 000. Суммы на остальных кошельках варьируются от десятков до тысяч долларов США.

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

MD5

095536CA531AE11A218789CF297E71ED
14461D5EA29B26BB88ABF79A36C1E449
1A05F51212DEA00C15B61E9C7B7E647B
1E785429526CC2621BAF8BB05ED17D86
2028383D63244013AA2F9366211E8682
25BF6A132AAE35A9D99E23794A41765F
39569EF2C295D1392C3BC53E70BCF158
50E52DBF0E78FCDDBC42657ED0661A3E
6EB7202BB156E6D90D4931054F9E3439
7AE273CD2243C4AFCC52FDA6BF1C2833
7EC256D0470B0755C952DB122C6BDD0B
80DF8640893E2D7CCD6F66FFF6216016
AA46F95F25C764A96F0FB3C75E1159F8
B7ADC8699CDC02D0AB2D1BB8BE1847F4
D45B0A257F8A0710C7B27980DE22616E
D9A2CD869152F24B1A5294A1C82B7E85

Байки из блокчейна

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

 

  1. Deadooshka

    Прикроют торговлю этим криптовоздухом — туда ему и дорога. Не все пока понимают, что это воздух. Но понимание неизбежно придёт.

Отчеты

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

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

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

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

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

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

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

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