The #ChromeDevSummit site is live, happening Nov 12-13 in San Francisco, CA
Check it out for details and request an invite. We'll be diving deep into modern web tech & looking ahead to the platform's future.

Восстановление сайта после взлома с добавлением японских ключевых слов

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

Примечание. Если вы не можете точно определить, взломан ли ваш сайт, прочитайте сначала это руководство.

Оглавление

Идентификация этого типа взлома

Главный признак – японские ключевые слова. После атаки такого типа на сайте обычно создаются каталоги с бессмысленными названиями. В них добавляются страницы с текстом на японском языке. Вот пример такой страницы:

При этом хакер нередко указывает в Search Console, что является владельцем ресурса, чтобы увеличить доход, изменяя различные настройки сайта (геотаргетинг, карты сайта и др.). Если вы получили оповещение, что кто-то подтвердил ваш сайт в Search Console, это с высокой долей вероятности означает, что ваш ресурс взломан.

Для начала с помощью инструмента Проблемы безопасности в Search Console проверьте, обнаружил ли сканер Google такие взломанные страницы на вашем сайте. Иногда их можно найти, если в окне Google Поиска ввести site:[your site root URL] (после двоеточия укажите корневой URL своего веб-ресурса). Так вы увидите страницы сайта, которые проиндексированы Google, в том числе взломанные. Просмотрите несколько страниц с результатами поиска и проверьте, нет ли на них необычных URL. Если в Google Поиске взломанных страниц не обнаружилось, используйте те же запросы в другой поисковой системе. Другие поисковые системы могут показать взломанный контент, который удален из индекса Google. Вот несколько примеров таких URL:

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

Также может появиться сообщение о том, что страница не существует (например, ошибка 404). Однако это может не соответствовать действительности: хакеры вводят пользователей в заблуждение, создавая впечатление, что взломанная страница исчезла или работает нормально. Это делается с помощью маскировки контента. Чтобы выявить маскировку, введите URL страниц своего сайта в инструменте Просмотреть как Googlebot. Он позволяет увидеть ту или иную страницу так, как ее видит робот Google.

Устранение последствий

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

Удаление вновь созданных аккаунтов из Search Console

Если в ваш аккаунт Search Console добавлен новый владелец, которого вы не знаете, как можно скорее заблокируйте его. Узнать, какие пользователи подтверждены для вашего сайта, можно в Центре веб-мастеров. Нажмите на ссылку "Сведения о подтверждении", чтобы посмотреть всех подтвержденных пользователей.

Узнайте, как удалить владельца из Search Console. Вам нужно удалить связанный токен подтверждения. Как правило, это либо файл HTML в корневом каталоге сайта, либо динамически сгенерированный файл .htaccess, похожий на файл HTML.

Если вы не можете найти HTML-токен подтверждения на своем сайте, проверьте правило перезаписи в файле .htaccess. Оно выглядит примерно так:

  RewriteEngine On
  RewriteRule ^google(.*)\.html$ dir/file.php?google=$1 [L] 

Примечание. Обычно, чтобы проверить, удален ли динамически созданный токен подтверждения, нужно перейти на имитацию файла по адресу, который имеет такую структуру: wwww.example.com/google[random number and letters].html (в квадратных скобках могут быть произвольные буквы и цифры). Например, если ваш сайт www.brandonsbaseballcards.com, попробуйте перейти на страницу www.brandonsbaseballcards.com/google1234.html. Если она возвращает код ошибки HTTP 404, то динамически созданный токен подтверждения, вероятно, удален.

Чтобы удалить динамически созданный токен подтверждения из файла .htaccess, выполните действия, описанные ниже.

Проверка файла .htaccess (2 этапа)

Для создания динамических токенов подтверждения хакеры, помимо файла .htaccess, часто используют правила перенаправления пользователей или добавления страниц со спамом в виде бессмысленного текста. Если в файле .htaccess у вас нет собственных правил, попробуйте заменить его новым файлом.

Этап 1

Найдите на своем сайте файл .htaccess. Если вы не знаете, где он находится, и используете платформу для создания сайтов (например, WordPress, Joomla или Drupal), в поисковой системе введите запрос "как найти файл .htaccess" и укажите название платформы. Учтите, что таких файлов может быть несколько. Составьте список путей ко всем файлам .htaccess.

Этап 2

Замените все файлы .htaccess исходной или стандартной версией. Чтобы найти ее, введите в поисковой системе запрос "файл .htaccess по умолчанию" и название платформы, на которой размещен ваш сайт.

Примечание. Файлы .htaccess часто бывают скрытыми. При поиске убедитесь, что они отображаются.

Удалите все вредоносные файлы и скрипты (4 этапа)

Выявление вредоносных файлов может оказаться сложным и занять несколько часов. Во время проверки файлов не спешите. Не забудьте создать их резервные копии. Чтобы узнать, как это сделать, введите в Google поисковый запрос "резервная копия сайта" и укажите название платформы, на которой размещен ваш веб-ресурс.

