Привет, меня зовут Dtrack

Наше исследование RAT-троянца Dtrack началось с наблюдения за другой активностью. В конце лета 2018 года мы нашли банкер ATMDtrack, нацеленный на индийские финансовые учреждения. Анализ показал, что этот зловред внедрялся киберпреступниками в банкоматы, где считывал данные вставляемых карт и сохранял их на ресурсах злоумышленников. Естественно, нам захотелось узнать о нем все подробности, и используя YARA и автоматизированную систему атрибуции «Лаборатории Касперского» (Kaspersky Attribution Engine), мы нашли более 180 новых образцов шпионских инструментов, позднее названных Dtrack.

Все изначально обнаруженные нами образцы Dtrack были расшифрованными дампами памяти, хотя изначально они доставляются разными дропперами только в шифрованном виде. Мы смогли найти их благодаря общим характерным последовательностям байтов в дампах памяти ATMDtrack и Dtrack. Дальше началось самое интересное. Как только мы расшифровали итоговую полезную нагрузку у дроппера Dtrack и снова применили Kaspersky Attribution Engine, обнаружилось много общего с кампанией DarkSeoul далекого 2013 года, которую приписывают группировке Lazarus. Очень похоже, что злоумышленники использовали часть своего старого кода, чтобы атаковать финансовую отрасль и исследовательские центры Индии. Наша телеметрия показывает, что последняя активность DTrack наблюдалась в начале сентября 2019 года.

Технические подробности

Зашифрованная полезная нагрузка, встроенная в дроппер как оверлей, — дополнительные данные, которые не используются во время стандартных шагов исполнения программы. Функция расшифровки оверлея, внедряемая злоумышленниками как патч, запускалась где-то между функциями start() и WinMain(). Забавно, что авторы зловреда встраивали свой вредоносный код в безобидные исполняемые файлы. Например, в некоторых случаях это был пример MFC-проекта в Visual Studio, но встречались и другие программы.

В расшифрованных данных оверлея содержались следующие артефакты:

  • дополнительный исполняемый файл;
  • шелл-код для подмены кода процесса (Process Hollowing);
  • список предопределенных имен исполняемых файлов, используемых вредоносным ПО в качестве имен будущего процесса.

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

  • fontview.exe
  • dwwin.exe
  • wextract.exe
  • runonce.exe
  • grpconv.exe
  • msiexec.exe
  • rasautou.exe
  • rasphone.exe
  • extrac32.exe
  • mobsync.exe
  • verclsid.exe
  • ctfmon.exe
  • charmap.exe
  • write.exe
  • sethc.exe
  • control.exe
  • presentationhost.exe
  • napstat.exe
  • systray.exe
  • mstsc.exe
  • cleanmgr.exe

Что внутри дроппера?

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

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

  • клавиатурный шпион;
  • получение истории браузера;
  • сбор IP-адресов хостов, информации о доступных сетях и активных соединениях;
  • список всех запущенных процессов;
  • список всех файлов на всех доступных дисках.

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

Помимо вышеупомянутых исполняемых файлов, дропперы также содержали средства удаленного администрирования ПК (Remote Administration Tool, RAT). Исполняемый файл RAT позволяет злоумышленникам выполнять различные операции на хосте, такие как загрузка, скачивание, запуск файлов и т. п. Полный список операций приводится в таблице ниже.

Id команды Описание
1003 загружает файл на компьютер жертвы
1005 делает целевой файл персистентным с автоматическим исполнением при запуске хоста жертвы
1006 скачивает файл с компьютера жертвы
1007 создает дамп данных со всех дисков и загружает его на хост, контролируемый злоумышленниками
1008 создает дамп выбранного тома и загружает его на хост, контролируемый злоумышленниками
1011 создает дамп выбранной папки и загружает его на хост, контролируемый злоумышленниками
1018 задает промежуток между проверками новых команд
1023 завершает процесс, отключает персистентность и удаляет себя
по умолчанию исполняет процесс на хосте жертвы

Что общего у зловредов Dtrack и ATMDTrack?

ATMDTrack — это подсемейство DTrack. Несмотря на сходство, выглядят они по-разному. Например, полезная нагрузка Dtrack зашифрована внутри дроппера, а образцы ATMDTrack не зашифрованы вовсе. Однако после расшифровки полезной нагрузки Dtrack становится очевидным то, что его делали те же разработчики. В обоих проектах используется похожий стиль и функции. Самая очевидная из них — функция для манипуляций со строками, которая поверяет наличие подстроки «CCS_» в начале входной строки. Если подстрока есть, функция вырезает ее и возвращает измененный вариант; в противном случае она использует первый байт как аргумент для операции XOR и возвращает расшифрованную строку.

Функция, объединяющая оба семейства (названия функций и аргументов даны исследователями)

Функция, объединяющая оба семейства (названия функций и аргументов даны исследователями)

Выводы

Впервые обнаружив ATMDtrack, мы подумали, что наткнулись на очередное семейство вредоносного ПО для банкоматов, которые появляются с завидной регулярностью. Однако этот случай в очередной раз показал, насколько важно писать подходящие YARA-правила и иметь надежную систему атрибуции. Только так можно обнаружить связи с ранее известными семействами вредоносного ПО. Один из самых ярких примеров — атрибуция WannaCry. Теперь мы можем добавить в послужной список группы Lazarus еще одно семейство: ATMDtrack и Dtrack.

Огромное количество найденных нами образцов Dtrack говорит о том, что Lazarus является одним из самых активных разработчиков вредоносного ПО среди APT-группировок. Она продолжает создавать зловредов быстрыми темпами и расширяет сферу деятельности. Ранние образцы созданного ею семейства вредоносного ПО, о котором идет речь в этой статье, встретились нам в 2013 году, когда мишенью злоумышленников был Сеул. Сейчас, шесть лет спустя, она атакует финансовые организации и исследовательские центры Индии, используя схожие инструменты для атак с целью шпионажа или получения финансовой выгоды.

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

  • слабые политики сетевой безопасности;
  • слабые пароли;
  • отсутствие мониторинга трафика.

В связи с этим мы рекомендуем компаниям:

  • ужесточить свои политики сетевой безопасности и использовать более сложные и надежные пароли;
  • использовать ПО для мониторинга трафика, например платформу Kaspersky Anti Targeted Attack (KATA);
  • использовать антивирусные решения.

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

  • 8f360227e7ee415ff509c2e443370e56
  • 3a3bad366916aa3198fd1f76f3c29f24
  • F84de0a584ae7e02fb0ffe679f96db8d

Публикации на схожие темы

Добавить комментарий

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