Обнаружение и устранение вирусов на сайте

Сайт - это набор файлов, размещенных на постоянно подключенном к интернету сервере. Соответственно, под «вирусами на сайтах» подразумеваются программы или вредоносные включения в файлы сайта, из-за которых сайт работает не так, как он должен работать. Что делать, если ваш сайт заражен?

Каковы причины заражения сайтов?

Основная причина заражения сайтов - это желание заработать за чужой счет. Схема обычно выглядит так: пользователь, зашедший на зараженный сайт, принудительно перенаправляется на сторонний ресурс, не имеющий к исходному никакого отношения (например, на платник партнерской программы). Злоумышленник получает деньги за трафик, перенаправляемый со взломанных сайтов.

Некоторые сайты взламываются ради распространения среди пользователей классических вирусов и формирования ботнетов. Как правило, такие сайты блокируются поисковыми системами, и пользователи при обращении к подобным ресурсам видят предупреждение о том, что сайт заражен. Популярные поисковые системы предоставляют сервис почтовых извещений о заражении ваших сайтов: webmaster.yandex.ru, google.com/webmasters.

Что делать при заражении или взломе сайта? Кто виноват?

Если ваш сайт заражен, не стоит паниковать и мучать своего хостера гневными обвинениями. В 90% случаев хостер к этой проблеме не имеет никакого отношения.

Но всё-таки можно уточнить у своего провайдера, имеет ли проблема массовый характер, или возникла только на вашем сайте. Если сайт размещен на shared-хостинге с общим IP-адресом, можно найти сайты соседей, например с помощью сервиса xseo.in, и проверить, заражены ли они.

Если проблема затронула только ваши сайты, нужно исследовать, при каких обстоятельствах возникла проблема, и начать ее решение самостоятельно. Самые частые способы заражения сайта - похищение пароля FTP-доступа к хостингу с компьютера веб-мастера с помощью кейлоггера, из менеджера паролей или из взломанного почтового ящика, а также использование уязвимостей популярных систем управления сайтом (CMS) и скриптов.

Первым делом стоит обновить антивирус и выполнить полную проверку собственного компьютера на вирусы. Бесплатные программы HiJackThis, Dr.Web CureIt!, AVZ помогут найти даже ту заразу, которая не была обнаружена обычным антивирусом.

После сканирования (и лечения, если требуется) смените пароли доступа к электронной почте, аккаунту на хостинге, и удалите все сохраненные пароли из браузеров и FTP-клиентов.

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

Полезным является бесплатный скрипт AI-Bolit. Он умеет искать вирусы, редиректы на сторонние сайты, дорвеи код ссылочных бирж, директории, открытые на запись для всех и др. После проверки скрипт выведет список подозрений на вредоносные включения, которые можно будет проверить и устранить вручную, отредактировав исходные коды файлов сайта.

Если сайт построен на популярной CMS (особенно DLE, Wordpress и Joomla), то возможно злоумышленник воспользовался ее уязвимостью. Это значит, что нужно обновить CMS и ее модули до последних стабильных версий из официальных источников, отключить неиспользуемые или подозрительные модули, закрыть доступ к административным частям сайта с помощью .htpasswd (или с помощью панели управления хостингом), а также периодически проводить аудит безопасности сайта и менять административные пароли.

Обязательно нужно проверить логи доступа к веб-серверу на предмет посторонних запросов.

Также нужно проверить временные директории CMS, и директории, в которые разрешена загрузка файлов (tmp, cache, images, uploads, user_files и так далее) на предмет посторонних файлов, а также попросить хостера проверить общую временную директорию сервера (обычно это /tmp).

Как удалить вредоносные включения?

Для удаления вредоносных включений удобно использовать возможности консоли сервера (доступ по SSH). Большинство хостинг-провайдеров предоставляет данную возможность по умолчанию или же по обоснованному запросу.

Допустим, мы знаем, что заражены все .js файлы, и у нас есть фрагмент вредоносного кода. Значит, нужно найти все .js файлы и вырезать вредоносный код. Сделать это можно с помощью следующей несложной команды, запустить которую нужно из текущей директории сайта:

