Боремся со спамом в комментариях без CAPTCHA

  • 4 Ответов
  • 479 Просмотров

0 Пользователей и 1 Гость просматривают эту тему.

*

Vitos

Недавно случилась неприятность, напали на каталог товаров боты, примерно 100-120 комментов к товарам в день. Используются дефолтные комментарии магазина.
Начальство капчу ставить не хочет, решил сделать JavaScript ловушку для ботов со скрытым полем. Основывается на том, что простые спамилки не могут работать с JavaScript. Вариантов реализации и обсуждений в инете много.
Решение очень простое, в несколько строк, но оказалось неожиданно эффективным... Больше недели спама нет. Решил поделиться, может кому тоже поможет.
Работает на  JoomShopping 3 и 4. Требуется установить и опубликовать плагин.
Понятно, что клиенты с отключенным JS оставить коммент не смогут.
Критика и советы по допилу приветствуются. А то я плагинов раньше не делал, профан в этих делах.

*

srg

да, решение хорошее, ботов не понимающих js отсеивает отлично.

По коду: от JRequest по-тихоньку отказывайтесь, устаревший класс, в следующих версиях Joomla его вообще вырежут. Переходите на Jinput http://joomlablog.ru/dokumentatsiya/dlya-razrabotchika/api/484-jinput-poluchenie-i-filtratsiya-peremennykh-zaprosa  тогда ваши плагины и на следующих версиях Joomla будут работать

*

Vitos

srg, спасибо за полезный совет!
Где то еще читал, что данные можно записывать не в поле а в сессию, тогда боту нужно будет поддерживать не только JS а еще и куки.
Как вы думаете, это повысит уровень защиты?

*

dmitry_stas

ну теоретически оно конечно повысит.... но вопрос в том, что поддержка js реализуется в 100500 раз сложнее чем поддержка куков. бот, который понимает js, с вероятностью 99.99% понимает сессии.
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций

*

Vitos

бот, который понимает js, с вероятностью 99.99% понимает сессии.
Понятно... Примерно так и предполагал, но хотелось услышать людей сведущих.