Удаление вируса в VestaCP
В связи с волной взломов публикуем инструкцию по очистке сервера зараженного вирусом Xor-Ddos.
Подробнее о взломе VestaCP по ссылкам
forum.vestacp.com/viewtopic.php?f=10&t=16556
forum.vestacp.com/viewtopic.php?f=28&t=16555
forum.vestacp.com/viewtopic.php?f=25&t=16575
Имена файлов вируса могут отличаться, просьба обратить внимание на это.
1. Проверяем файлы созданные в начале апреля в /etc/init.d
2. Из полученного списка проверяем первые 2: upgrade и nuvmgregca
Вывод команд
Запоминаем пути к файлам
/usr/bin/nuvmgregca
/tmp/update
3. Проверяем автозапуск через cron
В последней строке запускается скрипт gcc.sh каждые 3 минуты
Запоминаем путь
/etc/cron.hourly/gcc.sh
4. Смотрим что есть в файле /etc/cron.hourly/gcc.sh
Запоминаем пути к файлам /lib/libudev.so /lib/libudev.so.6
5. Останавливаем процесс вируса
найдем в процессах тело вируса, имя файла возьмем из шага 2
с полученными pid выполняем
Процесс нельзя завершать, так как он будет вновь восстановлен.
Ещё раз проверяем запущенные процессы
Если опять находятся процессы с найденными ранее именами, так же их останавливаем
6. Удаляем ранее найденные файлы
rm -f /lib/libudev.so /lib/libudev.so.6 /etc/cron.hourly/gcc.sh /usr/bin/nuvmgregca /tmp/update /etc/init.d/nuvmgregca /etc/init.d/upgrade
7. Удаляем строки запуска из cron
nano /etc/crontab
или
mcedit /etc/crontab
Удаляем строку */3 * * * * root /etc/cron.hourly/gcc.sh
Сохраняем
8. Убиваем процесс или процессы вируса
Подробнее о взломе VestaCP по ссылкам
forum.vestacp.com/viewtopic.php?f=10&t=16556
forum.vestacp.com/viewtopic.php?f=28&t=16555
forum.vestacp.com/viewtopic.php?f=25&t=16575
Имена файлов вируса могут отличаться, просьба обратить внимание на это.
1. Проверяем файлы созданные в начале апреля в /etc/init.d
ls -tl /etc/init.d
-rwxr-xr-x 1 root root 323 апр 9 09:43 nuvmgregca
-rwxr-xr-x 1 root 1000 295 апр 5 18:58 update
-rwxr-xr-x 1 root root 5242 мар 1 20:12 dovecot
-rwxr-xr-x 1 root root 9563 янв 29 06:32 clamav-daemon
-rwxr-xr-x 1 root root 7692 янв 29 06:32 clamav-freshclam
-rwxr-xr-x 1 root root 2394 янв 23 20:38 vesta
-rwxr-xr-x 1 root root 5485 янв 17 15:36 mysql
-rwxr-xr-x 1 root root 3451 янв 16 01:32 bind9
-rwxr-xr-x 1 root root 4355 дек 10 16:08 rsync
-rwxr-xr-x 1 root root 4287 окт 17 16:35 nginx
2. Из полученного списка проверяем первые 2: upgrade и nuvmgregca
cat /etc/init.d/upgrade
cat /etc/init.d/nuvmgregca
Вывод команд
#!/bin/sh
# chkconfig: 12345 90 90
# description: update
### BEGIN INIT INFO
# Provides: update
# Required-Start:
# Required-Stop:
# Default-Start: 1 2 3 4 5
# Default-Stop:
# Short-Description: update
### END INIT INFO
case $1 in
start)
/tmp/update
;;
stop)
;;
*)
/tmp/update
;;
esac
#!/bin/sh
# chkconfig: 12345 90 90
# description: nuvmgregca
### BEGIN INIT INFO
# Provides: nuvmgregca
# Required-Start:
# Required-Stop:
# Default-Start: 1 2 3 4 5
# Default-Stop:
# Short-Description: nuvmgregca
### END INIT INFO
case $1 in
start)
/usr/bin/nuvmgregca
;;
stop)
;;
*)
/usr/bin/nuvmgregca
;;
esac
Запоминаем пути к файлам
/usr/bin/nuvmgregca
/tmp/update
3. Проверяем автозапуск через cron
cat /etc/crontab
# /etc/crontab: system-wide crontab
# Unlike any other crontab you don't have to run the `crontab'
# command to install the new version when you edit this file
# and files in /etc/cron.d. These files also have username fields,
# that none of the other crontabs do.
SHELL=/bin/sh
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
# m h dom mon dow user command
17 * * * * root cd / && run-parts --report /etc/cron.hourly
25 6 * * * root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.daily )
47 6 * * 7 root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.weekly )
52 6 1 * * root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.monthly )
#
*/3 * * * * root /etc/cron.hourly/gcc.sh
В последней строке запускается скрипт gcc.sh каждые 3 минуты
Запоминаем путь
/etc/cron.hourly/gcc.sh
4. Смотрим что есть в файле /etc/cron.hourly/gcc.sh
cat /etc/cron.hourly/gcc.sh
#!/bin/sh
PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:/usr/X11R6/bin
for i in `cat /proc/net/dev|grep :|awk -F: {'print $1'}`; do ifconfig $i up& done
cp /lib/libudev.so /lib/libudev.so.6
/lib/libudev.so.6
Запоминаем пути к файлам /lib/libudev.so /lib/libudev.so.6
5. Останавливаем процесс вируса
найдем в процессах тело вируса, имя файла возьмем из шага 2
ps -ej | grep nuvmgregca
ps -ej | grep upgrade
с полученными pid выполняем
kill -STOP %PID
Процесс нельзя завершать, так как он будет вновь восстановлен.
Ещё раз проверяем запущенные процессы
ps -ej
Если опять находятся процессы с найденными ранее именами, так же их останавливаем
6. Удаляем ранее найденные файлы
rm -f /lib/libudev.so /lib/libudev.so.6 /etc/cron.hourly/gcc.sh /usr/bin/nuvmgregca /tmp/update /etc/init.d/nuvmgregca /etc/init.d/upgrade
7. Удаляем строки запуска из cron
nano /etc/crontab
или
mcedit /etc/crontab
Удаляем строку */3 * * * * root /etc/cron.hourly/gcc.sh
Сохраняем
8. Убиваем процесс или процессы вируса
kill -kill %PID
- 0
- 09 апреля 2018, 14:24
- apereshein
Комментарии (0)
RSS свернуть / развернуть