Кампания ShadowRecruit: APT36 использует Google Sheets для управления трояном при атаке на соискателей госдолжностей в Индии

APT

Исследовательская группа Seqrite APT Research Team выявила новую многоэтапную кампанию, нацеленную на граждан Индии, ищущих работу в государственных структурах. Злоумышленники, действующие, по оценкам аналитиков, в рамках группы APT36 (Transparent Tribe), используют поддельные объявления о найме для доставки вредоносного программного обеспечения. Финальная полезная нагрузка получила название SheetAgent RAT - троян удаленного доступа, использующий Google Sheets в качестве резервного командно-контрольного сервера.

Описание

Кампания, обозначенная как Operation ShadowRecruit, была обнаружена в ходе охоты на угрозы. Исходным вектором атаки является ZIP-архив с именем Approved Documents 2026.pdf.zip. Внутри архива находятся три файла: исполняемый файл Document.exe, LNK-файл (ярлык) Document-24062026-Y6352634.lnk и PowerShell-скрипт JT-agenda.ps1. Два последних файла скрыты атрибутом Hidden, поэтому жертва видит только ярлык, которому злоумышленники присвоили иконку браузера Microsoft Edge для придания легитимности.

При запуске LNK-файла активируется командная строка PowerShell, которая незаметно (в скрытом и неинтерактивном режиме) выполняет скрипт JT-agenda.ps1. Этот скрипт является второй стадией заражения. После декодирования Base64-команды выяснилось, что скрипт загружает с сервера demo.controlr.app инсталлятор легитимного инструмента удаленного администрирования ControlR. Установка выполняется с предопределенными параметрами, включающими идентификатор клиента (tenant ID), ключ доступа (key secret) и идентификатор ключа (key ID). Согласно анализу Seqrite, таким образом атакующие получают постоянный удаленный доступ к системе через официальное программное обеспечение, подписанное компанией Bitbound.

После установки ControlR PowerShell-скрипт запускает исполняемый файл Document.exe - третий этап цепочки. Document.exe представляет собой 32-битный .NET-дроппер. При запуске он создает в папке %APPDATA%\Microsoft\ каталог WinSyncDefender, имитирующий имя системного компонента Windows. Затем дроппер извлекает из своих внедренных ресурсов два файла: agent.exe (финальная полезная нагрузка) и Document.lnk (для отображения отвлекающего документа). Для закрепления в системе используются два механизма: создание запланированной задачи WindowsDefenderSyncService, запускающей agent.exe при входе пользователя и затем с интервалом в три минуты, или, в случае неудачи, размещение ярлыка WindowsDefenderSync.lnk в папке автозагрузки.

Документ Document.lnk служит приманкой. Он запускает PowerShell для загрузки PDF-файла с командно-контрольного сервера (IP 38.242.157[.]89) и немедленно открывает его на экране жертвы. PDF имитирует сканированную страницу известной индийской газеты Employment News с объявлением о наборе старших полевых сотрудников в секретариат кабинета министров. В объявлении указаны реальные реквизиты, включая критерии отбора, необходимые баллы GATE и сроки подачи заявок.

Основной полезной нагрузкой является agent.exe, переименованный в WindowsDefenderSyncService.exe и названный исследователями SheetAgent. Это кастомный .NET-троян, который выступает в роли резервного канала управления. При первом запуске троян аутентифицируется на серверах Google, используя жестко встроенные в код учетные данные служебной учетной записи service@sheet12-500308.iam.gserviceaccount.com с полным доступом к Google Sheets и Google Drive. После аутентификации троян подключается к заранее определенной Google-таблице, где каждая колонка выполняет свою функцию: колонка A содержит имя компьютера жертвы, B - временную метку, C - команды от атакующего, D - результаты выполнения, E - публичный IP-адрес, F - статус агента, H - оповещения, J - список URL для мониторинга.

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

SheetAgent также включает 14 различных методов обнаружения виртуальных сред и песочниц. Система проверяет производителя материнской платы, данные BIOS, процессы VMware и VirtualBox, MAC-адреса, драйверы, реестры, а также ищет типичные имена пользователей аналитических стендов. При обнаружении признаков изолированной среды троян запускает процедуру самоочистки: создает временный пакетный файл cleanup.bat, который удаляет исполняемый файл, конфигурацию service.json и сам пакет.

Анализ инфраструктуры показал, что сервер 38.242.157[.]89 использовался не только для хранения приманки, но и для размещения нескольких веб-панелей управления на разных портах. На порту 9000 обнаружена панель SecureMonitor, на порту 7000 - панель PrivateRat с указанием разработчика HeartMelt, на порту 8000 - дополнительный интерфейс, требующий аутентификации. При аутентификации через скомпрометированную служебную учетную запись исследователи получили доступ к Google Drive, где обнаружили две пустые папки: R-MSI-00-15-5d-9b-ea-f9 и Data, владельцем последней значился аккаунт otp.applyanyjob@gmail.com.

На основе совпадений тактик, техник и процедур (TTPs) исследователи с умеренной уверенностью связывают кампанию с группой APT36. Ранее Zscaler ThreatLabz уже описывал схожие атаки с использованием Google Sheets для управления .NET-троянами и теми же механизмами персистентности.

Для защиты от подобных угроз организациям и частным пользователям рекомендуется не открывать вложения от неизвестных отправителей, проверять цифровые подписи исполняемых файлов, ограничивать использование легитимных RMM-инструментов только сертифицированными администраторами и настроить политики обнаружения запуска скриптов PowerShell из офисных документов. Использование легитимных облачных сервисов для командно-контрольных каналов делает традиционные списки блокировки IP-адресов неэффективными, поэтому приоритет следует отдавать поведенческому анализу и мониторингу аномального доступа к Google Sheets из процессов, не связанных с браузером.

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

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