Как проверить сайт на вирусы и взлом
Взломанный сайт редко выглядит взломанным: внешне всё работает, а под капотом уже раздаётся вредонос, льётся спам или подмешивается чужая реклама. Замечают обычно поздно — когда падают позиции, письма перестают доходить или браузер начинает пугать посетителей красным экраном. Разберём, как проверить сайт вовремя, где именно прячется зараза и что делать, если она уже внутри.
Почему это важно и как теряют время
Между заражением и первыми заметными последствиями обычно проходят дни или недели. Всё это время сайт работает «как обычно», а вредонос делает своё: рассылает спам, ворует данные форм, крутит редиректы на чужие ресурсы, встраивает скрытые ссылки для чёрного SEO. Чем дольше это длится, тем тяжелее последствия — от вылета из выдачи до попадания домена в чёрные списки. Поэтому проверка на взлом — не разовая акция после ЧП, а гигиена, которую стоит проводить регулярно.
Признаки, что сайт заражён
Чаще всего о взломе сообщают косвенные симптомы, а не сам код. Вот на что смотреть:
Как проверить: по шагам
- Проверьте через SEO-анализ. Комплексная проверка сайта заодно ловит подозрительные внешние скрипты, редиректы и проблемы безопасности. Начните с анализа сайта — он покажет заголовки безопасности, редиректы и внешние ресурсы страницы, которых там быть не должно.
- Загляните в Яндекс Вебмастер и Search Console. У обоих есть раздел безопасности: если поисковик нашёл вредоносный код, он прямо об этом напишет с примерами заражённых страниц. Это самый авторитетный источник — смотреть в первую очередь.
- Проверьте домен по чёрным спискам. Листинг в спам-базах — частый спутник взлома. Проверка по чёрным спискам покажет, не попал ли домен или IP в базы.
- Посмотрите исходный код страниц. Откройте главную и пару внутренних, гляньте исходник (Ctrl+U): чужие
<script>с незнакомых доменов, скрытые ссылки (мелкий или невидимый текст), вставки<iframe>— признаки заражения. - Сравните выдачу для разных посетителей. Многие вредоносы показывают вредонос только ботам поиска или мобильным пользователям (клоакинг). Посмотрите сохранённую копию страницы в поиске и откройте сайт с телефона из поисковой выдачи — редиректы часто срабатывают именно так.
- Проверьте файлы на сервере. Отсортируйте файлы по дате изменения — свежие правки там, где вы ничего не меняли, подозрительны. Особое внимание к index-файлам,
.htaccessи папкам загрузок, куда часто заливают шеллы.
Где чаще всего прячется вредонос
| Где | Что искать |
|---|---|
| index.php / шаблоны темы | Обфусцированный код: eval(), base64_decode(), длинные строки из случайных символов |
| .htaccess | Правила редиректа на чужие домены, особенно с условием по User-Agent или Referer |
| Папки загрузок (uploads) | PHP-файлы там, где должны быть только картинки, — типичное место для веб-шелла |
| База данных | Скрытые ссылки и скрипты в контенте страниц, лишние пользователи-администраторы |
| Подвал / шапка сайта | Вставленные счётчики и скрипты с незнакомых доменов |
Как обычно взламывают
Понимание причины помогает и найти дыру, и не повторить. Типичные векторы:
- Устаревшая CMS или плагин с известной уязвимостью — самая частая причина. Автоматические боты сканируют сайты на дырявые версии и ломают их массово.
- Слабый или утёкший пароль администратора, хостинга, FTP. Перебор простых паролей до сих пор работает.
- Заражённый шаблон или скрипт, скачанный из сомнительного источника («бесплатная премиум-тема» с вшитым бэкдором).
- Сосед по хостингу. На виртуальном хостинге взлом одного уязвимого сайта на аккаунте открывает доступ к остальным — тема соседей по IP.
Отсюда и базовая профилактика: своевременные обновления, сильные уникальные пароли, минимум сторонних скриптов и плагинов, регулярные бэкапы.
Что делать, если сайт взломан
- Снимите бэкап «как есть» — для расследования, — и найдите чистую резервную копию до заражения.
- Смените все пароли: админка CMS, хостинг, FTP/SSH, база данных, почта на домене.
- Удалите вредоносный код или разверните чистый бэкап, затем обновите CMS и все расширения до актуальных версий.
- Закройте дыру, через которую вошли: проверьте права на файлы, удалите неиспользуемые плагины и лишних администраторов, обновите уязвимый компонент.
- Запросите перепроверку в Яндекс Вебмастере и Search Console, а если домен попал в чёрные списки — подайте заявку на удаление (delisting) после лечения.
Если своими силами не выходит, вредонос лучше вычищать со специалистом: недолеченный сайт быстро заражается снова и тянет за собой и позиции, и репутацию домена.
Коротко
Взлом чаще виден по симптомам, чем по коду: предупреждения браузера, падение позиций, спам с домена, чужой контент и редиректы. Проверяют сайт через SEO-анализ, разделы безопасности в Вебмастере и Search Console, чёрные списки и просмотр исходного кода и файлов. Прячется вредонос обычно в index-файлах, .htaccess, папках загрузок и базе. При заражении — сменить пароли, вычистить код или развернуть чистый бэкап, закрыть уязвимость и запросить перепроверку. Главное — не просто убрать вредонос, а закрыть дыру, иначе он вернётся.