[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: bot+форма
Guest
очень заинтереаовал вопрос, если спам бот заполняет форму и "нажимает" потом сабмит, то js событие онклик, например, выполняется? или оно выполнится только после непосредственного клика на мышь человеком?

очень нужно знать!!



Спустя 10 минут, 27 секунд (30.07.2010 - 11:02) Basili4 написал(а):
Бот эмулирует нажатие на кнопу и будет вызвано событие onclick

Можно спрятать кнопку от бота или например событие оnClick навешивать скриптом боты сколько я знаю js скрипты не выполняют тогда будут проходить все люди у которых разрешен JS в настройках

Спустя 1 минута, 5 секунд (30.07.2010 - 11:03) Семён написал(а):
Смотря какой бот, если заранее автокликер подготовленный, то защите облом.
Если обычный бот, опять же заранее подготовленный, то защите облом (проследит что должно происходить после onClick и пойдёт дальше...)
Если бот первопроходец - спасенье таким способом есть. wink.gif

Спустя 3 минуты, 39 секунд (30.07.2010 - 11:06) Guest написал(а):
Basili4
хорошо, понял, только вопрос сразу возникает, ведь один раз хозяин бота может заглянуть в js скрипты и найти функцию, которая создает событие, а потом он ведь сможет запрограммировать бота уже напрмую добавлять это событие...?

Спустя 1 минута, 10 секунд (30.07.2010 - 11:08) Семён написал(а):
Guest
Читай мой п.2

Спустя 1 минута, 9 секунд (30.07.2010 - 11:09) Guest написал(а):
Семён
в моей ситуации онклик должен свидетельствовать, что нажавший был человек, как максимально надежно этого добиться?

Спустя 17 секунд (30.07.2010 - 11:09) Basili4 написал(а):
Ну в этом случае школота пользующая чужие боты отпадает это меньше спама. Плюс к этому навешать других защит. Которые сделают твой сайт менее привлекательным для Спамеров

Спустя 2 минуты, 40 секунд (30.07.2010 - 11:12) Guest написал(а):
Basili4
ну пока я так и думаю делать, но очень хочется найти что-то координально отличающее человека от бота. можно конечно js скрипты так написать, что черт не разберет что там, но тоже не лучший выход)))

Спустя 6 минут, 47 секунд (30.07.2010 - 11:19) Basili4 написал(а):
Бот не исполняет скрипты js. но во всяком случае если и исполняет то очень редкий бот

Спустя 36 минут, 27 секунд (30.07.2010 - 11:55) Семён написал(а):
Цитата (Guest @ 30.07.2010 - 12:12)
Basili4
ну пока я так и думаю делать, но очень хочется найти что-то координально отличающее человека от бота. можно конечно js скрипты так написать, что черт не разберет что там, но тоже не лучший выход)))

Придумаешь этот способ обязательно выходи на Facebook и Vkontakte с деловым предложением ))) разбогатеешь )

Спустя 6 минут, 32 секунды (30.07.2010 - 12:02) Basili4 написал(а):
А вообще тема интересная.

Спустя 30 минут, 19 секунд (30.07.2010 - 12:32) Guest написал(а):
Семён
ахахахах)))))
Basili4
ага, а главное актульная очень)

Спустя 2 часа, 10 минут, 54 секунды (30.07.2010 - 14:43) Guest написал(а):
ааа, кстати, бот при нажатии на самбит имитирует onclick или onmousedown? или оба?))

в общем я сделал через js, натипа
document.getElementById('x').onmousedown=function(){}

но вот сомнения жуткие)) а бота сам не смогу сделать такого, чтобы проверить)

Спустя 8 минут, 55 секунд (30.07.2010 - 14:52) FatCat написал(а):
Цитата (Basili4 @ 30.07.2010 - 12:19)
Бот не исполняет скрипты js. но во всяком случае если и исполняет то очень редкий бот

Бред.
Чтобы писать защиты от ботов, посоветую для начала изучить ботов.


Цитата (Guest @ 30.07.2010 - 12:12)
можно конечно js скрипты так написать, что черт не разберет что там

Это ничего не даст.
Ботописатель не будет расшифровывать джаваскрипты, ботописатель в дебагере подменит в форме POST на GET и посмотрит в адресной строке все передаваемые параметры в открытом виде.


Цитата (Guest @ 30.07.2010 - 15:43)
бот при нажатии на самбит имитирует onclick или onmousedown? или оба?))

Ничего он не имитирует.
Бот считывает теги и подставляет в запрос имена переменных из тегов и их значения из своей базы.
По сути, играми с "онкликом", Вы лишь создаете динамические теги, которые бот не видит.
Пока у Вас не фейсбук и не вконтакт, никому нафиг не сдалось настраивать под Ваш сайт бота вручную и ботов не будет.
Для высокопосещаемых сайтов требуются уже иные алгоритмы защиты, похитрее.

