Как удалить вирус со своего хостинга

Если лет 5 назад турецкий хакер, вскрыв мой старенький сайт на phpbb2, всего лишь написал на главной странице: «Привет из Турции», то сегодня хакинг сайтов — это прибыльный бизнес. На вашем сайте могут разместить баннеры, редирект на партнерскую программу, простыню из 500 ссылок на свои дорвеи, просто закачать сам дорвей в глубину сайта — вариантов монетизации вашего белого и пушистого сайта в чужой карман расплодилось довольно много. Что можно сделать с нашей стороны баррикад для противодействия вредоносным скриптам? Советы банальны, избиты и во множестве дублируются в интернете:

  • Не храните пароль от ftp аккаунта в ftp клиенте. Запишите его на бумажке и вводите каждый раз руками без копирования через буфер. В моей практике был случай, когда вирус прямо у меня на глазах пробился через KIS Касперского и успел украсть пароли до того, как KIS его удалил. В то же мгновение на ВСЕ сайты стали заливаться вредоносные шеллы.  И уж, конечно, никакой антивирус не поможет от свеженаписанного  кейлоггера, поселившегося у вас в компьютере, и отсылающего все набираемые с клавиатуры пароли.
  • Поддерживайте вашу CMS в актуальном состоянии. Как только в каком-нибудь wordpress/joomla/phpbb и проч.  находится уязвимость,  миллионы школьников по всему миру бросаются тестировать ее на наших с вами сайтах. Поэтому обновляйтесь, господа, обновляйтесь регулярно.

Что делать, если вирус уже прокрался на ваш хостинг и заразил, к примеру, все *.php файлы своим включением? Для начала — не паниковать. :cool:

  1. Сканируем свой компьютер на предмет выявления вирусов каким-нибудь серьезным средством вроде последнего Касперского.
  2. Меняем пароль на ftp
  3. В .htaccess корневого каталога вашего ftp аккаунта прописываем:
    Deny from all
    Allow from тут_ваш_IP
    Например, ваш аккаунт называется vasya123, в нем находятся папки с сайтами site1.ru site2.ru и т.д. Так вот, указанный .htaccess надо разместить выше по уровню над всеми папками, чтобы он действовал на все сайты одновременно. Такой ход конем не даст хакеру возможности изменять файлы во время наших работ по очистке.
  4. Ищем шеллы. Шелл — это обычно php cкрипт, позволяющий бороздить ваш ftp аккаунт в качестве файлового менеджера. Когда вы его найдете, ради интереса можете запустить прямо через браузер как часть  своего сайта, например: http://site1.ru/templates/css/w3453650.w.php, просто чтобы понять, как это работает.
    Как найти вредоносные скрипты? Для этого на хостинге должен быть доступен SSH для вашего аккаунта. Если такой возможности нет, то это не хостинг, а недоразумение, и оттуда надо срочно бежать.

    4.1 Ищем руками — лезем по папкам и ищем файлы, созданные позже остальных на сайте. Долго, мало результативно, но зато наглядно и интересно.

    4.2 Используем утилиту grep, которая ищет файлы с вхождением определенной строки. Большинство типичных вирусов имеют типичные последовательности кода, по которым их можно вычислить.
    grep -rls «base64_decode|eval\(str_replace" /home/vasya123
    где /home
    /vasya123
    путь до вашего ftp аккаунта на хостинге,
    -r параметр рекурсии, заставляет искать внутри подпапок
    -l список найденных файлов выдается по одному в строке
    -s игнорируются ошибки доступа, например, если логи апача /logs/ имеют другого владельца в системе и вам недоступны
    Полученный список файлов необходимо проанализировать на предмет его деятельности на вашем сайте, здесь знание php и вашей CMS просто необходимо.

    4.3 Ищем файлы, созданные за определенный промежуток времени:
    find /home/vasya123/ -ctime  -40 -ctime +10 >files.txt
    Вышеуказанная команда ищет файлы, созданные от 40 до 10 дней назад и записывает результаты в files.txt Подобные списки могут оказаться очень обширными из-за файлов сессий, логов и иной деятельности ваших сайтов, но жизненно необходимо ее выполнять, чтобы выявить «детские» инклюды в ваши полезные файлы с простым редиректом на домен злоумышленника или другим не зашифрованным base64_decode действием. С промежутком времени необходимо экспериментировать, если неизвестна точная дата заражения. Также необходимо попробовать параметры -atime и -mtime этой команды.

  5. Дальше действуем по ситуации.
    5.1 По дате самого раннего залитого шелла или измененного файла ищем дыру в CMS, через которую пролез злоумышленник. Для этого смотрим логи всех сайтов за указанное время на предмет подозрительно запрошенных URL, что-то вроде site1.ru/?id=9999+union+select+null,’ >’,null+from+table1+into+outfile+’/usr/local/site/www/banners/cmd.php’/* и закрываем либо эту конкретную дырку, либо апгрейдим весь CMS целиком до последней версии.

    5.2 Удаляем залитые шеллы. Находим в них уникальную строку, свойственную только им, и удаляем через grep:
    grep -rls «2362634892тут уникальный код чтобы не удалить полезные файлы354345345″ /home/vasya123 | xargs rm -rf
    Предварительно, конечно, надо запустить grep без параметра | xargs rm -rf чтобы убедиться, что ищутся строго вредоносные файлы.

    5.3 Если хакер прописал в полезные файлы одинаковый кусок вредоносного кода, то тут поможет вот этот php скрипт Его нужно подправить под свои нужды и запустить в корне каждого сайта через браузер.

Собственно, это и все. Главное — усвоить логику: сначала удаляем дыру, потом только удаляем последствия дыры. Иначе хакер воспользуется уязвимостью снова.

Источник: http://www.ybv.ru/archives/116

Читать комменты и комментировать

Добавить комментарий / отзыв



Защитный код
Обновить

Как удалить вирус со своего хостинга | | 2012-09-03 15:57:09 | | Статьи об Интернет безопасности | | Если лет 5 назад турецкий хакер, вскрыв мой старенький сайт на phpbb2, всего лишь написал на главной странице: «Привет из Турции», то сегодня хакинг сайтов — это прибыльный бизнес. На вашем сайте | РэдЛайн, создание сайта, заказать сайт, разработка сайтов, реклама в Интернете, продвижение, маркетинговые исследования, дизайн студия, веб дизайн, раскрутка сайта, создать сайт компании, сделать сайт, создание сайтов, изготовление сайта, обслуживание сайтов, изготовление сайтов, заказать интернет сайт, создать сайт, изготовить сайт, разработка сайта, web студия, создание веб сайта, поддержка сайта, сайт на заказ, сопровождение сайта, дизайн сайта, сайт под ключ, заказ сайта, реклама сайта, хостинг, регистрация доменов, хабаровск, краснодар, москва, комсомольск |
 
Поделиться с друзьями: