Как взламывают сайты малого бизнеса: разбор на собственном опыте

Как взламывают сайты малого бизнеса: разбор на собственном опыте
Коротко

  • Взломали не «хакеры ради денег», а автоматика, ищущая уязвимые сайты пачками.
  • Цель — не испортить вам сайт, а разместить на нём чужие страницы для чужого продвижения.
  • Дольше всего живут не файлы, а следы в индексе поисковика: у нас — 623 адреса спустя два года.
  • 404 их не убирает. Нужен 410 — и терпение.

Об этом неудобно писать, но полезнее, чем очередной текст «десять советов по безопасности». Расскажем на своём.

Что произошло

В 2024 году на sweb.com.ua появились страницы, которых мы не делали: итальянские карточки товаров вроде /Coffee-Remover-32oz-Pack-Of-2-Made-In-USA-m-372907. Несколько сотен штук. Мы их не видели — на сайте они не были в меню и не появлялись в навигации. Их видел только поисковый робот.

Это называется паразитным размещением. Злоумышленнику не нужен ваш бизнес — ему нужен домен с хоть какой-то репутацией, чтобы чужие страницы быстрее попали в индекс.

Как обычно заходят

В подавляющем большинстве случаев — не через сложную атаку, а через одно из трёх:

  • Устаревший плагин. Уязвимость опубликована, обновление вышло, ваш сайт обновили через полгода.
  • Слабый пароль администратора. Особенно если логин — admin, а перебор идёт роботом.
  • Чужой шаблон с торрента. Вместе с дизайном приезжает закладка.

Чистка — это половина дела

Файлы мы убрали, ядро проверили по контрольным суммам, базу почистили. Казалось, всё.

Через два года в Search Console висело 623 адреса в разделе ошибок. Страниц давно нет, они отдают 404 — но Google послушно приходил за ними снова и снова, потому что на них до сих пор ссылаются сайты чужой сети. Каждый отчёт об индексации начинался с чужого мусора.

Что в итоге сработало

410 вместо 404. Это главное. 404 означает «сейчас не найдено» — робот предполагает, что страница может вернуться, и заходит ещё раз. 410 означает «удалено навсегда» — и адрес вылетает из очереди обхода значительно быстрее.

Карта сайта с мусором. Звучит странно, но работает: собираем все мёртвые адреса в отдельный sitemap.xml и подаём в Search Console. Google перечитывает их пачкой, получает 410 и снимает с учёта. Без карты тот же процесс растягивается на месяцы.

Терпение. Быстрее нескольких недель это не происходит ни при каких условиях. Инструмент «Удаление URL» здесь не помогает — он прячет на полгода то, что есть в индексе, а этих адресов в индексе уже и не было.

Что сделать у себя сегодня

  • Проверьте в Search Console раздел индексации — нет ли там адресов, которых вы не создавали.
  • Переименуйте пользователя admin, если он у вас есть.
  • Включите двухфакторную аутентификацию в админке.
  • Убедитесь, что резервные копии делаются вне хостинга.

Последний пункт самый важный. Бэкап, лежащий на том же сервере, в момент проблемы обычно оказывается зашифрованным вместе с сайтом.

Поддержка сайта от $25 в месяц: обновления, ежедневные резервные копии вне хостинга, мониторинг и безопасность.

Поддержка сайта

Нужна помощь с этим?

Поддержка сайта от $100 / мес.

Оставить Заявку