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

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

Современный вредоносный код не ломает сайт напоказ. Им продают трафик, размещают дорвеи, крадут данные форм. Владелец замечает чужие страницы в поиске по запросу site:домен, редиректы при заходе с мобильного интернета и из поиска, предупреждения браузера. Проверяйте сайт в режиме инкогнито. Разделы безопасности в панелях вебмастера и онлайн-проверка адреса фиксируют факт и видимые последствия, но не называют зараженный файл. Здесь поможет специалист по проверке безопасности сайта.
Поиск вредоносного кода на сервере и в базе данных
Настоящий ответ дает сервер. Нужен доступ по SSH или к панели хостинга. Запустите серверный антивирус, найдите в PHP-файлах сигнатуры вроде eval и base64_decode. Посмотрите недавно измененные файлы, папки загрузок, crontab, .htaccess и .user.ini. Отдельно проверьте базу WordPress и 1С-Битрикс: инжекты живут в записях и настройках, а список администраторов может содержать чужих. Пока на месте веб-шелл, спам-страницы и редиректы зальют снова.
| Уровень проверки | Что смотрят | Что это дает |
|---|---|---|
| Внешние признаки и панели вебмастера | Чужие страницы в поиске, редиректы, предупреждения браузера | Факт заражения и видимые последствия, без названия файла |
| Файлы на сервере | Недавно измененные PHP-файлы, папки загрузок, crontab, .htaccess, .user.ini | Зараженные файлы и точки закрепления |
| База данных WordPress и 1С-Битрикс | Записи, настройки, список администраторов | Инжекты, которые не найти поиском по файлам, и чужие администраторы |
Действия после обнаружения заражения
Не удаляйте найденное сразу. Порядок такой:
- Сделайте копию файлов, дамп базы и сохраните логи. По логам находят точку входа.
- Очистите сайт. Ядро и расширения лучше заменить эталонными копиями, а не лечить построчно. Вручную разбирают только собственный код, шаблон и базу.
- Закройте точку входа: уязвимый плагин, слабый пароль, утекший доступ.
- Смените пароли, ключи и токены. Делайте это после чистки, иначе бэкдор перехватит новые данные.
- Сверьте ядро и расширения с эталоном.
- Отправьте запрос на перепроверку в панелях вебмастера.
Профилактика проста: обновляйте CMS и расширения, ограничивайте права доступа, храните резервные копии вне основного сервера. Если заражение обнаружат поздно, копия поможет восстановиться.
Проверка идет сверху вниз — от выдачи до сервера
Внешние признаки и панели вебмастера подсказывают, что с сайтом что-то не так, но точный ответ дает только разбор файлов и базы данных на сервере. Если вы ведете сайт сами и заметили чужие страницы в поиске или редиректы с мобильных, начните с копии файлов и дампа базы, а потом ищите точки закрепления, через которые вредоносный код возвращается.
Если сайт приносит заявки, а опыта работы с сервером нет, разбор лучше показать специалисту по безопасности.
Вопросы и ответы
По каким признакам можно заподозрить заражение сайта?
В поиске могут появиться чужие страницы, при заходе с мобильного интернета или из поиска — редиректы, а браузер может показывать предупреждения. Проверить сайт можно в режиме инкогнито.
Можно ли узнать зараженный файл с помощью внешней проверки?
Разделы безопасности в панелях вебмастера и онлайн-проверка адреса показывают факт заражения и его видимые последствия, но не называют зараженный файл.
Что проверять на сервере и в базе данных?
На сервере проверьте недавно измененные PHP-файлы, папки загрузок, crontab, .htaccess и .user.ini, а также запустите серверный антивирус. В базах WordPress и 1С-Битрикс проверьте записи, настройки и список администраторов.
Что сделать до удаления вредоносного кода?
Сделайте копию файлов, дамп базы и сохраните логи. По логам можно найти точку входа.
Когда менять пароли и ключи после заражения?
Смените пароли, ключи и токены после чистки сайта. Пока на месте бэкдор, он может перехватить новые данные.
Подписаться на журнал
Новые разборы о сайтах, SEO и ИИ выходят в журнале QIO. Подпишитесь в Google, по RSS или в Telegram, чтобы получать их первыми.


