Перейти к содержанию
Innovialabs

Сайт взломали: пошаговый план действий

Практика3 мин

Коротко

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

Главное: действовать по порядку

Признаки взлома бывают разными: редирект на чужие сайты, странные страницы в поиске, предупреждение браузера, спам с вашего домена, новые администраторы, резкий рост нагрузки. Первое желание — срочно всё удалить и переустановить. Это ошибка: так теряются улики, а дыра, через которую зашли, остаётся открытой, и сайт взломают снова.

Порядок действий:

  1. Изолировать.
  2. Сохранить улики.
  3. Найти точку входа.
  4. Очистить и восстановить.
  5. Сменить все доступы.
  6. Уведомить, если нужно.
  7. Снять предупреждения поисковиков.

1. Изолировать

Цель — остановить ущерб для посетителей и данных.

  • Включите режим обслуживания или временно отдайте статичную страницу.
  • Если сервер рассылает спам или атакует других, ограничьте исходящий трафик или отключите сервер от сети через панель провайдера.
  • Не выключайте сервер полностью без необходимости: в памяти и временных файлах могут быть следы.
  • Сообщите хостинг-провайдеру — у него могут быть логи и инструменты.

2. Сохранить улики

Перед любой очисткой сделайте полную копию: файлы сайта, дамп базы данных, логи веб-сервера, логи входа (SSH, панель управления, админка CMS). Если сервер облачный, сделайте снимок диска.

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

3. Найти точку входа

Без этого шага восстановление бесполезно. Где искать:

  • Логи веб-сервера — необычные POST-запросы к отдельным файлам, обращения к загруженным PHP-файлам.
  • Изменённые файлы — сравните с чистой копией или оригинальным дистрибутивом CMS; ищите недавно изменённые файлы и PHP в папках загрузок.
  • Учётные записи — новые администраторы в CMS, новые пользователи и ключи на сервере.
  • Устаревшие компоненты — плагины, темы, библиотеки с известными уязвимостями.
  • Утёкшие пароли — входы под настоящими аккаунтами в нерабочее время или с необычных адресов.

Частые точки входа: уязвимый плагин, украденный пароль администратора или FTP, открытая админка без 2FA, ключи в публичном репозитории.

4. Очистить и восстановить

Надёжнее всего восстановить, а не лечить:

  • Разверните сайт на чистом сервере или в чистом окружении.
  • Возьмите код из репозитория или свежего дистрибутива CMS, а не с заражённого сервера.
  • Восстановите базу из бэкапа, сделанного до взлома. Если такого нет — проверьте её вручную на вредоносные вставки и лишних пользователей.
  • Перенесите загруженные файлы, убедившись, что среди них нет исполняемого кода.
  • Закройте точку входа: обновите компонент, удалите уязвимый плагин, исправьте код.
  • Обновите всё остальное и включите мониторинг изменений файлов.

5. Сменить все доступы

Считайте скомпрометированным всё, что хранилось на сервере или было доступно с него:

  • пароли администраторов CMS, хостинга, FTP/SFTP, базы данных;
  • SSH-ключи и токены доступа;
  • API-ключи платёжных систем, почтовых сервисов, мессенджеров;
  • секретные ключи приложения (например, для подписи сессий) — это разлогинит пользователей, и это нормально.

Включите двухфакторную аутентификацию везде, где она есть.

6. Уведомить, если требуется

Если могли утечь персональные данные — имена, телефоны, почта, пароли, данные заказов — проверьте требования законов, которые к вам применимы: законодательство вашей страны о персональных данных, а при работе с жителями ЕС — GDPR, который устанавливает срок уведомления надзорного органа в 72 часа. Здесь полезна консультация юриста.

Пользователям стоит честно сообщить, что произошло, какие данные затронуты и что им сделать — например, сменить пароль, если он использовался на других сайтах.

7. Снять предупреждения поисковиков

Если браузеры или поиск показывают «сайт может быть опасен»:

  • в Google Search Console откройте отчёт о проблемах безопасности, устраните их и отправьте запрос на проверку;
  • в Яндекс Вебмастере проверьте раздел о безопасности и нарушениях и запросите перепроверку;
  • удалите спам-страницы и проверьте, что в sitemap не осталось лишних адресов.

Проверка занимает некоторое время, поэтому подавайте запрос только когда уверены, что сайт чист.

Частые вопросы

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

Поможем с этим

Если хотите не разбираться самим, а получить результат — этим мы занимаемся каждый день.

Обсудить проект

Читайте также

Есть идея или задача? Расскажите нам

Ответим в течение рабочего дня и предложим решение. Консультация бесплатная.