Инфраструктура стилера Remus оказалась масштабнее ожидаемого: пять смарт-контрактов и автоматизированная кампания

Stealer

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

Описание

Поводом для углубленного анализа стали данные из предыдущих отчетов, которые указывали на несколько IP-адресов и доменов. Исследователь решил перепроверить все найденные ранее зацепки и в итоге вышел на гораздо более сложную архитектуру. Инфраструктура Remus охватывает более 15 автономных систем (ASN) - то есть провайдеров и сетей по всему миру. При этом явно выделяются два концентратора. На первом, принадлежащем хостинг-провайдеру Hostinger, расположено более 15 доменов, привязанных к восьми адресам. Второй концентратор - AS 206834 (Team Internet AG) - содержит более 20 доменов, сконцентрированных на одном единственном IP 185.53.179[.]128. Этот адрес может выступать в роли центральной точки сбора и эксфильтрации (утечки) похищенных данных.

Почти все обнаруженные домены используют зону .biz. Такая массовая регистрация указывает на автоматизированный характер кампании - операторы, скорее всего, создавали их единым пакетом. Чтобы подтвердить эту гипотезу, специалисты изучили даты регистрации и сертификаты. Оказалось, что большинство .biz-доменов было зарегистрировано в начале марта через одного регистратора - Dynadot. При этом общие цифровые отпечатки сертификатов дополнительно связывают эти домены в единую сеть. Об этом подробно рассказал автор исследования в своем отчете, где привел данные анализа платформы Validin, специализирующейся на DNS и сертификатах.

Однако самым интересным открытием стал блокчейн-след. Ранее исследователь уже находил связь между кошельком операторов Remus и смарт-контрактами (программами, выполняемыми в блокчейне) сети Ethereum. Тогда удалось извлечь один рабочий адрес сервера управления (C2) - центра, откуда стилер получает команды. Но это был лишь фрагмент картины. Вернувшись к транзакциям, аналитик заметил, что операторы отправляли эфир (криптовалюту Ethereum) не только на один, но и на другие кошельки. Проверка этих адресов выявила еще четыре смарт-контракта. Один из них даже имел говорящее название - "DataStore" ("Хранилище данных"). Даты создания этих контрактов совпадают с первоначальными находками, сделанными 61 день назад - это укрепило уверенность в их принадлежности к той же кампании.

Всего теперь известно о пяти контрактах. Первый, названный DomainStorage, работал на версии Solidity 0.8.20 и хранил домены в открытом поле без какой-либо проверки. Четыре остальных - это эволюция под названием DataStore. Первая версия DataStore (v1) также не проверяла вводимые данные, но уже публиковала событие при обновлении. Вторая версия (v2) стала строже: данные теперь хранятся в приватной переменной, читать их можно только через специальную функцию, и внедрена проверка формата URL - обязательно http://хост:порт с числовым портом от 1 до 65535. Кроме того, события теперь фиксируют и старое, и новое значение, что позволяет восстановить историю смены командных центров. Третья версия (v3) пошла еще дальше: владелец контракта назначается один раз и не может быть изменен, все события удалены, а длина URL ограничена 31 байтом - это экономит затраты на газ (комиссию за транзакции) в сети Ethereum.

Именно в коде третьей версии исследователь нашел самую интересную деталь. В строке 31 комментарий на русском языке гласит: "// min: "http://a:1", max 31 для дешёвого хранения (1 slot)". Это прямое указание на то, что разработчик использовал русский язык для заметок. Хотя сам по себе комментарий - лишь техническая оптимизация, он становится важным штрихом к портрету злоумышленников. Экосистема Remus и его предшественника Lumma исторически была связана с русскоязычными хакерскими группами. Однако исследователь подчеркивает: это не является окончательным доказательством, а лишь дополнительным указанием.

В итоге картина вырисовывается следующая. Операторы Remus активно развивают свою инфраструктуру: они начали с простого контракта без защиты, затем перешли к более надежным версиям, а в финале вообще отказались от логирования ротации C2, чтобы замести следы. Использование блокчейна Ethereum позволяет им размещать команды управления в публичной сети, доступной из любой точки мира, при этом формально не привязываясь к конкретным серверам. Сама кампания явно автоматизирована - об этом говорят массовая регистрация .biz-доменов и распределение по разным хостингам. Впрочем, у блокчейн-метода есть свои ограничения: без новых образцов вредоносного ПО или свежих транзакций, указывающих на следующие контракты, цепочка поиска обрывается. Тем не менее созданные мониторы событий для платформы Dune могут помочь в будущем обнаружить новые домены, как только операторы обновят свои записи.

Индикаторы компрометации

IPv4

  • 103.211.219.238
  • 137.184.153.47
  • 147.135.84.14
  • 148.230.76.66
  • 15.235.192.42
  • 168.231.114.49
  • 178.104.90.74
  • 185.53.179.128
  • 194.164.72.136
  • 195.19.194.107
  • 31.97.61.212
  • 37.77.150.108
  • 45.85.147.53
  • 5.189.165.117
  • 5.231.25.31
  • 5.45.184.254
  • 62.72.32.156
  • 65.21.104.235
  • 67.205.186.254
  • 68.183.161.221
  • 68.183.61.221
  • 72.61.25.108
  • 76.13.17.11
  • 78.111.111.236
  • 79.111.111.236
  • 85.31.234.218
  • 89.58.10.69
  • 94.231.205.229
  • 95.217.206.239

Domains

  • adveryx.biz
  • chalx.live
  • clasl.pics
  • clou-dprotect.co
  • fightwa.biz
  • interxo.biz
  • lilyofz.cloud
  • managew.biz
  • nitroca.biz
  • poxap.top
  • siltsoh.biz
  • verifi-cation.com

Contracts

  • 0x39d689037e80cb54004d0943d927aa2b57cd5c0d
  • 0x5b394cd35336688F3753C4ECF1f0fB996763f318
  • 0x999941b74F6bbc921D5174A5b29911562cd2D7CF
  • 0xB7e68f60466726951C1Aaee60FF598E95685a4dF
  • 0xd3b72fd8acfe7ddff21de37bee562df2fa32e287
  • 0xf6896c4ddd2b821d5d2b3c18459acd9b5ec1ce21

Комментарии: 0