SHA1: bd24972a8e34bbd2e7f3b58d6d7fd1a94efa7355
Троянец-бэкдор для операционной системы Linux, по задумке авторов должен реализовывать довольно обширный набор функций: SOCKS proxy-сервера, remote shell, менеджера файловой системы, однако на текущий момент большая часть команд игнорируется. Внутреннее имя троянца — "DDoS Attacker for Gh0st(sweet version 1.0)".
Судя по отладочной информации, исходные компоненты бэкдора были созданы таким образом, чтобы исполняемый файл можно было собрать как для архитектуры Linux, так и для Windows. При запуске бэкдор проверяет наличие в папке, из которой он был запущен, конфигурационного файла, содержащего следующие параметры:
'remote_host'
'remote_port'
'remote_host2'
'remote_port2'
'remote_host3'
'remote_port3'
'ServiceDllName'
'm_enable_http'
'HttpAddress'
'szGroup'
'blDelMe'
'SelfDelete'
'Config'
'PassWord'
'Remark'
'Version'
где 'Config' – путь к конфигурационному файлу (в Linux) или к ветви системного реестра, где хранятся конфигурационные данные (в Windows). В конфигурационном файле задаются три адреса управляющих серверов бэкдора, однако используется им только один, в то время как два других являются резервными. Конфигурационный файл зашифрован с использованием алгоритма Base64. При запуске Linux.BackDoor.Dklkt.1 пытается зарегистрироваться на атакованном компьютере в качестве демона (системной службы), а если это не удается, бэкдор прекращает свою работу.
После запуска вредоносная программа формирует приветственный пакет с информацией о системе и параметрами бэкдора (все строки используют кодировку unicode) и передает его управляющему серверу:
<ComputerName>|<OSVersion>|<CpuCores> *
<CpuClock>MHz|Total:<MemTotal>MB,Avail:<MemFree>MB|<sysuptime_days>d
<sysuptime_hours>h <sysuptime_minutes>m <sysuptime_seconds>s|
<self_ip>|<external_ip>|<ConnectionTime>
ms|0|<Remark>|<Group>|<Password>|<Version>|0|0|1|\x00
Параметры Remark, Group, Password, Version заимствуются из конфигурационного файла, последние три значения постоянны, остальные являются данными о зараженной системе. Трафик сжимается с использованием алгоритма LZO и шифруется алгоритмом Blowfish. Каждый пакет данных также снабжается контрольной суммой CRC32 для определения целостности полученной информации на принимающей стороне.
После отправки данного пакета троянец переходит в режим ожидания поступающих от удаленного управляющего сервера команд:
Команда | Комментарий |
---|---|
Приветственный пакет | Игнорируется |
Обновиться | Игнорируется |
Изменить группу | Изменяет значение параметра Group в конфигурационном файле на значение, пришедшее в команде |
Изменить remark | Изменяет значение параметра Remark в конфигурационном файле на значение, пришедшее в команде |
Открыть shell | Открывает командный интерпретатор и перенаправляет потоки ввода/вывода на управляющий сервер |
Открыть менеджер файловой системы | Игнорируется |
Открыть менеджер DDoS | Игнорируется |
Принять пользовательские данные | Игнорируется |
Самоудалиться | Игнорируется |
Разорвать связь с управляющим сервером | Игнорируется |
Выход | Выполняет команду system("exit") |
Перезагрузка | Выполняет команду system("reboot") |
Выключение компьютера | Выполняет команду system("poweroff") |
Очистить лог событий | Игнорируется |
Начать DDoS-атаку | |
Запустить приложение | Приложение указывается в пришедшей команде |
Запустить proxy | Запускает на зараженной машине SOCKS proxy |
Троянец может выполнять следующие виды DDoS-атак:
- SYN Flood
- HTTP Flood (POST/GET запросы)
- Drv Flood (не реализовано)
- ICMP Flood
- TCP Flood
- UDP Flood