Добрый день друзья! Начну с того что с php и phpbb знаком по той необходимости, что на своем проекте мы используем этот форум, так как не нашли более достойной альтернативы. Помимо периодических обновлений с php я не сталкиваюсь и с особенностями работы этого форума знаком мало.
Недавно случилось страшное — наш сервер с аптаймом чуть меньше года(после последней миграции) перезагрузился. На сервере развернут собственно сайт и форум phpbb 3.0.12.
В /var/log/auth.log малоинформативное
Не найдя больше никаких подробностей восстановил работу сайта. На следующий день обнаружил более важную информацию
То есть доступ таки был получен. На этот раз было найдено несколько интересных процессов запущенных от www-data.
Первым делом обновляю форум до последней на данный момент версиии phpBB 3.1.9. После этого прибиваю процессы и жду новых записей в auth.log. Оказалось это совсем не обязательно — через некоторое время прибитые процессы снова появились.
Переходим в /var/www/forum, делаем:
Особенно нужно обратить внимание на файлы *.php, помеченные как исполняемые. Привлек мое внимание файл с именем members.php с включенным флагом на исполнение, в котором были встречены и bp.pl и небезызвестный порт 31337. Этого файла нет в списке файлов из архива phpBB. Удаляю файл, в логах nginx и apache были обнаружены постоянные запросы к этому файлу. Делаю grep повторно, о чудо — на этот раз найден исполняемый файл ucpi.php, с аналогичным содержанием. Кстати изначально код эксплоита был найден на github, это сильно помогло.
Процесс обновления phpBB сделан достаточно удобно — основная часть папки обновляется, но есть папки которые переносятся из предыдущей версии проекта. У меня таким образом эксплоиты перекочевали в обновленный форум.
Сейчас кажется проблема решена, но периодически буду посматривать в auth.log, список процессов ну и исходники нужно проверять. Может моё мнение не объективно, но даже для нашего форума это не первое нашествие хакеров и это одна из причин моего прохладного отношения к php в целом и phpBB в частности.
Мне будет интересно узнать насколько эта информация актуальна и насколько сильно распространена данная уязвимость.
Спасибо за внимание.
UPD. Спасибо за теплый прием и поддержку. Ваши отзывы мне реально пригодились! Сервер был успешно отбит. Отдельная благодарность за помощь PaulAtreides.
Недавно случилось страшное — наш сервер с аптаймом чуть меньше года(после последней миграции) перезагрузился. На сервере развернут собственно сайт и форум phpbb 3.0.12.
В /var/log/auth.log малоинформативное
Oct 6 09:36:21 fsr sudo: pam_unix(sudo:auth): auth could not identify password for [www-data]
Oct 6 09:36:21 fsr sudo: www-data : user NOT in sudoers ; TTY=unknown ; PWD=/ ; USER=root ; COMMAND=...
Не найдя больше никаких подробностей восстановил работу сайта. На следующий день обнаружил более важную информацию
Oct 5 22:55:55 fsr su[18114]: pam_unix(su:auth): authentication failure; logname= uid=33 euid=0 tty=/dev/pts/21 ruser=www-data rhost= user=admin
Oct 5 22:55:57 fsr su[18114]: FAILED su for admin by www-data
Oct 5 22:55:57 fsr su[18114]: - /dev/pts/21 www-data:admin
Oct 5 22:57:50 fsr su[18310]: pam_unix(su:auth): authentication failure; logname= uid=33 euid=0 tty=/dev/pts/21 ruser=www-data rhost= user=admin
Oct 5 22:57:52 fsr su[18310]: FAILED su for admin by www-data
Oct 5 22:57:52 fsr su[18310]: - /dev/pts/21 www-data:admin
Oct 5 22:58:39 fsr su[18384]: Successful su for admin by www-data
Oct 5 22:58:39 fsr su[18384]: + /dev/pts/21 www-data:admin
То есть доступ таки был получен. На этот раз было найдено несколько интересных процессов запущенных от www-data.
ps aux|grep www-data
perl /tmp/bp.pl 31337
/bin/sh -i
import pty; pty.spawn( /bin/sh )
Первым делом обновляю форум до последней на данный момент версиии phpBB 3.1.9. После этого прибиваю процессы и жду новых записей в auth.log. Оказалось это совсем не обязательно — через некоторое время прибитые процессы снова появились.
Переходим в /var/www/forum, делаем:
ack-grep -l '\.pl'
Особенно нужно обратить внимание на файлы *.php, помеченные как исполняемые. Привлек мое внимание файл с именем members.php с включенным флагом на исполнение, в котором были встречены и bp.pl и небезызвестный порт 31337. Этого файла нет в списке файлов из архива phpBB. Удаляю файл, в логах nginx и apache были обнаружены постоянные запросы к этому файлу. Делаю grep повторно, о чудо — на этот раз найден исполняемый файл ucpi.php, с аналогичным содержанием. Кстати изначально код эксплоита был найден на github, это сильно помогло.
Процесс обновления phpBB сделан достаточно удобно — основная часть папки обновляется, но есть папки которые переносятся из предыдущей версии проекта. У меня таким образом эксплоиты перекочевали в обновленный форум.
Сейчас кажется проблема решена, но периодически буду посматривать в auth.log, список процессов ну и исходники нужно проверять. Может моё мнение не объективно, но даже для нашего форума это не первое нашествие хакеров и это одна из причин моего прохладного отношения к php в целом и phpBB в частности.
Мне будет интересно узнать насколько эта информация актуальна и насколько сильно распространена данная уязвимость.
Спасибо за внимание.
UPD. Спасибо за теплый прием и поддержку. Ваши отзывы мне реально пригодились! Сервер был успешно отбит. Отдельная благодарность за помощь PaulAtreides.