Спустя 24 минуты, 30 секунд (30.07.2010 - 15:16) Семён написал(а):
Цитата (FatCat @ 30.07.2010 - 15:52)
Для высокопосещаемых сайтов требуются уже иные алгоритмы защиты, похитрее.

И то сцуки спамят безбожно )))

Спустя 9 минут, 11 секунд (30.07.2010 - 15:25) Basili4 написал(а):
Спам боты заходят по ссылкам которые человек не видит Но по этим ссылкам могут ходить и поисковые роботы если их отделить от спам бота тогда что можно и сделать только вопрос как?

Спустя 39 минут, 22 секунды (30.07.2010 - 16:05) Guest написал(а):
FatCat
помоги разобраться больше
вот у меня пара интутов
<input name='pass' type='password' maxlength='20' />
<input name='login' type='text' maxlength='20' />
<input name='email' type='text' maxlength='20' />
а вот сабмит
<input id="x" type="submit" />

<script type="text/javascript">
document.getElementById('x').onmousedown='';
document.getElementById('x').onmousedown=start;
function start() { //после этой функции все начинает работать уже на стороне сервера
}
</script>


вот меня вопрос конкретно интересует, легко ли бота запраграммировать
добавлять к сабмиту

<input id="x" onmousedown="start()" type="submit" />

и как бот реагирует на это
document.getElementById('x').onmousedown=start;

Спустя 19 дней, 23 часа, 33 минуты, 15 секунд (20.08.2010 - 15:38) Белый Тигр написал(а):
Я как-то раз на практике использовал следующий способ защиты. При клике на кнопку отправки формы к её action`у через JS приписывался дополнительный параметр и она отправлялась. А на стороне сервера проверялось наличие этого параметра. Способ очень эффективен против массовых ботов-спамеров. Ещё и пользователям не нужно никаких чисел с картинок вводить. Но как только у вас будет огромная посещаемость, могут появиться люди которые специально под ваш сайт напишут отдельного бота. Тогда будет уже в разы сложнее и надеятся останется только на такие решения как ReCaptcha.
Что касается обработки JS ботами, то теоретически (я таких не встречал) такое возможно. Самый простой способ - через использование COM/XPCOM.
В большинстве же своём, они JS не обрабатывают. Так что некоторые уловки из этой области вполне прокатят.

Спустя 2 часа, 39 минут, 26 секунд (20.08.2010 - 18:17) DedMorozzz написал(а):
До первого посетителя бото-писателя. Такая защита обходится в момент

Спустя 57 секунд (20.08.2010 - 18:18) FatCat написал(а):
Цитата (Белый Тигр @ 20.08.2010 - 16:38)
надеятся останется только на такие решения как ReCaptcha

Цена вопроса обхода рекапчи измеряется несколькими центами за каждую разгаданную.
Если ценность спам-сообщения в ваш форум выше нескольких центов, рекапчу разломают в пух и прах, а нормальным посетителям она причинит массу неудобств.


Я остаюсь при своем мнении, что джаваскриптовая защита - самая лучшая защита, кроме конечно ручной проверки модератором. И чем меньше остается программистов, пишущих на языке ядра js, тем меньше шансов, что мой алгоритм взломают. Даже тот примитив, что стоит на этом форуме и скопирован еще на десятки форумов в сети, за несколько лет не взломали ни разу.

Спустя 2 минуты, 17 секунд (20.08.2010 - 18:21) DedMorozzz написал(а):
Velson как-то упоминал, что лишь из-за того, что это никому не надо было...

Спустя 29 минут, 32 секунды (20.08.2010 - 18:50) FatCat написал(а):
Цитата (DedMorozzz @ 20.08.2010 - 19:17)
До первого посетителя бото-писателя.

Последний хрум обходит эту защиту в автоматическом режиме: он тупо ищет теги инпутов внутри джаваскриптов и их значения, и тупо подставляет имена тегов и значения в массив передаваемого по POST.

Прежде чем делать защиты, полезно изучить врага.
Сегодняшние боты не читают стилей, и защиту от ботов можно построить вообще на css, вообще без джаваскрипта, и я знаю ресурсы, которые так и защищаются. Но это и в самом деле до первого ботописателя. smile.gif

Джаваскрипт позволяет прятать код. И не только шифрованием кода, нередко простым разнесением, как это сделано например здесь для кнопки user posted image
Поищи, откуда джаваскрипт берет ник модератора для подстановки в теги. Найти будет не сложно, потому что ты знаешь что искать: посмотришь где генерится код кнопки, найдешь функцию сборки кода, в функции найдешь имя переменной, а по имени переменной найдешь и где задается значение.
Когда ты не знаешь что искать и нет начальной точки для поиска - найти место вывода значения проверочной переменной намного сложней..
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.