SHA1-хеш:
- 2c573abfa5f989511f669b8ece80aecd4362cba6041841fff2c008dea81e9378
Описание
Вредоносная программа-дроппер, написанная на языке Go и предназначенная для работы в ОС Linux. Исполняемый файл упакован пакером UPX. Может применяться для одномоментной доставки на скомпрометированную машину целого набора полезной нагрузки.
Принцип действия
Дроппер может запускаться со следующими тремя параметрами:
Параметр | Описание |
---|---|
-install | По умолчанию имеет значение true, в случае если передано false, запускает полезную нагрузку без установки в систему |
-merge | Принимает имя файла, который будет привязан к дропперу и запускаться в системе, с ним обязательно должен быть использован аргумент -params |
-params | принимает список аргументов, с которыми будет запускать полезную нагрузку |
Закрепление в системе
Если параметр install равен true, то закрепление дроппера может происходить двумя способами. Первый — через systemd, если дроппер запущен от рута, второй — посредством файла .profile, если он запущен от пользователя.
Закрепление через systemd
Дроппер копирует себя в директорию /usr/sbin, после чего в директории /etc/systemd/system создает файл .service примерно следующего содержания:
[Unit]
Description=dropper
After=network.target
[Service]
PrivateTmp=true
Type=forking
ExecStart=/usr/sbin/dropper -install=false
Restart=always
[Install]
WantedBy=multi-user.target
Флаг -install=false позволяет дропперу сразу инициализировать полезную нагрузку при старте сервиса. При запуске дроппера с привилегиями суперпользователя полезная нагрузка наследует повышенные привилегии.
Закрепление посредством файла .profile
Дроппер находит домашнюю директорию пользователя, от имени которого он был запущен, и добавляет в файл .profile такую строчку: "nohup %s>/dev/null 2>/dev/null &", где на месте спецификатора указывается путь к дропперу.
Запуск полезной нагрузки
При запуске дроппера с флагом -install=false дроппер извлекает из себя зашифрованный файл с полезной нагрузкой, расшифровывает его, помещает в директорию /tmp и запускает.
Хранение полезной нагрузки
Полезная нагрузка при её интеграции в дроппер шифруется со случайно сгенерированными ключом и вектором инициализации c помощью шифра AES-256 CTR и добавляется в оверлей дроппера.
Имя хранится с префиксом "–A:M" и ограничивается постфиксом "##", после которого могут идти передаваемые полезной нагрузке параметры. Ключ и вектор инициализации отмечены префиксом "--A:D". При запуске дроппер динамически расшифровывает строки, используя схему RSA-PKCS1_v1_5.