Этап 1

Если вы используете платформу для создания сайтов, переустановите все основные файлы, которые применяются в ней. Таким образом вы избавитесь от взломанного контента. Чтобы узнать, как это сделать, введите в Google поисковый запрос "переустановка" и укажите название платформы, на которой размещен ваш веб-ресурс. Если у вас есть плагины, модули, расширения или темы, обязательно переустановите их.

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

Этап 2

Хакеры часто меняют карту сайта или добавляют новые файлы Sitemap, чтобы ускорить индексацию URL страниц. Если у вас уже был файл Sitemap, проверьте его на наличие подозрительных ссылок и удалите их. Если вы обнаружили файлы Sitemap, которые вы не добавляли, внимательно проверьте их и удалите, если они содержат только ссылки на спам.

Этап 3

Проверьте, не осталось ли вредоносных или взломанных файлов. Возможно, вы уже удалили их на предыдущих этапах. Однако рекомендуется выполнить описанные ниже действия на случай, если вы что-то пропустили.

Не беспокойтесь: вам не нужно открывать и просматривать каждый файл PHP. Для начала создайте список подозрительных файлов с этим расширением, которые нужно проверить. Ниже описано, как определить такие файлы.

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

Примечание. Хакеры обычно добавляют скрипты в следующие файлы: index.php, wp-load.php, 404.php и view.php.

Этап 4

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

Если вы используете систему управления контентом и обычно не редактируете эти файлы напрямую, сравните файлы на своем сервере со списком файлов, используемых в вашей системе по умолчанию. Выполните такое сравнение для плагинов и тем. Ищите отсутствующие файлы или файлы большего, чем обычно, размера.

Проверьте выявленные подозрительные файлы на наличие блоков с запутанным кодом. Он выглядит как бессмысленный набор букв и цифр. Таким блокам обычно предшествуют функции PHP, например base64_decode, rot13, eval, strrev, gzinflate. Ниже приведен пример такого кода. Он может не содержать пробелов и переноса строки (благодаря этому он кажется короче, чем есть на самом деле).

  $O_O0O_O0_0=urldecode("%6E1%7A%62%2F%6D%615%5C%76%740%6928%2D%70
  %78%75%71%79%2A6%6C%72%6B%64%679%5F%65%68%63%73%77%6F4%2B%6637%6A");
  $OO0_0OO0__=$O_O0O_O0_0{26}.$O_O0O_O0_0{6}.$O_O0O_O0_0{10}.$O_O0O_O0_0{30}

Убедитесь, что на сайте нет вредоносных файлов

Удалив взломанные файлы, убедитесь, что на сайте не осталось следов взлома. С помощью инструмента "Просмотреть как Googlebot" снова проверьте, есть ли на сайте найденные вами ранее страницы с бессмысленным текстом. Если вы видите статус "Не найдено", это с большой вероятностью означает, что все в порядке.

Также проверить наличие взломанного контента на сайте можно, следуя этим инструкциям.

Как предотвратить повторный взлом?

Устранение уязвимостей на сайте – важный заключительный этап работы. Недавнее исследование показало, что 12% взломанных сайтов снова подвергаются атаке в течение 30 дней. Прежде всего вам нужно понять, как именно был взломан ваш сайт. Начните с изучения этого руководства. Если прояснить ситуацию не удалось, выполняйте действия, перечисленные в контрольном списке ниже.

  • Регулярно сканируйте свой компьютер. Для поиска уязвимостей и вредоносных программ используйте надежное антивирусное ПО.
  • Регулярно меняйте свои пароли. Периодическое изменение паролей к аккаунтам провайдера, FTP, системе управления контентом и т. д. снижает вероятность несанкционированного доступа к сайту. Пароль для каждого аккаунта должен быть надежным и уникальным.
  • Используйте двухфакторную аутентификацию везде, где это возможно: она усложнит проникновение для хакеров, даже если они украдут ваш пароль.
  • Регулярно обновляйте систему управления контентом, плагины, расширения и модули. Часто причиной взлома становится устаревшее программное обеспечение, на котором работает сайт. В некоторых системах управления контентом обновление выполняется автоматически.
  • Система обеспечения веб-безопасности. Есть немало надежных сервисов, которые помогут вам уберечь сайт от взлома. Воспользуйтесь их услугами.

Дополнительные ресурсы

Если вам по-прежнему не удается устранить проблемы на сайте, воспользуйтесь дополнительными ресурсами.

Эти инструменты просканируют ваш сайт и помогут найти проблемный контент. Google не связан ни с одним из них, кроме VirusTotal.

Вот несколько таких сервисов: Virus Total, Aw-snap.info, Sucuri Site Check, Quttera. Обратите внимание, что проверка этими сканерами не является абсолютной гарантией удаления проблемного контента.

Другие ресурсы Google, которые помогут вам устранить проблему: