Каждую секунду на ваш сайт поступает множество запросов. Часть из них — это реальные посетители и клиенты, которые хотят приобрести на нём товар или услугу, прочитать новость или поделиться чем-то. Другая часть — запросы роботов, которые индексируют контент для отображения в поисковых системах. И среди всего этого многообразия есть запросы, цель которых — найти уязвимое место вашего сайта для взлома или заражения. И, если сайт недостаточно хорошо защищён от таких запросов — он может быть скомпрометирован в считанные минуты.
Лечение вирусов на сайтах: чек-лист
Чтобы вы могли быстро определить факт заражения сайта по внешним признакам, собрали для вас общий список признаков и причин появления вредоносов.
Признаки заражения сайта
Признаки могут быть как явные, так и неявные — это зависит от специфики вашего сайта и того, как злоумышленники решили использовать его после компрометации.
-
при переходе на сайт появляется сообщение о небезопасном ресурсе от браузера или антивируса;
- при переходе на сайт срабатывает перенаправление на сторонний ресурс нелегального характера;
- на страницах сайта появляется сторонний контент: врезки, объявления, всплывающие окна (дефейс);
- ссылки на сайте ведут на сторонние ресурсы;
- в файлах сайта появляются подозрительные незнакомые файлы;
- пользователи сайта жалуются на спам;
- вы получаете сообщение о вредоносной активности от хостинг-провайдера;
- появляется информация об утечке данных с сайта;
- сайт работает медленно или вообще становится недоступен;
- на сервере появляются новые процессы, загружающие вычислительные ресурсы;
- в админке сайта появляются новые пользователи с правами администратора;
- и пр.
Оперативно проверить, заражён ли сайт, можно через специальный сервис в поисковой системе или с помощью онлайн-сканеров:
Однако важно помнить, что эти инструменты обнаруживают и показывают только вредоносные включения в код сайта. А заражение может иметь и более серьёзные последствия — например, когда через взлом сайта на сервер устанавливается майнер криптовалюты или брутфорсер паролей. В таких случаях требуется не только лечение сайта, но и анализ запущенных на сервере процессов и поиск их корней.
Способы заражения
Перечень способов компрометации сайтов очень обширный. И чаще всего он специфичен для каждого отдельного ресурса. Тем не менее, есть широко известные подходы:
Заражение через уязвимости CMS
Стандартный сценарий: исследователи обнаруживают уязвимость, сообщают разработчикам CMS, те готовят патч и выпускают обновление. После этого информация об обнаруженной уязвимости, обычно в виде эксплойта — инструкции по использованию уязвимости — выходит в мир. А, так как часто обновления устанавливаются пользователями несвоевременно (56% взломанных в 2019 году сайтов использовали устаревшие версии CMS), появляется благодатная среда для вредоносов.
Заражение через уязвимости плагинов и расширений CMS
Ситуация похожая, но, увы, куда более плачевная. Разработчики плагинов очень мало внимания уделяют безопасности — некоторые популярные плагины с огромным количеством скачиваний имеют актуальные уязвимости. Поэтому перед установкой очередного расширения проверьте отзывы о нём на форумах или его упоминания на ресурсах по информационной безопасности. Что уж говорить о бесплатных и нелицензионных решениях, которые могут содержать уязвимости или вредоносы в готовом виде целенаправленно.
Заражение через уязвимости в скриптах
Как бы богаты ни были возможности CMS и списки плагинов, всегда приходится самостоятельно реализовывать что-то для решения своих специфических задач либо подключать готовые библиотеки. Бывает, что в отдельных функциях и методах использованного для этого языка появляются уязвимости — что делает ваш сайт лёгкой мишенью для взлома или заражения.
Заражение через подбор пароля к FTP-пользователям
FTP-протокол используется для работы с файлами сайта. Несложно представить, во что может вылиться утечка доступов к одному из FTP-пользователей: злоумышленник способен как подчистую удалить всё содержимое домашней директории, так и свободно разместить вредоносный софт — загрузив свой скрипт или отредактировав файлы сайта. А если вспомнить, что в конфигурационных файлах сайта ещё и доступы к базе данных бывают прописаны, ууу...
Заражение через уязвимости или взлом сервера
Это один из самых неблагоприятных сценариев. Когда злоумышленники получают доступ к серверу (обычно речь идёт о root), они получают доступ ко всем расположенным на нём данным. Компрометация сайтов в таких случаях становится второстепенным делом, но — может иметь место.
Заражение через SQL-инъекции
SQL-инъекции — достаточно сложный механизм для заражения или взлома, тем не менее, пользуется популярностью. Путём манипулирования запросами к базе данных злоумышленник может получить доступ к данным посетителей сайта или внести в них изменения — вплоть до добавления новых пользователей в админку или саму базу данных.
Заражение после утечки данных
Например, стандартной практикой является взлом почтовых ящиков и проверка писем в них на наличие различных авторизационных данных. Если в процессе будет обнаружено письмо с доступами к серверу или к админке сайта — пиши пропало. Также данные также могут быть скомпрометированы при работе с сервером или сайтом с инфицированного компьютера. Так что не забывайте регулярно менять пароли к почте и проверяйте ваш рабочий ПК на предмет вирусов.
Подробный список распространённых уязвимостей сайтов можно посмотреть здесь и здесь. А тут можно посмотреть статистику уязвимостей от компании Positive Technologies за 2019 год.