Сайт взломан и распространяет вредоносное ПО

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

Если в результатах поиска ваши страницы отображаются с предупреждением Возможно, этот сайт был взломан, значит хакер распространяет спам, а не вредоносное ПО. В таком случае следуйте этим инструкциям.

Необходимые условия

  • Доступ к серверу сайта (веб-серверу, базе данных и файловой системе) через терминал или оболочку с правами администратора.
  • Знание команд оболочки или терминала.
  • Возможность выполнять SQL-запросы в базе данных.

Дальнейшие действия

Подготовьтесь

  1. Ни в коем случае не открывайте страницы своего сайта в браузере. Поступая так, вы подвергаете свой компьютер риску, поскольку вредоносное ПО зачастую использует именно уязвимости браузеров.
  2. Создайте журнал расследования (обычный текстовый документ) и записывайте в него всю информацию, обнаруженную на этом шаге. Как минимум, вам необходимо записать названия всех измененных хакером файлов, путь к ним и тип атаки. Эти данные помогут вам устранить уязвимости и выработать стратегию защиты сайта.
  3. Рекомендуем ознакомиться с дополнительными материалами:
    • Посмотрите видео о принципах работы вредоносного ПО и узнайте, как обезопасить свой компьютер во время расследования.
    • С помощью нашей страницы диагностики проверьте, может ли ваш сайт нанести вред устройствам посетителей. Статус своего сайта можно узнать по ссылке в формате:
      http://www.google.com/safebrowsing/diagnostic?site=<your-site>
      Например: http://www.google.com/safebrowsing/diagnostic?site=webmastercentralblog.blogspot.com
  4. Используйте cURL или Wget для отправки HTTP-запросов (например, для загрузки страниц).

    Эти бесплатные инструменты помогают диагностировать переадресацию и позволяют указывать любые URL перехода, а также сочетания браузера и ОС (параметр user-agent). Меняя эти значения, можно лучше выяснить принципы работы вредоносного ПО, поскольку хакеры часто распространяют его только для пользователей определенных платформ или посетителей с заданных ресурсов, чтобы избегать обнаружения со стороны владельцев сайтов или сканеров уязвимостей.

    $curl -v --referer "http://www.google.com" <your-url>

Определите, какое вредоносное ПО используется на вашем сайте

  1. Откройте Search Console, выберите свой подтвержденный сайт и перейдите в раздел Проблемы безопасности.
  2. Проверьте страницы сайта на наличие вредоносного ПО любой категории (например, которое изменяет конфигурацию сервера, внедряется с помощью запроса SQL и т. д.). Нажмите "Подробности" в интересующей вас категории, чтобы узнать больше о взломанных URL. Вы можете увидеть, например, фрагменты кода, внедренные хакером. По каждой категории скопируйте в журнал расследования:
    • URL всех измененных хакером страниц, которые значатся в этой категории на странице "Проблемы с безопасностью";
    • адреса всех остальных измененных хакером страниц, которые вы обнаружите в процессе расследования;
    • дополнительные данные по взломанным страницам, например тип вредоносного ПО.
  3. Выявить разные типы вредоносного ПО вам помогут следующие статьи:

Оцените масштаб изменений в файловой системе

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

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

  1. Если у вас есть чистая резервная копия сайта, сравните файлы, чтобы узнать, какие из них были созданы или удалены с момента резервного копирования. Запишите обнаруженные файлы в журнал расследования, чтобы вернуться к ним на следующих этапах. В Unix-подобных системах для сравнения каталогов используйте эту команду:
    $ diff -qr <current-directory> <backup-directory>
    Пример:
    $ diff -qr www/ backups/full-backup-20120124/
    Для сравнения файлов используйте команду:
    $ md5sum <current-page> <backup-page>
    Пример:
    $ md5sum www/page.html backups/full-backup-20120124/page.html
  2. Проверьте журналы ошибок, сервера и доступа на предмет подозрительных действий, например неудачных попыток входа, выполнения команд (особенно от имени пользователя root), создания аккаунтов для неизвестных пользователей и т. д. Помните, что хакеры могли замести следы, изменив журналы. Некоторые примеры обсуждаются в видеоролике о поиске уязвимости.
  3. Проверьте файлы настроек, например .htaccess и httpd.conf на предмет переадресаций. Хакеры часто настраивают переадресацию в зависимости от операционной системы и браузера, времени суток или страницы, с которой перешел пользователь.
  4. Проверьте уровень разрешений для файлов и папок. Помните, что хакеры часто меняют разрешения, оставляя себе лазейку для возврата на сайт. Файлы с разрешением выше 644 (rw-r--r--) и папки, у которых оно больше 755 (rwxr-xr-x), представляют угрозу безопасности. Понизьте для них уровень доступа, если в нем нет крайней необходимости. Чтобы найти излишне открытые файлы и папки, в Unix-подобных системах используйте эту команду:
    $ find <your-dir> -type d -not -perm 755 -exec ls -ld {} \;
    $ find <your-dir> -type f -not -perm 644 -exec ls -la {} \;
  5. Если на вашем сайте используется база данных, проверьте все записи с помощью phpMyAdmin или аналогичного инструмента.

Следующий этап

Далее необходимо найти уязвимость.