Если Google показывает результаты поиска для вашего сайта, заполненные японским текстом, ваш ресурс был взломан в результате SEO-спама. Вот пошаговое руководство по обнаружению вредоносных файлов, восстановлению чистой установки WordPress и запросу повторного сканирования от Google.
Подтверждение взлома с японскими ключевыми словами на вашем сайте
Взлом с японскими ключевыми словами — это форма спама для поисковой оптимизации (SEO). Злоумышленники добавляют на ваш сайт код, который генерирует тысячи страниц, заполненных автоматически сгенерированным текстом и ссылками на сторонние магазины, продающие контрафактную продукцию. Этот спам обычно скрыт от обычных посетителей, но напрямую отображается поисковым роботам — этот метод известен как клоакинг.
Обычно вы впервые заметите эту проблему, когда упадет трафик или когда вы поищете название своего бренда в Google и увидите японский текст в описаниях сниппетов. Чтобы подтвердить, затронут ли ваш сайт, начните с проверки Google Search Console.
Войдите в Google Search Console и перейдите к отчету Страницы в разделе «Индексация». Ищите внезапный всплеск проиндексированных страниц или поищите в списке неожиданные URL-адреса. Если вы видите сотни или тысячи URL-адресов, содержащих случайные символы или термины, которые вы никогда не публиковали, ваш сайт был проиндексирован со спамом.
Затем подтвердите, как ваш сайт выглядит для поисковых систем, запросив страницу как Googlebot. Вы можете сделать это прямо в Google Search Console с помощью инструмента Проверка URL. Введите URL главной страницы или адрес зараженной страницы, нажмите Проверить, а затем просмотрите HTML-код протестированной страницы. Если HTML-ответ содержит японский текст, японские заголовки или ссылки на внешние домены интернет-магазинов, которые не появляются при открытии сайта в обычном браузере, на вашем сайте активен клоакинг. Чтобы глубже понять, почему это происходит, прочтите наше руководство о том, как работает клоакинг при взломе с японскими ключевыми словами.
Поиск места запуска спам-скрипта
Прежде чем удалять спам, необходимо найти код, который его генерирует. Вредоносное ПО, стоящее за этим взломом, обычно состоит из двух частей: файла-дверцы (door opener), перехватывающего входящие запросы, и скрипта-генератора, который загружает спам-контент с удаленного сервера.
Проверьте следующие места в структуре каталогов WordPress с помощью файлового менеджера панели управления хостингом или FTP-клиента:
-
Стартовые и основные корневые файлы: откройте файлы
index.php,wp-config.php,.htaccessиwp-settings.phpв главной папке вашего сайта. Ищите необычный код в верхней части этих файлов, особенно строки, использующие такие функции, какbase64_decode,gzinflate,evalилиcurl_exec. -
Обязательные плагины (Must-use plugins): откройте папку
wp-content/mu-plugins/. Код внутри этого каталога выполняется автоматически при каждом запросе и не отображается в основном списке плагинов панели администрирования WordPress. Если вы видите здесь файлы, которые вы или ваш разработчик не устанавливали намеренно, изучите их содержимое. -
PHP-файлы в папке загрузок: папка с медиафайлами должна содержать только изображения, документы и стандартные медиаформаты. Откройте
wp-content/uploads/и найдите любые файлы, заканчивающиеся на.php. Исполняемые скрипты, размещенные в папке uploads, практически всегда являются вредоносными. Узнайте больше об обнаружении таких скриптов в нашей статье о PHP-файлах в директории загрузок WordPress. -
Измененные файлы ядра или плагинов: хакеры часто внедряют небольшие фрагменты кода в официальные файлы ядра внутри
wp-includes/или в существующие плагины, чтобы спам восстанавливался даже после удаления изолированного вредоносного файла. Ознакомьтесь с нашим руководством по проверке целостности файлов WordPress, чтобы узнать, как выявляются измененные файлы.
Восстановление ядра, плагинов и тем WordPress из официальных дистрибутивов
Попытка вручную очистить каждый зараженный файл неэффективна и несет риск оставить скрытый код. Самый безопасный и быстрый способ очистить сайт — заменить все файлы ядра, плагинов и тем свежими оригинальными файлами из официальных источников.
Выполните следующие точные шаги для замены файлов ядра WordPress:
- Загрузите свежую копию официального релиза WordPress с сайта
wordpress.org, соответствующую вашей текущей установленной версии. - Распакуйте ZIP-архив на своем компьютере. Удалите папку
wp-contentиз распакованных файлов на вашем компьютере, чтобы случайно не перезаписать ваши загрузки или кастомный код. - Используя FTP-клиент или файловый менеджер хостинга, удалите существующие директории
wp-adminиwp-includesна вашем сервере. - Загрузите свежие директории
wp-adminиwp-includesс вашего компьютера на сервер. - Замените корневые файлы в главной директории вашего сайта (такие как
index.php,wp-login.php,wp-settings.php) свежими версиями из официального дистрибутива. Оставьте существующий файлwp-config.phpна месте. - Откройте файл
.htaccessна вашем сервере и замените его содержимое правилами перезаписи WordPress по умолчанию.
Затем очистите плагины и темы. Перейдите к каталогу wp-content/plugins/ на вашем сервере. Удалите папки каждого плагина и заново загрузите свежие копии непосредственно из каталога плагинов WordPress.org или с аккаунтов коммерческих разработчиков. Повторите этот процесс для тем внутри wp-content/themes/ , гарантируя, что каждый файл заменен на неизмененную оригинальную копию.
Защита учетных записей администраторов, паролей и ключей безопасности
Замена файлов удаляет активное вредоносное ПО, но вы также должны закрыть точки входа, которые позволили злоумышленнику вообще загрузить эти файлы.
Сначала войдите в панель администрирования WordPress и перейдите в раздел Пользователи. Проверьте каждую учетную запись с ролью «Администратор». Если вы видите аккаунты, которые вам не знакомы, немедленно удалите их и закрепите любой созданный ими контент за вашей основной учетной записью.
Во-вторых, измените все пароли, связанные с сайтом. Сюда входит:
- Все учетные записи администраторов WordPress
- Данные для входа в панель управления хостингом (cPanel, Plesk или облачная панель)
- Учетные записи пользователей FTP, SFTP и SSH
- Пароль пользователя базы данных WordPress
В-третьих, сбросьте ключи аутентификации и соли (salts) WordPress. Откройте файл wp-config.php и найдите секцию, содержащую AUTH_KEY , SECURE_AUTH_KEY и связанные определения безопасности. Посетите официальный сервис генерации солей WordPress по адресу api.wordpress.org/secret-key/1.1/salt/ , чтобы сгенерировать совершенно новый набор случайных ключей. Вставьте эти новые значения поверх старых в файл wp-config.php и сохраните его. Изменение этих ключей делает недействительными все существующие сеансы входа и файлы cookie на сайте, заставляя всех, кто в данный момент вошел в систему, пройти повторную аутентификацию.
Запрос к Google на повторное сканирование очищенного сайта
Как только вредоносные файлы будут удалены, а файлы ядра восстановлены, спам-страницы на вашем сайте начнут возвращать HTTP-статус 404 Not Found. Однако индексы поисковых систем могут продолжать отображать закэшированные японские заголовки и описания в течение нескольких дней или недель, пока Google заново не проиндексирует сайт.
Чтобы ускорить этот процесс восстановления, войдите в Google Search Console:
- Используйте инструмент Проверка URL, чтобы проверить вашу главную страницу и основные посадочные страницы. Нажмите Запросить индексирование, чтобы побудить Googlebot загрузить свежую и чистую версию ваших страниц.
- Если у вас есть XML-карта сайта, перегенерируйте ее с помощью вашего SEO-плагина, чтобы она содержала только действительные и активные страницы. Перейдите в раздел Файлы Sitemap в Search Console и повторно отправьте URL вашей основной карты сайта.
- Следите за отчетом Страницы в течение следующих недель. Вы увидите, как количество проиндексированных спам-страниц неуклонно снижается по мере того, как Google пытается просканировать старые спам-URL и получает ответы 404.
Оставьте спам-URL доступными: не блокируйте их в .htaccess или robots.txt. Googlebot должен иметь возможность обратиться к этим URL и получить ответ 404 или 410, чтобы убедиться, что они навсегда удалены, и убрать их из результатов поиска.
Как OwnerTrail помогает следить за изменениями на вашем сайте
OwnerTrail — это бесплатный плагин WordPress, доступный на WordPress.org. Он помогает владельцам сайтов быть в курсе изменений в среде их веб-сайта до того, как проблемы с безопасностью приведут к появлению поискового спама.
Ежедневно OwnerTrail выполняет важные автоматические проверки целостности:
- Плагин сверяет файлы ядра, плагинов и тем WordPress с официальными релизами каждого из них для выявления неожиданных модификаций кода.
- Он проверяет не имеющие цифровой подписи файлы на предмет характерных паттернов вредоносного ПО.
- Он сообщает о PHP и других файлах кода, расположенных в папках, где исполняемому коду не место, таких как директории
uploads,languages,fonts,upgradeиbackup. - Он запрашивает ваши собственные страницы в качестве Googlebot, чтобы как можно раньше обнаружить SEO-спам, клоакинг и взлом с японскими ключевыми словами.
- Он отслеживает, кто управляет каждым установленным у вас плагином, фиксируя смену владельцев, появление новых разработчиков в публичной истории коммитов SVN, внезапный выход обновлений для давно заброшенных плагинов или закрытие плагинов на WordPress.org.
OwnerTrail присваивает каждому плагину показатель надежности (trust score) от 0 до 100 и может отправить вам электронное письмо, когда какая-либо находка потребует вашего внимания. В нем также реализована функция блокировки кода (Code Lock), гарантирующая, что код на сайте может быть изменен только по FTP, если владелец сайта явно не снимет блокировку. Начиная с версии 1.3.6, при смене владельца плагина его следующее обновление задерживается до тех пор, пока владелец сайта не подтвердит это изменение.
OwnerTrail обнаруживает угрозы и предупреждает о них; он не является брандмауэром. Чтобы узнать больше о его возможностях обнаружения и ознакомиться с подробными исследованиями, посетите официальный сайт OwnerTrail.
<p><strong>About OwnerTrail.</strong> A free WordPress plugin that watches who controls every plugin on your site, flags plugins WordPress.org has closed, checks your code against WordPress.org's fingerprints, and fetches your pages as Googlebot to catch spam shown only to search engines. It detects; it is not a firewall. <a href="https://wordpress.org/plugins/ownertrail/">Free on WordPress.org</a>.</p>
Связанные материалы: Взлом с японскими ключевыми словами: SEO-спам, который прячется от вас и показывает себя Google и PHP-файлу нечего делать в вашей папке загрузок.
Комментарии (0)
Пока нет комментариев — будьте первым.