Приманка с фотографиями квартиры привела к Cobalt Strike Beacon

Приманка с фотографиями квартиры привела к Cobalt Strike Beacon

В конце июля 2026 года на файлообменнике SwissTransfer появился архив с названием и содержимым, которые выдавали его за фотографии лондонской квартиры. Внутри вместо снимков лежал ярлык Windows, и один запуск этого ярлыка раскручивал многоступенчатую цепочку из скриптов, упаковщиков и 64-битного шеллкода. Финал цепочки - Beacon Cobalt Strike, который работал в памяти заражённого компьютера и не оставлял на диске ни одного файла.

Описание

По данным Threatcat, цепочку восстановили при разборе одного образца и разложили по этапам распаковки, от ярлыка до финальной библиотеки Beacon. Ярлык не открывал изображения и не показывал ошибок: при запуске он скрыто вызывал консольный процесс и передавал управление командному скрипту. Тот искал в теле собственного файла метку-маркер, по её смещению вытягивал спрятанный блок данных через обращение по локальному адресу и распаковывал его без запросов к внешним серверам.

Извлечённый блок оказывался гибридом: файл корректно работал и как batch-скрипт, и как код PowerShell, поэтому проверка одним инструментом давала неполную картину. Внутри лежали два крупных блока в Base64 - PDF-приманка для отвлечения пользователя и сжатая.NET-сборка, которую запускали прямо в памяти. После старта сборки дроппер стирал собственный файл, и на диске оставался только открытый документ, который видел пользователь.

Дальше работала цепочка.NET-упаковщиков, по слою на этап, причём ключ XOR менялся от слоя к слою. Каждый упаковщик читал встроенный ресурс, снимал свой слой и распаковывал gzip-поток, а на выходе получалась следующая сборка, которую запускали сразу из памяти. Промежуточные модули не касались файловой системы, поэтому разбор потребовал пошагового снятия слоёв вручную.

Последний загрузчик разворачивал в памяти 64-битный шеллкод, не создавая отдельного файла. Он выделял исполняемую область, менял её защиту на чтение, запись и исполнение и передавал управление буферу внутри текущего процесса. Шеллкод оказался PrependLoader из Cobalt Strike: он снимал слои шифрования и распаковки, обходил защиту вызовов и подгружал библиотеку Beacon порциями с задержками.

Настройки Beacon указывают на HTTPS-канал, обмен задачами через запросы двух видов и сон в 30 секунд со случайным разбросом. В конфигурации включены маскировка сна, непрямые системные вызовы, инъекции в чужие процессы и отложенная подгрузка, а дата прекращения работы - 8 июля 2027 года. Для постэксплуатации в настройках упомянут запуск через провайдер WMI.

При этом авторы не утверждают, что все перечисленные возможности применялись на практике: часть настроек описывает доступные механизмы, а не наблюдаемые действия. Точный билд Beacon не подтверждён - исследователи оценивают версию как 4.13 или более новую. Кто стоит за атакой и кому адресована приманка, в публикации не раскрывается, поэтому связь с известными кампаниями остаётся неясной.

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

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