Наглости не занимать. На GitHub обнаружен троян, нацеленный на специалистов информационной безопасности

Горячая лента угроз | «Горячие» новости | Все новости

Внимание специалистов антивирусной лаборатории «Доктор Веб» привлекли зараженные репозитории на GitHub. В них были обнаружены проекты среды разработки Microsoft Visual Stuido с вредоносным кодом, который содержался в файлах .suo, .csproj, а также в файлах с исходным кодом на языке Python и Go. Финальная нагрузка — приложение Microsoft.exe, которое способно хитроумно обходить уровни защиты, чтобы реализовать бэкдор, клиппер и похитить ценные данные пользователей. Наиболее интригующей деталью в этом кейсе является то, что вредоносные проекты ориентированы на пользователей, интересующихся криптоиграми и ... специалистов по информационной безопасности. На момент проведения исследования было заражено более 2 000 ПК.

Источник заражения

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

Пример зараженного репозитория для Telegram-игры Catizen

В подобных репозиториях содержатся:

  • файл .csproj с инструкцией PreBuildEvent, которая запускает вредоносный код перед компиляцией проекта,
  • файлы .suo с зашитой PowerShell командой.

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

.csproj файл с вредоносным кодом

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

  • muckanthropic[.]com
  • muckduck.duckdns[.]org
  • muckcoding[.]com
  • muckdeveloper[.]com
  • 130.12.182[.]172

Зараженный репозиторий, содержащий скрипт для разбора, очистки и форматирования результатов Fscan

Python файл с внедренным вредоносным кодом

Golang файл с внедренным вредоносным кодом

Схема заражения

PowerShell.Packed.270

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

  • C:\Users\Public\Pictures\t.ps1,
  • C:\Users\Public\Pictures\L.ps1.

PowerShell.Packed.270

Скрипт способен обращаться как к серверам злоумышленников, так и к легитимным сервисам: YouTube, Telegram, Google-документы, GitCode, Pastebin.

Зашифрованная строка на сервисе Pastebin

Оттуда троян получает строку, которая после расшифровки становится ссылкой на архив Quixo.7z. Далее архив скачивается с серверов злоумышленников или GitHub и распаковывается в директорию C:\ProgramData\Windows.Microsoft.Photos.

Microsoft.exe (Trojan.Loader.3261)

Внутри архива находится приложение, написанное на фреймворке Electron — именно оно и наносит ущерб. Троян имеет сложную модальную структуру, актуальная версия на момент написания статьи — 1.4.5. Trojan.Loader.3261 обладает широким набором функций:

  • скачивает файл Nexara.7z: в нем зашифрованная полезная нагрузка, конфигурации и вспомогательные файлы;
  • собирает информацию о ПК и отправляет злоумышленникам через Telegram-бота;
  • устанавливает себя в автозагрузку;
  • повышает привилегии 2 разными способами;
  • отключает Windows Defender, UAC, уведомления, System Restore, VSS;
  • добавляет исключения Windows Defender;
  • внедряет вредоносные файлы в легитимные процессы (BackDoor.AsyncRAT.115, Trojan.InjectNET.14);
  • распаковывает и запускает дополнительную нагрузку из архива Nexara/Nvdia.7z (JS.Stealer.191);
  • удаляет антивирусы McAfee, ESET и Malwarebytes;
  • модифицирует файл по адресу C:\windows\system32\drivers\etc\hosts.

Вирусописатели назвали способы реализации внедрения вредоносных файлов mode3, mode2, mode3non и handler. Разберем их по очереди.

Mode3

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

  • PPID spoofing — подменяет PID родительского процесса под идентификатор explorer.exe.
  • Smart App Control bypass — обходит защитную функцию Smart App Control, которая блокирует недоверенные или потенциально опасные программы до их запуска. Для этого троян меняет значение параметра VerifiedAndReputablePolicyState в реестре Windows.
  • Ntdll.dll unhooking — нейтрализует хуки в системной библиотеке ntdll, поставленные, к примеру, при помощи EDR-системы. Троян считывает оригинальный ntdll.dll с диска и сравнивает его с существующим в процессе. Если обнаруживает отличия, похожие на инструкции хуков, он переписывает их на основе первоначальных данных библиотеки.
  • Halo’s Gate — позволяет вызывать системные функции Windows напрямую через syscall, что затрудняет перехват вызовов со стороны EDR. Троян извлекает SSN номера для NT-функций, необходимых для реализации внедрений.
  • ETW patch — отключает телеметрию Event Tracing for Windows при помощи патчинга ntdll.dll!EtwEventWrite в памяти процесса.
  • AMSI patch — изменяет функцию AmsiScanBuffer в библиотеке amsi.dll, из-за чего запускающиеся в процессе скрипты не отправляются на проверку антивирусу.

