Анализ операции Poisson: снос C2-сервера оказался недостаточной мерой защиты

information security

Cato CTRL представила детальное исследование деятельности французоязычного злоумышленника под псевдонимом Poisson. Материал охватывает 33 дня непрерывного наблюдения за его командным сервером, с 30 марта по 1 мая 2026 года. За этот период оператор отдал 339 команд и скомпрометировал четыре цели: малое предприятие автомобильной отрасли во Франции и четырёх частных лиц. Исследование показывает, что даже после вывода из строя сервера управления и связи (C2) атакующий сохранил доступ к одному из устройств благодаря механизму устойчивости на базе VPN-сетки (mesh VPN).

Описание

Специалисты Cato CTRL получили уникальную возможность проанализировать действия Poisson в режиме, близком к реальному времени. Обычно отчёты о киберпреступлениях составляют спустя недели или месяцы на основе образцов вредоносного кода и криминалистических следов. В этом случае исследователи изучили полную историю команд, а также сопутствующую телеметрию. Poisson использовал фреймворк Havoc C2, размещённый на сервере 217[.]154[.]217[.]139. Для хранения инструментов он задействовал четыре сегмента облачного сервиса Backblaze B2. Примечательно, что оператор допустил грубую ошибку - оставил собственные ключи SSH и пошаговую инструкцию к действиям в публично доступном сегменте, что и позволило команде Cato CTRL восстановить полную картину.

Poisson - так называемый оператор начального уровня. Его инфраструктура была полностью бесплатной: DuckDNS для динамического DNS, Backblaze B2, дешёвый виртуальный сервер IONOS в Берлине. График активности совпадал со школьными часами - работа начиналась после 15:00 по центральноевропейскому времени, с перерывом в середине дня и редкими ночными сессиями. Несмотря на неопытность, он добился успеха: четыре устройства были взломаны, учётные данные украдены, а доступ сохранился даже после отключения его командного сервера.

Многоступенчатая атака начиналась с VBS-скрипта sys.vbs, который после 120-секундной задержки (приём для обхода песочниц) расшифровывал встроенный код PowerShell. Затем загружалась библиотека senti.dll - четырёхслойная "матрешка" размером 3,1 МБ. Внутри неё находился shellcode, закодированный с помощью 207 813 английских слов, каждый из которых соответствовал одному байту. После распаковки выполнялась полезная нагрузка - агент Demon для Havoc. При этом на диск ничего не записывалось. Для получения прав администратора Poisson использовал не обход UAC (контроля учётных записей), а прямой вызов диалогового окна согласия. На одной из машин понадобилось 12 попыток в течение двух дней, пока пользователь нажал "Да".

После закрепления в системе оператор установил скрытый планировщик задач TaskAdmin1, ярлык в папке автозагрузки и внедрил shellcode в процесс Explorer.EXE. В качестве резервного канала он развернул кастомную сборку RustDesk - программы удалённого доступа - со своими параметрами ретрансляции. Но ключевым элементом стал кейлоггер. Это 70-строчный скрипт на Python, использующий библиотеку pynput. Он записывал все нажатия клавиш в локальный текстовый файл без отправки на внешний сервер. Poisson вручную забирал логи через Havoc. Во время одной из проверок он обнаружил около 3000 символов. Он также изменил параметры электропитания командой powercfg, чтобы компьютер не переходил в спящий режим и оставался доступным для сбора данных 24 часа в сутки.

Самый продуманный ход Poisson совершил на восьмой день атаки. За пятичасовую ночную сессию он загрузил из своего хранилища B2 (сегмент "sentiwaw") пакеты SSH, установил сервер OpenSSH на Windows-машину жертвы, а затем развернул клиент Tailscale VPN. Устройство было подключено к его VPN-сетке. Он настроил аутентификацию по ключам и организовал обратный SSH-туннель с параметром ssh -R. Теперь для доступа к скомпрометированному компьютеру не требовался C2-сервер - достаточно было любого подключения к интернету через зашифрованный канал Tailscale. Никакие публичные порты не открывались.

На девятый день, 8 апреля, сервер Havoc C2 неожиданно перестал отвечать. Оба компонента - teamserver и редиректор - исчезли. Однако созданная Poisson инфраструктура продолжала работать. Планировщик задач запускал агент при каждой загрузке, SSH-сервер прослушивал порт, а VPN-сетка оставалась активной. Спустя 18 дней, 26 апреля, C2 вернулся в строй, и агенты автоматически восстановили соединение. За следующие пять дней Poisson отдал ещё 145 команд. Он снова извлекал логи кейлоггера и в конце апреля работал с файлом Thales.zip. Исследователи зафиксировали запуск неизвестного .NET-приложения WinFormsApp1.exe и его самодостаточной версии Thal.exe размером 148 МБ. Что именно выполняла эта программа в течение 32 минут - остаётся открытым вопросом. Сразу после завершения оператор удалил 17 файлов, включая все артефакты, связанные с Thales, но оставил кейлоггер активным.

Предоставленный отчёт Cato CTRL подчёркивает, что владельцы малого бизнеса и частные лица часто остаются без внимания со стороны систем защиты - у них нет собственных центров мониторинга (SOC) или услуг MDR (управляемого обнаружения и реагирования). Poisson, будучи учеником, сумел скомпрометировать реальные машины, украсть реальные пароли и построить устойчивый доступ, не зависящий от основного командного сервера. Он не использовал сложных техник - ни Mimikatz, ни латерального перемещения. Его целью исключительно были учётные данные: банковские логины, пароли от электронной почты и порталов государственных услуг. Он просматривал папки загрузок жертв, но не копировал документы. Ему было важно то, что люди вводят с клавиатуры.

Выводы, которые делает команда Cato CTRL, прямо указывают на изменение подходов к реагированию. Традиционное отключение C2-сервера больше не может считаться завершением атаки. Даже неопытный оператор, использующий бесплатные инструменты и допустивший множество ошибок, способен создать резервный канал доступа, который переживёт потерю управления. В данном случае этот канал просуществовал все 33 дня наблюдения, и без активного выявления и демонтажа VPN-сетки и дополнительных служб ремедиация не начиналась. Если студент на бесплатной инфраструктуре смог построить такую атаку, то действия мотивированных и ресурсообеспеченных злоумышленников представляют собой угрозу качественно иного уровня.

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

IPv4

  • 217.154.162.45
  • 217.154.217.139

Domains

  • pois43.s3.eu-central-003.backblazeb2.com
  • sentiwaw.s3.eu-central-003.backblazeb2.com
  • w456w5.s3.eu-central-003.backblazeb2.com
  • wawsenti.duckdns.org

SHA256

  • 0378a5ef51b008aa2d6b76bd44a0bf061339bc3b737a188ec82029444d4d18fe
  • 1f00fd604bb18bbe3081f9ce8d741c4029d2a2125eb8888ac4e0d955938059d6
  • 291cb1fd0f2709b4457447cbb87adacf5c36c1bcb0f8754524024d44174bb195
  • 3b7642b0f84e83a36334c608655c6cb7aae774839a6a3488526b853d89830a60
  • aa7ea19e34567458b4ee66a7cd274181764984bf32123f756a7fdc64d5857b31
  • c79091ceae7cd592fc08e4854cda7c1182af762b6b126371cc604debdc995fc7
  • f06e7e1a4363a01ba2a4fee2e28abdd623abf4194bda373f23ff0e151b5c2b45

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