Как проверить, что перенаправление есть
- Откройте сайт с телефона через мобильный интернет, а не через Wi-Fi офиса.
- Найдите сайт в Яндексе или Google и перейдите из результатов поиска, а не по закладке.
- Откройте сайт в режиме инкогнито: вредоносный код иногда срабатывает только при первом посещении.
- Проверьте ответ сервера, представившись мобильным браузером, пришедшим из поиска:
curl -sI -A "Mozilla/5.0 (iPhone; CPU iPhone OS 17_0 like Mac OS X)" -e https://yandex.ru/ https://ваш-сайт.ru/Если в ответе код 301 или 302 и строка Location: с чужим адресом, перенаправление делает сервер. Если ответ 200, а в браузере всё равно уводит, перенаправление делает скрипт на странице.
Если браузер пишет «Слишком много перенаправлений» и сайт не открывается вообще, это ошибка настройки, а не взлом. Её разбор: ERR_
Сначала сделайте копию
Скачайте файлы сайта и выгрузите базу данных до того, как что-то менять. По копии потом ищут, как код попал на сайт, и к ней можно вернуться, если очистка что-то сломает.
Не хотите разбираться сами? Пришлём оценку в часах до начала работы, первая задача до 2 часов бесплатно.
Отправить задачуШаг 1. Проверьте .htaccess
Откройте .htaccess в корне сайта и в подкаталогах. Подозрительны правила RewriteCond по %{HTTP_ (поисковые системы) или %{HTTP_ (мобильные браузеры) и RewriteRule с чужим доменом. Сравните файл с копией, которая была до проблемы, или со стандартным .htaccess вашей CMS.
Шаг 2. Найдите изменённые файлы
- Посмотрите php-файлы, изменённые за последние недели. По SSH:
find . -type f -name "*.php" -mtime -14. - Проверьте
index.phpв корне: у CMS он короткий, длинная строка с закодированным текстом — признак заражения. - WordPress: файлы активной темы
header.phpиfunctions.php. - 1С-Битрикс:
/bitrix/php_interface/init.phpи/local/php_interface/init.php, шаблоны сайта. - Ищите вставки
eval(base64_decode,<scriptс чужими адресами,window.locationиdocument.locationв js-файлах.
Шаг 3. Проверьте базу данных
- WordPress: в таблице
wp_optionsзначенияsiteurlиhomeдолжны быть адресом вашего сайта; вwp_postsищите вставки<scriptв текстах записей. - 1С-Битрикс: проверьте шаблоны, включаемые области и тексты инфоблоков на вставки
<scriptс чужими адресами.
Шаг 4. Закройте причину
Удалите найденный код или замените файлы ядра CMS чистыми той же версии. Затем обновите CMS, плагины и модули, смените все пароли (хостинг, FTP или SFTP, база данных, администраторы сайта) и удалите учётные записи администраторов, которых вы не создавали. Без этого код вернётся тем же путём. Подробный порядок — в разборе «Сайт взломали».
Если поисковики уже пометили сайт, после очистки отправьте его на перепроверку: сайт помечен как опасный.
Когда нужен специалист
- Вы не видите перенаправления у себя, а посетители жалуются.
- В .htaccess и файлах чисто, а перенаправление продолжается.
- Код возвращается после очистки.
- Хостинг заблокировал аккаунт из-за вредоносного кода.
Сколько стоит у нас
| Задача | Время | Стоимость |
|---|---|---|
| Очистка заражённого сайта | 2–4 ч | 7 600–15 200 ₽ |
| Сложный взлом и защита | 3–4 ч | 11 400–15 200 ₽ |
Диапазоны ориентировочные, ставка 3 800 ₽ в час. Точную оценку присылаем до начала работ. Все цены.
Опишите проблему в форме. Пришлём оценку в часах до начала работы, первая задача до 2 часов бесплатно для новых клиентов.
Отправить задачуЧастые вопросы
Почему у меня сайт открывается нормально, а у клиентов перенаправляет?
Вредоносный код часто проверяет, откуда пришёл посетитель и с какого устройства, и не трогает тех, кто заходит по прямой ссылке, особенно администраторов. Проверьте сайт с телефона через мобильный интернет и из поиска.
Можно просто удалить строку из .htaccess?
Обычно нет. Строку в .htaccess записывает другой файл или скрипт, и после удаления она возвращается. Нужно найти этот файл и закрыть причину взлома.
Это может сделать хостинг или рекламная сеть?
Перенаправление на чужие сайты без вашего ведома — признак вредоносного кода на самом сайте. Если вы ставили сторонние скрипты (виджеты, счётчики, рекламные блоки), проверьте и их: заражённым может оказаться подключённый скрипт.