В случае успешного обхода защит троян выбирает один из процессов, в который будет внедряться: RegAsm.exe, dwwin.exe, dwm.exe. Вредоносные модули содержатся в распакованных из Nexara.7z файлах: boot_f, kernel_f, thread_f. Они зашифрованы, ключи шифрования находятся в Nexara /manifest/config.json под значениями b_f, k_f, t_f.

После внедрения в процессы троян проверяет соединения c управляющим сервером при помощи PowerShell скрипта и утилиты Netstat. Если хотя бы одна полезная нагрузка не смогла внедриться, скрипт может отправить отчет об ошибке в Telegram-бота.

Mode2

Троян реализует этот мод, если не удалось запустить полезную нагрузку. Mode2 работает по алгоритму:

  • расшифровывает и проверяет файлы thumbcache_{11..20}.dll из архива Nexara.7z — в них реализуются функции для внедрения;
  • вносит исключения regasm.exe, dwm.exe в Windows Defender;
  • расшифровывает части PowerShell скрипта (PowerShell.Inject.245) из конфигурации, затем записывает его в папку temp со случайным названием и запускает. В свою очередь скрипт расшифровывает файлы boot_f, kernel_f, thread_f и внедряет их в процесс RegAsm.exe;
  • ищет файл cryptwizard, расшифровывает его и внедряет в процесс dwwin.exe. На момент написания новости этого файла не существует, флаг его запуска установлен как false;
  • проверяет подключения к C2 серверу с помощью PowerShell скрипта и утилиты Netstat.

Mode3non

Повторяет функциональность Mode3 за исключением техник обхода защит.

Handler

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

Главная задача всех вышеперечисленных модов — запуск трех вредоносных нагрузок: двух файлов BackDoor.AsyncRAT.115 и Trojan.InjectNET.14.

BackDoor.AsyncRAT.115

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

Trojan.InjectNET.14

Этот троян внедряет в процесс regasm.exe файл Trojan.Clipper.688, который подменяет адреса криптокошельков в буфере обмена. В процессе замены делает скриншот экрана и отправляет в Telegram-бота вместе с информацией о версии клиппера, имени активного окна, имени пользователя и его IP.

После внедрения полезных нагрузок троян распаковывает из архива Nexara/Nvdia.7z еще одну программу, написанную на фреймворке Electron — стилер JS.Stealer.191.

JS.Stealer.191

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

  • данные из браузеров;
  • XML-файлы программы FileZilla;
  • файл MobaXterm.ini программы MobaXterm;
  • файл wcx_ftp.ini программы TotalCommander;
  • конфигурации VPN;
  • файлы мессенджеров;
  • аккаунты игр;
  • аккаунты игровых сервисов;
  • токены Discord.

Похищенные данные архивируются и отправляются злоумышленникам через Telegram-бота.

Если на зараженной машине установлены антивирусы ESET, McAfee, Malwarebytes, троян пытается их удалить.

Код удаления антивирусов

В системный файл system32\drivers\etc\hosts троян добавляет запись о блокировании ряда доменов антивирусных вендоров. Дополнительно ВПО удаляет все файлы и папки в директории system32\drivers\etc\, кроме разрешенных hosts, networks, protocol, services, lmhosts.sam, что призвано помешать пользователю воспользоваться бэкапами.

Будущие возможности

Злоумышленники постоянно модифицируют код и добавляют трояну новые возможности. К примеру, исследователи обнаружили неиспользуемые функции, отвечающие за скачивание и запуск еще одного архива — Lodge.7z. В нем находится только еще разрабатываемый на фреймворке Electron проект. Исполняемый файл в нем — WUDFHost.exe. По коду можно определить некоторые будущие функции:

  • создание сервиса с помощью утилиты sc.exe для закрепления Microsoft.exe;
  • контроль наличия Microsoft.exe на диске и повторная загрузка в случае отсутствия;
  • контроль за автозагрузкой;
  • установка своих обновлений.

Как видно из описания возможностей трояна, он представляет серьезную опасность даже для опытных пользователей, включая специалистов по информационной безопасности. Чтобы не допустить заражения ПК, рекомендуем регулярно обновлять антивирусные базы и проверять все скачанные из интернета файлы. Антивирусы Dr.Web Security Space и Dr.Web Desktop Security Suite распознают этот троян и оперативно удаляют зараженные файлы.

Подробнее об Trojan.Loader.3261

Подробнее об Trojan.Clipper.688

Подробнее об JS.Stealer.191

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

0
Последние новости Все новости