Скриншот статистики этого сайта за 04 декабря 2013 года. Полторы тысячи бот-аккаунтов за сутки с целью разместить ссылку в профиле. Эти боты мне не нужны, они забивают базу данных и занимают много места.
Спам в комментариях я остановил — добавил пару строк кода и он на 90% прекратился! Теперь пришло время блокировать ботов по рецептам из сети!
Эти аккаунты регистрируются автоматически с помощью специальных программ, не спасает даже каптча. Например, xRummer уже давно научился ее распознавать.
Запретить спам можно по рецептам, описанным в сети для движка dle. Нужно всего лишь сменить название одного файла. И я на примере своего сайта сегодня начну эксперимент.
Переименовать Antibot.php
Заходим в папку /engine/modules, находим там файл antibot.php и изменяем его на любое имя, например guardian.php
Имеем следующее: мы переименовали (переместили) файл, который отвечает за обработку каптчи и бот-программа связывается с этим файлом, обходя эту каптчу. В нашем случае бот получит 404 ошибку и уйдет ни с чем.
Указать новые адреса
Теперь нам понадобится редактор с функцией поиска, например, Sublime Text 3, Notepad2, Notepad++
Необходимо открыть пять файлов и указать новое имя файла, которое мы переименовывали в пункте выше. Данные модули отвечают за корректную работу каптчи на сайте.
/engine/modules/show.full.php (коментарии)
/engine/modules/register.php (регистрация)
/engine/modules/feedback.php (обратная связь)
/engine/modules/lostpassword.php (Восстановление пароля)
/engine/modules/addnews.php (Добавление новости )
Открываем файл, жмем поиск (обычно Ctrl+F), вбиваем слово antibot.php и заменяем на то, которым переименовали ранее. В каждом файле по 2 раза В моем случае это guardian.php
Результат
Спустя сутки изменения произвели впечатляющий эффект. Количество автоматизированных регистраций снизилось на 85%
Вобщем, изменения не заставили себя долго ждать. Уже на следующий день, 05 декабря количество регистраций новых акаунтов уменьшилось на 85%
А еще через день, 06 декабря, смотрите сами:
Смотрите также дополнительный способ защиты от ботов — установка чекбокса при регистрации.
Изменения в DLE 10.1
Начиная с версии 10.1 разработчик изменил некоторые параметры данных модулей, а именно перенес их в другое место и искать их более нет смысла т.к. найдена наиболее эффективная система защиты — интеллектуальная в виде вопрос-ответ с ключевыми словами.
В DLE встроена система вопрос-ответ для регистрации, где мы пишем любой вопрос, например задачу на расчет, вида
2 + 2 * 2 или
два плюс 2 и умножить на II
и указываем ответы, например, “6” и “шесть”. Если ответ введен правильно, регистрация разрешается
Проверка работоспособности каптчи!
А как на счет файлов:
antivirus.class.php
pm.php
addcomments.php
В них же тоже прописан antibot.php…
Уже не важно. Протестил "вопрос-ответ" и он гораздо эффективнее описанного тут т.к. искусственный интеллект еще не придумали )