Недавно обнаружилось, что часть сайтов подверглось взлому и были залиты веб-шеллы. Изучение взлома показало, что причина кроется в proftpd.
Поиск на эту тему выдал, что недавно (10.04.2015) была зафиксирована уязвимость под номером CVE-2015-3306 (Debian, Red Hat, Ubuntu, Gentoo, more).
Источник: http://bugs.proftpd.org/show_bug.cgi?id=4169

Например, ситуация с debian:

Тоесть, на данный момент, уязвимы все актуальные версии debian. И так как обновление в текущие стабильные репозитории до сих пор не попало, то устранить уязвимость можно обновив proftpd из sid репозитория.
Начиная с 1.3.5-2 проблема исправлена.

Проверить какая у вас версия, например (в debian), можно так:
sh:~# aptitude -F "%p | %v | %V" search ~V | grep proftpd
proftpd-basic | 1.3.5-1.1 | 1.3.5-1.1


Описание с securitylab.ru:
Неавторизованное изменение данных в ProFTPD

Уязвимые версии:
ProFTPD 1.3.5, возможно, более ранние версии

Описание:
Уязвимость позволяет удаленному пользователю неавторизованно изменить данные.
Уязвимость существует из-за ошибки контроля доступа в модуле mod_copy. Удаленный пользователь может скопировать произвольные файлы без прохождения аутентификации.

Комментарии (20)


  1. EnterSandman
    30.04.2015 01:00

    Видел эксплоит
    сейчас решил протестить. мой 1.3.4c не берет
    причем, как я понял, нужен proftpd с mod_copy и только 1.3.5 ветка


  1. Shannon Автор
    30.04.2015 01:18

    Именно, нужна версия с mod_copy, но ветка не обязательно 1.3.5, так как по ссылке пишут:

    wheezy 1.3.4a-5+deb7u2 vulnerable
    wheezy (security) 1.3.4a-5+deb7u1 vulnerable
    jessie 1.3.5-1.1 vulnerable
    (mod_copy not available in version 1.3.3)


  1. Amet13
    30.04.2015 03:25
    +1

    А с чем связана задержка с обновлением в stable?


  1. DarkByte
    30.04.2015 08:09

    Почему бы просто не отключить модуль mod_copy в конфиге modules.conf? Почти наверняка он не используется, и не нужно будет ждать, пока появится обновление.


    1. DarkByte
      30.04.2015 08:22

      Ну и конечно же, если админ ради своего удобства сделал «chmod -R 777 /usr/www», то наверняка взлом его сайтов не ограничится одним лишь proftpd. В нормальной ситуации команды site cpfr/cpto, выполняемые до авторизации, работают от пользователя proftpd и на запись ему доступны разве что папки /tmp и /usr/tmp, но никак не www-root или любые вложенные папки.


  1. Kaliha
    30.04.2015 10:29

    Я так понимаю проблема строго с дебиан?


    1. Shannon Автор
      30.04.2015 10:55

      Проблема не в ОС, а в ProFTPD, поэтому везде где используется ProFTPD с mod_copy (по умолчанию включено), тоесть версии 1.3.5 и частично 1.3.4


      1. iSage
        30.04.2015 12:29

        Он не включен по умолчанию. Это вообще contrib-модуль.


        1. DarkByte
          03.05.2015 18:19
          +1

          root@home:~# cat /etc/debian_version
          7.8

          root@home:~# proftpd --version
          ProFTPD Version 1.3.4a

          root@home:~# grep mod_copy /etc/proftpd/modules.conf
          LoadModule mod_copy.c

          root@home:~# apt-cache search proftpd copy



          Странно. Включен по умолчанию, в репах такого модуля нет, дебиан.


          1. iSage
            03.05.2015 18:39
            -1

            Это не «включен по умолчанию», а «включен мейнтейнерами дебиана».
            mod_copy добавляется при сборке принудительно параметрами configure --with-modules / --with-shared


          1. iSage
            05.05.2015 11:48

            [isage@seven-swords ~]$ cat /etc/proftpd.conf | grep copy
            # used to copy files/directories from one place to another on the server
            # (http://www.castaglia.org/proftpd/modules/mod_copy.html)
            # LoadModule mod_copy.c

            [isage@seven-swords ~]$ cat /etc/redhat-release
            Fedora release 20 (Heisenbug)


  1. 0xA0
    30.04.2015 10:55
    +1

    Попробовал на своих серверах, эмулируя злоумышленника:
    1.Как уже говорилось «нужна версия с mod_copy».
    2.Должен быть php (или любой другой скриптовый язык, что злоумышленник должен знать )
    3.должен быть известен путь к каталогу скриптов.
    4.Должны быть права на запись туда.


  1. la0
    30.04.2015 11:34

    Куда не посмотрю, везде нет этого mod_copy;
    Помню один раз собирал со всеми модулями proftpd в т.ч. и с ним, при make install пишется большое предупреждение что mod_copy is unstable and should not be used in production;
    Может предупреждение и зачем-то убрали в последних версиях, но оно было.


  1. izyk
    30.04.2015 12:17

    Проверить какая у вас версия, например (в debian), можно так:

    sh:~# aptitude -F "%p | %v | %V" search ~V | grep proftpd
    proftpd-basic | 1.3.5-1.1 | 1.3.5-1.1

    Подскажите, пожалуйста, а в «Debian» «proftpd --version» не работает?
    В чем смысл через «aptitude»? Неужели так можно получить разный результат?


    1. Shannon Автор
      30.04.2015 13:23

      «proftpd --version» покажет просто 1.3.5 как в случае с 1.3.5-1.1, так и в случае с 1.3.5-2


      1. XogN
        30.04.2015 13:57
        +1

        А вариант dpkg --list |grep proftpd вполне же пригоден?


        1. Shannon Автор
          30.04.2015 14:01

          Да, такой вариант тоже показывает то что надо:

          ii proftpd-basic 1.3.5-2


          1. XogN
            30.04.2015 14:09
            +1

            И кстати, вариант с dpkg покажет, установлен ли вообще пакет в системе.
            Если нет — команда выдаст пустую строку. Вариант с aptitude же, покажет версию в репозитории.


  1. OnlySlon
    30.04.2015 16:58
    +6

    Это я кстате нашел уязвомость. По-тихому написал автору proftpd чтобы поправил без большого шума, в итоге он создал тикет и бага была уже в новостях уже бувально через сутки.


  1. SerJook
    01.05.2015 11:02
    +1

    Решето!