find ./ -name '*.js' -exec sed -ie 's|вредоносный_код||g' {} \;

Команда выполняет поиск всех js-файлов, и для каждого найденного файла с помощью утилиты sed заменяет вредоносный код на пустое место. Обратите внимание, что при указании вредоносного кода нужно экранировать специальные символы (` ~ ! @ # $ % ^ & * ( ) _ — [ ] { } : ; ' " / \ > <) с помощью обратного слеша: \ , чтобы оболочка воспринимала их именно как символы, а не как инструкции.

Многие провайдеры могут выполнить подобные действия по вашему запросу, часто даже бесплатно.

В заключение, полезные советы:

  • В процессе решения проблемы взлома сайта, если нет возможности заблокировать к нему доступ посетителей, заблокируйте хотя бы запросы POST, чтобы злоумышленники не хотя бы не могли применить стандартные эксплойты.
  • Не используйте устаревшие версии CMS и плагинов к ним. Следите за обновлениями.
  • После определения причины заражения сайта не ограничивайтесь только одним лишь его лечением, так как добавленные злоумышленником точки проникновения могут быть хорошо скрыты. Проверьте всё, что кажется вам подозрительным.
  • Лучшая схема восстановления сайта после взлома - это закрыть к нему доступ посетителей, найти причину взлома, восстановить сайт из резервной копии (этим мы исключаем любые изменения сайта, которые мог произвести злоумышленник), обновить CMS, убедившись, что уязвимый компонент также обновился, после чего снова открыть доступ к сайту.
  • Регулярно проводите аудит безопасности. Даже еженедельная профилактика займет меньше времени, чем решение проблемы после ее возникновения.

Смотрите также

Комментарии

Каким боком вообще мой комп имеет отношение к хосту за который я плачу ? C моего компа вообще ничего не идёт. Вся инфа на хосте. Какой вообще антивирус для сайтов ? Бред !!! Это проблемы хостера. Если его сервера атакуют то пусть хостер их защищает. При чём здесь я ? Если вирусню бросили на директории моего сайта, то это могли сделать только двое - это либо я либо сам хостер ... Как только я увижу подобное на своём сайте, хостер будет послан ко всем чертям и вернёт мне деньги ...

Ваш сайт могут заразить через уязвимость в коде и это не проблемы хостинга

Наверное вы имеете ввиду движковые проекты ? Так то да, они все дырявые ... Но кто создаёт эти проекты ? Для чего ? Вы когда ни будь задавали себе такой вопрос ?

Правильно, но у меня нет опасных и уязвимых скриптов. Формы на нём не работают. Баз тоже нет. И по этому что бы отредактировать мой код, настроить перенаправление или что то добавить в него хакеру необходимо будет ломануть хостера, только таким образом хакер сможет добраться до моего кода. Если ломают ни в чём невиноватого - пушистого и белого хостера, то уж извините ,,, При чём здесь я? Я всего лишь арендатор домена и дискового пространства. Я за это деньги плачу в конце концов.

Тогда да, в вашем случае нет надобности в антивирусе для сайта.

https://revisium.com спасает

Почему-то аффтар считает, что левые скрипты могут находиться только в файлах вида '*.js', а в регэкспе надо ещё экранировать и символ '|'. Но это ещё мелочи по сравнению с тем, что сама по себе идея просто удалить куски кода из другого кода далеко не здравая, т. к. этот код может заменять другой полезный и нужный для функционирования системы код. Вот например на сайте https://metaratings.ru есть такой код, это наш сайт, который мы поддерживаем на аутсорсе.
Все эти рекомендации можно прочесть в любом пособии по PHP. А в других случаях этот Ai-Bolit абсолютно бесполезен. И код у него ужасный.

Отправить комментарий

Если вы укажете номера тикетов или имя пользователя, отзыв будет выглядеть убедительнее, а провайдеру будет проще разобраться с вашей проблемой

Подробнее о форматировании

CAPTCHA
This question is for testing whether you are a human visitor and to prevent automated spam submissions.
5 + 7 10 + 8 плюс 3 0