Chrome Dev Summit 2018 is happening now and streaming live on YouTube. Watch now.

Восстановление сайта после взлома с добавлением бессмысленного текста

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

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

Оглавление

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

Бессмысленный текст. В процессе атаки автоматически создается большое количество страниц с бессмысленным текстом, содержащим множество ключевых слов, которые относятся к вашему сайту. Вы не создавали эти страницы, но их URL выглядят осмысленными и интересными для пользователей. Так хакеры добиваются того, чтобы эти страницы появились в результатах поиска Google. Когда пользователи открывают такие страницы, они перенаправляются на совершенно другие ресурсы, например сайты, предназначенные только для взрослых. За это хакеры получают деньги. Вот примеры URL, которые можно увидеть на сайте, подвергшемся такому взлому:

  • www.example.com/modnyje-strizhki-makiyazh.html
  • www.example.com/krasivyje-foto-peyzazhi.html
  • www.example.com/krasivaya-muzyka-do-sljoz.php

Они могут находиться в папке с бессмысленным названием и содержать иностранные слова.

  • www.example.com/jfwoea/cheap-hair-styles-cool.html
  • www.example.com/jfwoea/free-pictures-fun.html
  • www.example.com/jfwoea/www-ki-motn-dudh-photo.php
  • www.example.com/jfwoea/foto-cewe-zaman-sekarang.php

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

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

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

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

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

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

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

Страницы, подвергшиеся взлому такого типа, перенаправляют пользователей на другие сайты с помощью файла htaccess.

Этап 1

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

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

Этап 2

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

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

Поиск и удаление других вредоносных файлов (5 этапов)

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

Этап 1

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

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

Этап 2

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

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

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

  <title>{keyword}</title>
  <meta name="description" content="{keyword}" />
  <meta name="keywords" content="{keyword}" />
  <meta property="og:title" content="{keyword}" />

Кроме того, в большинстве этих файлов есть код, который смещает ссылки и текст со спамом за пределы видимой части страницы.

  <div style="position: absolute; top: -1000px; left: -1000px;">
  Cheap prescription drugs
  </div>

Удалите эти файлы TXT. Если все они находятся в одной папке, можно удалить всю папку.

Этап 3

Найти вредоносные файлы PHP немного сложнее. Их на сайте может быть несколько. Они могут находиться в одном подкаталоге или в разных.

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

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

Этап 4

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

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

<!--Hackers try to confuse webmasters by encoding malicious code into blocks
of texts. Be wary of unfamiliar code blocks like this.-->

base64_decode(strrev("hMXZpRXaslmYhJXZuxWd2BSZ0l2cgknbhByZul2czVmckRWYgknYgM3ajFGd0FGIlJXd0VnZgk
nbhBSbvJnZgUGdpNHIyV3b5BSZyV3YlNHIvRHI0V2Zy9mZgQ3Ju9GRg4SZ0l2cgIXdvlHI4lmZg4WYjBSdvlHIsU2chVmcnBydv
JGblBiZvBCdpJGIhBCZuFGIl1Wa0BCa0l2dgQXdCBiLkJXYoBSZiBibhNGIlR2bjBycphGdgcmbpRXYjNXdmJ2blRGI5xWZ0Fmb
1RncvZmbVBiLn5WauVGcwFGagM3J0FGa3BCZuFGdzJXZk5Wdg8GdgU3b5BicvZGI0xWdjlmZmlGZgQXagU2ah1GIvRHIzlGa0B
SZrlGbgUGZvNGIlRWaoByb0BSZrlGbgMnclt2YhhEIuUGZvNGIlxmYhRWYlJnb1BychByZulGZhJXZ1F3ch1GIlR2bjBCZlRXY
jNXdmJ2bgMXdvl2YpxWYtBiZvBSZjVWawBSYgMXagMXaoRFIskGS"));

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

Этап 5

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

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

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

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

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

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

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

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

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

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

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

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

Отсутствует инструмент, который, по вашему мнению, может быть полезен? Сообщите нам об этом.