Модуль для борьбы с роботами

Общие вопросы по использованию фреймворка. Если не знаете как что-то сделать и это про Yii, вам сюда.
Ответить
RuZzz
Сообщения: 85
Зарегистрирован: 2011.10.16, 23:43

Модуль для борьбы с роботами

Сообщение RuZzz »

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

Интересует встречал ли кто нибудь yii модуль( например в каких нибудь CMS), который бы позволял отличать людей от пользователей. Что нужно? Некий модуль, который можно было встроить в любое место страницы, типа как виджет. В отличии от обычных капч хочется, чтоб он включал в себя простенькие игры, головоломки, которые может выиграть только человек.То есть сам модуль не должен регистрировать пользователя, а только отвечать на вопрос, является ли пользователь роботом, либо человеком.

Возможно это необъязательно yii модуль, главное чтоб работало в yii приложении.

То есть ещё до регистрации я хочу давать пользователю тесты (например решить простенькию шахматную задачку).
Чтоб был в модуле некий конфиг где бы можно бы задать какой тест выводить пользователям, уровень сложности теста, настройкий шумов для графических картинок.

Если такого модуля не существует, может соберёмся и сделаем? Просто проблема в том, что роботы с каждым годом становятся умнее, поэтому такой модуль также нужно улучшать непрерывно.(надо же как то объеденяться в борьбе с роботами)

Аватара пользователя
futbolim
Сообщения: 2051
Зарегистрирован: 2012.07.08, 19:28

Re: Модуль для борьбы с роботами

Сообщение futbolim »

Конечно сделайте.
Внесёте большой вклад в развитие сообщества.

Аватара пользователя
lancecoder
Сообщения: 2532
Зарегистрирован: 2012.06.26, 17:16

Re: Модуль для борьбы с роботами

Сообщение lancecoder »

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

RuZzz
Сообщения: 85
Зарегистрирован: 2011.10.16, 23:43

Re: Модуль для борьбы с роботами

Сообщение RuZzz »

речь идёт о борьбе со спамом и рекламой. Мне кажется изобретать нужно, потому что пользователю интереснее поиграть в игры, чем вводить символы, но естественно не капчу2.

RuZzz
Сообщения: 85
Зарегистрирован: 2011.10.16, 23:43

Re: Модуль для борьбы с роботами

Сообщение RuZzz »

тут скорее всего гостю надо начислять(отнимать) балы когда он лазает по сайту, в пользу того что он человек. И где нибудь в настройках модуля указывать порог, при котором мы будем считать пользователь - человек.

Если кому интересна эта тема(или если есть готовые решения) пишите мне в личку.

sergo
Сообщения: 23
Зарегистрирован: 2012.10.23, 15:26
Откуда: Россия

Re: Модуль для борьбы с роботами

Сообщение sergo »

Ты изначально пошел в неверном направлении.

Сервисы массовового спама пользуются ручным распознаванием капч.
Вот примеры

Captchabot http://captchabot.com/ru/ – сервис автоматического распознавания графических образов, называемых CAPTCHA.
Высокое качество распознавания с помощью ручного набора команд наших аналитиков со всего мира.
Среднее время распознавания каптчи 5-16 сек, точность распознавания 95% и выше.


Antigate.Com http://antigate.com/
Это сервис по ручному распознаванию текста с изображений. Работает это просто: ваше приложение загружает изображение в нашу систему и через несколько секунд получает готовый текст.

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

RuZzz
Сообщения: 85
Зарегистрирован: 2011.10.16, 23:43

Re: Модуль для борьбы с роботами

Сообщение RuZzz »

речь идёт скорее об анализаторе поведения, а не капче. хотя такое средствами одного только php не сделать.

Аватара пользователя
ToxaDR
Сообщения: 87
Зарегистрирован: 2012.06.26, 23:03

Re: Модуль для борьбы с роботами

Сообщение ToxaDR »

существует 2 довольно простых способа отличить человека от бота.
Способ №1
В форму добавляете поля с именами "n1","n2","n3"..."nN" и делаете их видимыми для пользователя
Поля с именами "username","password","email" так же добавляете, но делаете их скрытыми (display:none как вариант).
На сервере проверяете, если вторая группа полей заполнена - то это бот.

Способ №2
В форму добавляете скрытое поле, в которое при загрузке страницы яваскриптом добавляете значение. Очевидно, что 99% ботов не обрабатывают яваскрипт. Ну а 1% можно и ручками отсеять.

Что скажете?

RuZzz
Сообщения: 85
Зарегистрирован: 2011.10.16, 23:43

Re: Модуль для борьбы с роботами

Сообщение RuZzz »

