Откуда столько «пользователей»
На сайте была включена открытая регистрация и комментарии. Боты массово обходят такие сайты по двум причинам:
- ссылки в профилях и комментариях — расчёт на то, что часть из них опубликуется и даст ссылку на спам-сайт;
- задел на будущее — аккаунт на сайте пригодится, если в каком-то плагине найдут уязвимость, доступную любому вошедшему пользователю.
Комментарии все до одного висели в статусе «на модерации» — на сайте их не было видно, поэтому владелец о них не знал. Визиты в Метрике — это те же боты, которые заходят на страницы регистрации и отправки комментария.
Что сделали
- Удалили 4 851 аккаунт, оставив только администратора и рабочий аккаунт магазина.
- Удалили 1 792 комментария — все были спамом на модерации.
- Закрыли регистрацию: в «Настройки» → «Общие» снята галочка «Любой может зарегистрироваться».
- Закрыли комментарии и пинги по умолчанию и на всех существующих записях — магазину они не были нужны.
- Заблокировали
xmlrpc.phpи страницу регистрации в.htaccess— через XML-RPC идёт большая часть автоматического спама и подбора паролей.
# .htaccess — закрыть XML-RPC
<Files xmlrpc.php>
Require all denied
</Files>
Отдельно рекомендовали владельцу удалить плагин файлового менеджера: при первой же уязвимости через него можно получить доступ ко всем файлам сайта.
Если регистрация на сайте нужна
Интернет-магазину регистрация покупателей бывает нужна. Тогда закрывать её нельзя, но можно отсечь ботов:
- капча на форме регистрации и комментариев — например, Яндекс SmartCaptcha;
- подтверждение почты до активации аккаунта;
- роль по умолчанию — «Подписчик» или «Покупатель», никогда не выше;
- периодическая чистка аккаунтов без заказов и без входов;
- фильтр ботов в Метрике, чтобы аналитика показывала людей.
Частые вопросы
Спам-регистрации — это взлом?
Само по себе — нет, файлы сайта не заражены. Но это признак, что сайт попал в списки ботов, и подготовка к взлому, если найдётся уязвимость. Стоит проверить и файлы, и администраторов.
Как быстро удалить тысячи пользователей?
Через WP-CLI: выбрать всех пользователей с ролью «Подписчик» без заказов и удалить одной командой. Через админку это займёт часы. Перед массовым удалением сделайте резервную копию базы.
Почему Метрика показывает тысячи визитов?
Часть ботов выполняет JavaScript и засчитывается как посетители. Включите фильтрацию роботов в настройках счётчика и посмотрите отчёт «Роботы».