Взломы сайтов и как обезопасить себя от них

По моим наблюдениям в последнее время участились взломы различных широко распространенных CMS. По статистике Безопасного поиска Яндекса за 2011 год из 10000 зараженных сайтов по 19% составляли сайты на WordPress и Joomla, а почти 50% было у DLE.

Приведу немного своей статистики чтобы обозначить глубину проблемы. За последние 5 месяцев (т.е. с января 2013) я зафиксировал 13 удавшихся попыток взлома сайтов на нашем хостинге. Из них 6 были совершены за последний месяц (т.е. на протяжении мая). Из этих 13 взломов 3 были повторными. 100% взломов были совершны через CMS. В двух случаях из 13 — это устаревший PrestaShop, в остальных — Joomla или ее компоненты. Как видите статистика довольно печальная.

Напрашивается вывод: CMS — это не только благо в плане управления контентом, но и серьезнейшая проблема для безопасности, если абсолютно за ней не следить.

Действительно: по моему опыту подавляющее большинство взломов было из-за того, что хозяева сайтов абсолютно не следили за ними. Некоторые не обновляли свои сайты по году и более! В результате имеем множество жалоб на рассылку спама, флуд-атаки и десятки фишинговых страниц и страниц, распространяющих различные трояны. А так же попадание в черные списки рассыльщиков спама и поисковых индексов. Чтобы обезопасить себя от всего этого необходимо уделять достаточное внимание безопасности сервера. Чуть ниже я дам рекомендации как. А пока давайте узнаем как определить, взломан ли сайт.

  1. Сайт стал медленно работать или на VPS, где есть сайт неожиданно возросла нагрузка.
  2. В списке процессов на VPS очень много процессов почтовой программы.
  3. В списке процессов на VPS очень много php-cgi (особенно если вы не используете PHP как CGI) или perl процессов.
  4. В стуктуре сайта стали появляться странные файлы типа «wp-conf.php» или «code.php» с правами на выполнение и мешаниной символов внутри.
  5. В журналах доступа веб-сервера вы видите большое количество POST-запросов обращающихся к файлам, которые указаны в предыдущем пункте.

Если вы наблюдаете один или два из таких симптомов, значит ваш сайт скорее всего взломан. Не стоит паниковать, а лучше сразу взяться за устранение проблемы. В первую очередь остановите почтовый и веб-сервер, чтобы пресечь дальнейшую рассылку спама или атаку. Если дело происходит на VPS, так же найдите и остановите все подозрительные процессы. Далее необходимо найти и удалить все вредоносные файлы, загруженные злоумышленниками. В этом вам поможет как ни странно антивирус (я пользуюсь ClamAV), который прекрасно находит различные web-шеллы, трояны и спам-боты, так же можно воспользоваться отличной утилитой AI-Bolit. К сожалению она дает много ложно-положительных результатов, но если внимательно изучить результаты ее работы, то можно найти немало интересного. Иногда вместе с веб-шеллом на сервер загружают различные программы, дающие возможность получить привелегии суперпользователя на сервере, где хранится сайт — т.н. эксплоиты. С ними можно бороться с помощью еще одной полезной утилиты Rootkit Hunter. Ну и самый главный совет — делайте почаще бэкапы, тогда есть шанс восстановить все, не прибегая к муторной процедуре поиска и удаления зараженных файлов. Дополнительно, советую почитать очень хорошую статью на эту тему: Ищем и лечим web shell на взломанном сайте.

Итак — зараза найдена и уничтожена. Теперь встает вопрос, что делать, чтобы такого больше не повторилось? Универсальный совет, который я даю всегда в такой ситуации — не оставлять свои сайты и проекты без присмотра. Как я уже отмечал выше, многие делают по принципу «настроил и забыл», что в случае с использованием популярной CMS дает весьма разрушительный эффект. Как и любая другая вещь сайт требует ухода, но в отличии от многих вещей его поломка может обернуться для вас существенными проблемами вплоть до уголовной ответственности. Если вы владелец VPS или выделенного сервера, то кроме сайтов вам следует так же следить за безопасностью сервера тоже. Как ни странно, многие точно так же забывают и о своем сервере, чего делать ни в коем случае не стоит.

Вот общие рекомендации, которые я даю всегда:

  1. Всегда следите за актуальностью ПО на вашем сайте или сервере. В современном мире ПО так часто подвергается изменениям, что устаревание ПО на несколько месяцев существенно снижает безопасность ваших сайтов и\или севрерв.
  2. Всегда старайтесь пользоваться криптостойкими паролями на абсолютно все сервисы, куда вы имеете доступ. Желательно так же не пользоваться одним паролем для всех сервисов.
  3. Почаще делайте бэкапы всего и вся. В наше время цены на носители информации очень снизились, не стоит экономить на этом.

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

Как вы помните из приведенной статистики, большое количество взломов проводится именно через сайт с уязвимой версией Joomla. Поэтому, я думаю, на этом надо остановится особо. Сама по себе эта CMS не плоха, но входящие в нее плагины часто имеют очень серьезные уязвимости. Старайтесь как можно чаще их обновлять, так же как и саму CMS. Есть отличный проект, который занимается сетевой безопасностью на добровольных началах. Этот проект — OWASP имеет отличную иницитиву в виде выпуска бюллетеня безопасности, а так же различных инструментов для поиска и борьбы с найденнными уязвимостями. Одним из таких инструментов есть OWASP Joomla Vulnerability Scanner или сканнер уязвимостей Joomla. С его помощью вы можете протестировать свой сайт на Joomla на предмет не является ли ваш сайт уязвимым. Есть более общий сканнер web-уязвимостей, который содержит в себе подмножество в виде возможности поиска уязвимостей Joomla, это Uniscan vulnerability scanner. Оба этих инструмента представляют из себя perl-скрипты, которые отлично работают во всех операционных системах и умеют генерировать красивые отчеты в HTML. Кроме этого есть большое количество веб-сервисов, которые позволят вам определить, заражен ли ваш сайт чем либо. Чаще всего в своей работе я пользуюсь Sucuri site check. Ну и еще приведу отличную статью по настройке ваших Joomla сайтов таким образом, чтобы из было труднее взломать: Защита от взлома сайта на Joomla.

На этом пока все. Надеюсь эта информация будет для вас полезной.

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

Этот сайт использует Akismet для борьбы со спамом. Узнайте как обрабатываются ваши данные комментариев.