да я в курсе, прочитал ни одну статью по этому поводу. идей много, но сложно найти напарников. думаю в хорошей системе это должно происходить примерно так:
на сервере выполняется прога в непрерывном потоке. Сайт регистрирует действия гостя отмечает их в базе. А прога по данным в БД уже проверяет насколько пользователь по действиям на сайте похож на робота.

Мне бы хотелось написать такую прогу для консоли. Но по ходу нужен модуль yii приложения, который бы регистрировал действия пользователя, и давал бы пользователю дополнительные тесты(желательно не заметно для пользователя)

Аватара пользователя
AlexSimp
Сообщения: 568
Зарегистрирован: 2013.04.09, 11:30
Откуда: Киев

Re: Модуль для борьбы с роботами

Сообщение AlexSimp »

ToxaDR писал(а):существует 2 довольно простых способа отличить человека от бота.
Способ №2
В форму добавляете скрытое поле, в которое при загрузке страницы яваскриптом добавляете значение. Очевидно, что 99% ботов не обрабатывают яваскрипт. Ну а 1% можно и ручками отсеять.
Что скажете?
В случае со спамботом – это решение, но в случае ручного бота под конкретный апп – нет. Наличие скрытого поля вычисляется моментально, затем просто передается его значение вместе с остальными полями.
Но основной минус – то что вы не учитываете отключенный JS, при котором функционал будет не просто ограниченным, его не будет вовсе.
Жду, когда на форуме появятся вопросы "как сделать сайт на Yii?" и "как сложить два числа с помощью Yii?"...

Аватара пользователя
flashimage
Сообщения: 1517
Зарегистрирован: 2011.01.23, 12:43

Re: Модуль для борьбы с роботами

Сообщение flashimage »

Что если сделать js считывающий время между нажатием клавиш во время заполнения формы, кидать в массив, шифровать его и присваивать hidden перед оправкой формы. В контроллере проверять его по формуле (с ней будут я думаю самые большие проблемы))). Даже у идеально печатающего человека разные паузы между нажатиями. js код конечно нужно обфусицировать.
Так даже при выключенном js сабмит формы не пройдет.
Бранчи это гомеоморфические эндофункторы, которые мапятся на субманифолды пространства Гилберта.

Аватара пользователя
AlexSimp
Сообщения: 568
Зарегистрирован: 2013.04.09, 11:30
Откуда: Киев

Re: Модуль для борьбы с роботами

Сообщение AlexSimp »

flashimage писал(а):Что если сделать js считывающий время между нажатием клавиш во время заполнения формы, кидать в массив, шифровать его и присваивать hidden перед оправкой формы. В контроллере проверять его по формуле (с ней будут я думаю самые большие проблемы))). Даже у идеально печатающего человека разные паузы между нажатиями. js код конечно нужно обфусицировать.
Так даже при выключенном js сабмит формы не пройдет.
Весьма интересное решение. Но проблема остается – сабмит должен наоборот проходить безусловно. Любые ограничивающие js-решения могут быть использованы только как временные – дабы отвадить спам-ботов от хоста, когда они туда УЖЕ массово хлынули. В противном случае, в ловушку будут регулярно попадаться анонимусы, вебмастера и прочие странные личности с отключенным JS (например я иногда забываю включить js после тестирования проектов, вспоминаю только на vk.com :)).

Да и попадется вам однажды машинистка-перворазрядница, ой воплей будет :)
Жду, когда на форуме появятся вопросы "как сделать сайт на Yii?" и "как сложить два числа с помощью Yii?"...

Аватара пользователя
flashimage
Сообщения: 1517
Зарегистрирован: 2011.01.23, 12:43

Re: Модуль для борьбы с роботами

Сообщение flashimage »

ага получится "модуль для борьбы с роботами, странными личностями и машинистками-перворазрядницами" ))))
Бранчи это гомеоморфические эндофункторы, которые мапятся на субманифолды пространства Гилберта.

RuZzz
Сообщения: 85
Зарегистрирован: 2011.10.16, 23:43

Re: Модуль для борьбы с роботами

Сообщение RuZzz »

up темы. Может посоветуете готовый модуль регистрации на yii2, при этом чтоб умел работать с viewtopic.php?f=3&t=12402
При регистрации хотелось бы иметь некий виртуальный метод класс, в который можно было бы подсовывать разные виды проверок, например вместо капчи подгрузить какую нибудь простенькую игру.
А ещё нужна двухфакторная авторизация (Google Auth).
Или более кратко: нужен гибкий, мощный модуль для регистрации пользователей.
У меня есть версия регистрации на yii1 хотелось бы использовать старые наработки для дальнейшей разработки. А также нравятся модули CMS yupi, не знаю перешли ли они на yii2.
Я просто уже отхожу от yii2 в сторону программирования на D.

Ответить