У меня есть общий сервер (amazon ec2 micro, работающий на bitnami) с веб-приложением (Wordpress), которое в последнее время показывает низкую производительность (с относительно стабильным трафиком и использованием). Единственные подозрительные строки в apache2 / logs / access.log, которые я вижу, имеют форму
$ tail --lines=1000 /opt/bitnami/apache2/logs/access_log
93.120.84.31 - - [06/Nov/2013:03:02:54 +0000] "POST /cgi-bin/php-cgi?%2D%64+%61%6C%6C%6F%77%5F%75%72%6C%5F%69%6E%63%6C%75%64%65%3D%6F%6E+%2D%64+%73%61%66%65%5F%6D%6F%64%65%3D%6F%66%66+%2D%64+%73%75%68%6F%73%69%6E%2E%73%69%6D%75%6C%61%74%69%6F%6E%3D%6F%6E+%2D%64+%64%69%73%61%62%6C%65%5F%66%75%6E%63%74%69%6F%6E%73%3D%22%22+%2D%64+%6F%70%65%6E%5F%62%61%73%65%64%69%72%3D%6E%6F%6E%65+%2D%64+%61%75%74%6F%5F%70%72%65%70%65%6E%64%5F%66%69%6C%65%3D%70%68%70%3A%2F%2F%69%6E%70%75%74+%2D%64+%63%67%69%2E%66%6F%72%63%65%5F%72%65%64%69%72%65%63%74%3D%30+%2D%64+%63%67%69%2E%72%65%64%69%72%65%63%74%5F%73%74%61%74%75%73%5F%65%6E%76%3D%30+%2D%6E HTTP/1.1" 504 249
И в ps aux
вывод
daemon 29369 0.0 0.2 17688 1500 ? S 10:52 0:00 /bin/bash ./su 57.54
daemon 29377 30.5 0.0 1780 544 ? R 10:52 3:14 ./ps 57.54 22
что это за процессы, и если это [известная] уязвимость / эксплойт, как мне закрыть ее? Я погуглил это упоминание, но не могу понять, применимо ли это в моем случае.
Если этот вопрос относится к другому сайту SE, пожалуйста, помогите мне задать его при необходимости.
Спасибо заранее!
ОБНОВИТЬ
Следуя советам от @Ladadadada, результаты приведены ниже. Ага, это вторжение. Сервер остановлен, перезапущен из еженедельного резервного копирования (все базы данных и другие вещи были на отдельных дисках, и я надеюсь, что не был скомпрометирован) и находится под наблюдением. Мы приветствуем все предложения о том, что происходит и как предотвратить это в будущем.
для ps
proc:
$ sudo ls -l /proc/30633/fd
total 0
lr-x------ 1 daemon daemon 64 2013-11-06 13:05 0 -> /dev/null
l-wx------ 1 daemon daemon 64 2013-11-06 13:05 1 -> pipe:[2010646]
l-wx------ 1 daemon daemon 64 2013-11-06 13:05 2 -> pipe:[1918347]
lr-x------ 1 daemon daemon 64 2013-11-06 13:05 255 -> /tmp/.ssh_auth/.b/.ssh_auth/.b/su
lr-x------ 1 daemon daemon 64 2013-11-06 13:05 3 -> /opt/bitnami/apache2/cgi-bin/php-cgi
для /bin/bash su
proc
$ sudo ls -l /proc/30641/fd | more
total 0
lr-x------ 1 daemon daemon 64 2013-11-06 13:04 0 -> /dev/null
l-wx------ 1 daemon daemon 64 2013-11-06 13:04 1 -> pipe:[2010646]
lrwx------ 1 daemon daemon 64 2013-11-06 13:04 10 -> socket:[5538939]
lrwx------ 1 daemon daemon 64 2013-11-06 13:04 100 -> socket:[5539029]
lrwx------ 1 daemon daemon 64 2013-11-06 13:04 101 -> socket:[5539030]
lr-x------ 1 daemon daemon 64 2013-11-06 13:04 3 -> /opt/bitnami/apache2/cgi-bin/php-cgi
и многое другое. Содержимое временной папки:
/tmp/.ssh_auth/.b/.ssh_auth/.b$ ll
total 1848
drwxr-xr-x 2 daemon daemon 4096 2013-11-06 13:04 ./
drwxr-xr-x 3 daemon daemon 4096 2013-11-06 01:34 ../
-rw-r--r-- 1 daemon daemon 0 2013-11-06 13:04 246.120.pscan.22
-rw-r--r-- 1 daemon daemon 0 2013-11-06 03:42 .a
-rwxr-xr-x 1 daemon daemon 1384518 2005-06-05 20:24 brute*
-rwxr-xr-x 1 daemon daemon 1161 2013-03-13 20:22 dns-pool*
-rwxr-xr-x 1 daemon daemon 73 2013-11-05 04:14 pass.txt*
-rwxr-xr-x 1 daemon daemon 154 2013-11-05 04:13 print*
-rwxr-xr-x 1 daemon daemon 16071 2012-08-12 16:19 ps*
-rwxr-xr-x 1 daemon daemon 453972 2011-03-21 15:15 ss*
-rwxr-xr-x 1 daemon daemon 520 2013-11-06 01:33 su*
ОБНОВЛЕНИЕ 2
Победитель за доли секунды с Amazon сразу после отключения инстанса:
Hello,
We have detected that your instance(s):
i-xxxxxxxx
have been behaving in the following way that is against our AWS Customer Agreement:
Port Scanning
Эта длинная строка в ваших журналах доступа кодируется URL-адресом и расшифровывается следующим образом:
-d allow_url_include=on -d safe_mode=off -d suhosin.simulation=on -d disable_functions="" -d open_basedir=none -d auto_prepend_file=php://input -d cgi.force_redirect=0 -d cgi.redirect_status_env=0
Мне кажется, что он передает кучу вариантов php-cgi
которые отключают все функции безопасности, такие как запрет включения URL-адресов, запрет определенных функций и безопасный режим. Он также позволяет передавать PHP-код в STDIN, что, вероятно, позволяет злоумышленнику просто предоставить код для запуска в качестве параметров POST.
Это почти наверняка злонамеренно.
Уязвимость в этом случае, вероятно, заключается в том, что php-cgi
находится в веб-каталоге и / или может быть запрошен напрямую.
Две строки в вашем ps
вывод тоже подозрительный. Вы можете исследовать их дальше, заглянув в /proc
файловая система.
sudo ls -l /proc/29377/fd
Или используя strace
на PID:
sudo strace -f -p 29377 -s400
Выход из strace
может быть довольно большим и трудным для чтения, но обнаружить там спам или попытки подключения к сети не составит труда. Вы можете ограничить вывод такими параметрами, как -e trace=file
или -e trace=file,network
.
Как только вы определите, что это является злонамеренные, и вы знаете, как они попали, вы должны следовать инструкции в этом вопросе, чтобы очистить потом. Простого удаления найденных файлов недостаточно, потому что злоумышленник мог сделать что угодно, чтобы спрятаться в системе.