Эксперты Cisco Talos опубликовали результаты анализа набора инструментов атаки, обнаруженного на веб-сервере Apache (в настоящее время неактивен). Тулкит, или фреймворк, как его называют исследователи, содержит нового трояна удаленного доступа Insekt, программу Alchimist, реализующую функции C2, и множество инструментов, пригодных для продвижения по сети после взлома.
И Alchimist, и работающий в памяти Insekt написаны на Go, что позволяет операторам атаковать разные платформы — Windows, Linux, macOS. Из более безобидных инструментов на сервере найдены PsExec, NetCat, сканер интранета fscan и обратный прокси frp, который можно использовать для вывода данных.
Компонент Alchimist представляет собой 64-битное приложение для Linux с ресурсами для веб-интерфейса и Insekt RAT в Windows- и Linux-версиях. Примечательно, что Web UI использует упрощенный китайский язык.
Набор функций Alchimist позволяет оператору генерировать полезную нагрузку нужной конфигурации, открывать сессии удаленного доступа, раздавать пейлоад на целевые машины, выполнять произвольные команды, шелл-код и получать скриншоты. Механизмы заражения при этом можно кастомизировать — создавать фрагменты кода PowerShell (для Windows) или wget (для Linux) для развертывания RAT.
Настройки, задаваемые полезной нагрузке при ее создании, включают такие параметры, как IP-адрес или URL командного сервера, атакуемая платформа (Windows или Linux), протокол передачи данных (TLS, SNI, WSS/WS) и режим работы — основной или фоновый (как демон).
Адрес C2 вшивается в код трояна вместе с самоподписанным сертификатом, создаваемым во время компиляции. Предусмотрен также 10-кратный пинг с секундным интервалом (то есть резидентный бэкдор должен работать как маячок); при отсутствии отклика попытки подключиться возобновляются через час.
Основное назначение 64-битного Insekt — обеспечение удаленного администрирования; его возможности разнообразны и предоставляют оператору широкий выбор. В ходе инициализации зловредный имплант устанавливает множество обработчиков для основных функций:
- фиксации размеров файлов;
- сбора данных ОС;
- выполнения произвольных команд с помощью cmd.exe или bash;
- самообновления;
- выполнения команд от имени другого пользователя;
- ухода в сон на заданный период;
- активации/деактивации снимков экрана.
Затем вредонос проверяет наличие интернет-связи и статус нужных портов, выполняя подключение с перебором небольшого списка адресов и номеров.
Троян также может работать как прокси (SOCKS5), манипулировать SSH-ключами, сканировать порты и IP, записывать или распаковывать файлы на диск, выполнять на хосте шелл-код. Так, аналитики обнаружили, что Linux-версия Insekt умеет перечислять содержимое папки .ssh в домашнем каталоге пользователя и добавлять новые SSH-ключи в файл authorised_Keys, обеспечивая оператору альтернативный канал связи с зараженной машиной.
Из команд, которые можно задать изначально (в настройках) замечены создание нового пользователя или административной группы, листинг пользователей/админов/контроллеров домена, включение службы терминалов, отключение файрвола либо внесение изменений в правила, чтобы разрешить входящие соединения на определенном TCP-порту.
На macOS-компьютерах зловред пока не работает, хотя на сервере с тулкитом был обнаружен файл Mach-O — написанный на Go 64-битный дроппер со встроенным эксплойтом CVE-2021-4034 и бэкдором, работающим по схеме bind shell. Как оказалось, вредоносная атака в этом случае невозможна из-за отсутствия утилиты pkexec; на Linux-машинах, где она есть, тот же эксплойт с успехом отрабатывает.