Поддержка
Круглосуточная поддержка

Позвоните

Бесплатно по России:
8-800-333-79-32

ЧаВо | Форум

Ваши запросы

  • Все: -
  • Незакрытые: -
  • Последний: -

Позвоните

Бесплатно по России:
8-800-333-79-32

Свяжитесь с нами Незакрытые запросы: 

Профиль

Профиль

Linux.DDoS.3

Добавлен в вирусную базу Dr.Web: 2013-12-05

Описание добавлено:

Троянская программа для ОС Linux, предназначенная для выполнения DDoS-атак, написана на языке С++/STL, упакована UPX.

В процессе установки считывает линк:

/proc/self/exe

определяет путь к собственному запущенному файлу, из него получает текущую директорию программы. Создает собственную копию и запускается со следующими параметрами:

cp /home/user/hihjok /home/user/freeBSD
/home/user/freeBSD /home/user/freeBSD 1
cp /home/user/hihjok /home/user/hihjoka
/home/user/hihjoka

После запуска удаляет свой текущий файл, из собственного тела извлекает другой файл и сохраняет его вместо исходного, изменяет IP-адрес и порт управляющего сервера в файле в зависимости от параметров запуска.

Троянец запускается в инфицированной системе как демон, инициализирует конфигурационный файл fake.cfg:

0
0.0.0.0:0.0.0.0
10000:60000

Получает информацию об инфицированной системе и отправляет её на сервер в виде запроса:

#pragma pack(push,1)
struct OS_INFO{
    DWORD MHz; // /proc/cpuinfo cpu MHz
    BYTE is_count; 
    DWORD ip1;
    DWORD ip2;
    WORD port1;
    WORD port2; 
    BYTE os_name[0x80];
    BYTE host[0xFF];
};
#pragma pack(pop)

В ответ получает значение DWORD op;

Если op = 1 троянец получает задание LookTask. Определив размер DWORD size, бот загружает данные и ставит задачу в очередь на выполнение:

#pragma pack(push,1)
struct CLoopTask{
  BYTE byte0;
  BYTE byte1;
  BYTE byte2;
  BYTE byte3;
  DWORD max2;
  DWORD SomeTime;
  DWORD max1;
  CSubTask SubTask[];
};
#pragma pack(pop)

Если op = 2 – выполняется остановка задачи. На управляющий сервер отправляется статус задачи:

#pragma pack(push,1)
struct TASK_STATUS{
    DWORD max;
    DWORD index1;
    DWORD index2;
    BYTE op;
    DWORD size;
    WORD fw1;
    DWORD CPUUse;
    DWORD NetUse;
};
#pragma pack(pop)

Если op = 3 – выполняется получение конфигурационных данных с управляющего сервера, содержащих сведения о задаче, данные сохраняются в fake.cfg.

#pragma pack(push, 1)
struct CSubTask{
  BYTE op; //тип DDoS
  BYTE byte1;
  BYTE byte2;
  BYTE byte3;
  DWORD max;
  WORD port;
  WORD w2;
  DWORD dwordC;
  DWORD time2;
  DWORD time1;
  DWORD dword18;
  DWORD dword1C;
  WORD port1;
  WORD port2;
  DWORD ip1;
  DWORD ip2;
  DWORD count;
  char Host[];
};
#pragma pack(pop)

Если op = 4 выполняется отправка статуса выполнения задания TASK_STATUS.

Кроме основного цикла общения с сервером, троянец имеет 19 тредов, которые слушают очередь заданий SubTask.op, определяющих тип атаки:

  • 0x80 - tcp flood 1
  • 0x81 - udp flood
  • 0x82 - tcp flood 2
  • 0x83 - amp 1 (dns)
  • 0x84 - amp 2(dns)

Рекомендации по лечению


Linux

На загруженной ОС выполните полную проверку всех дисковых разделов с использованием продукта Антивирус Dr.Web для Linux.

Демо бесплатно

На 1 месяц (без регистрации) или 3 месяца (с регистрацией и скидкой на продление)

Скачать Dr.Web

По серийному номеру