Фишинговая атака с Python-загрузчиком не привела к запуску ScreenConnect
Попытка установить службу ScreenConnect и запустить клиент удалённого доступа не удалась. Продукт управления привилегиями на конечной точке заблокировал fodhelper.exe, предназначенный для обхода UAC. Все наблюдаемые процессы работали со средним уровнем целостности в рамках стандартной учётной записи пользователя.
Фишинговая доставка и запуск Python
Атака началась с фишингового письма с URL, обёрнутым в Microsoft SafeLinks и ведущим на страницу общего сообщения Yahoo Mail. Через 31 секунду после открытия страницы на хосте жертвы разрешился домен, имитирующий Управление социального обеспечения США. В папку «Загрузки» пользователя загрузили ZIP-архив с неизменёнными корректно подписанными исполняемыми файлами и DLL для CPython 3.12.9, в том числе с переименованным pythonw.exe, а также с тремя созданными злоумышленниками файлами, не относящимися к формату PE.
Для выполнения кода использовался механизм настройки путей Python через файлы ._pth. В архиве находились файлы python312._pth, которые добавляли DocumentResources.dat в путь поиска модулей Python и включали import site. Файл данных представлял собой архив с модулем sitecustomize, который Python автоматически выполнял при запуске. Код запускался без указания пути к скрипту и без параметров командной строки -c или -m. В телеметрии процессов фиксировался только путь к переименованному подписанному интерпретатору.
Конфигурационный файл можно было обнаружить по событию Sysmon Event ID 15, которое записывало его содержимое. Event ID 11 фиксировало только создание файла.
Извлечение MSI и признаки обнаружения
Загрузчик создал скрытый файл пакетного сценария с системным атрибутом и файл-приманку в формате PDF. Пакетный файл был полиглотом со встроенным пакетом Windows Installer, закодированным в base64. PowerShell прочитал его, извлёк данные между маркерами-сентинелями, декодировал их из base64, выполнил XOR-декодирование с ключом 0xFA и записал doc.msi во временный каталог пользователя.
MSI-пакет содержал клиент ConnectWise ScreenConnect версии 25.2.4.9229. Его запустили с параметром msiexec /a, чтобы выполнить административное извлечение в каталог, доступный пользователю на запись. Этот режим позволял обойти стандартную установку и создание службы. MSI-файл смог извлечь файлы, но не установить службу ScreenConnect или запустить клиент удалённого доступа.
К полезным признакам для обнаружения относятся:
- запуск подписанных интерпретаторов Python рядом с файлами
._pthв каталогах, доступных пользователю на запись; - декодирование PowerShell-нагрузок из пакетных файлов;
- использование
msiexec /aс указанием путей к профилю пользователя или временным каталогам; - наличие бинарных файлов средств удалённого мониторинга и управления (RMM) вне утверждённых каталогов установки.
Отчет получен из сервиса CTT Report Hub. Права на отчет принадлежат его владельцу.
Ознакомиться подробнее с отчетом можно по ссылке.



