Антибот 100500

Здесь авторы могут постить бета-версии своих модификаций для phpBB 3.0.x. Внимание! Не устанавливайте бета-версии модов на работающие форумы!
Правила форума
Местная Конституция | Шаблон запроса | Документация (phpBB3) | Переход на 3.0.6 и выше | FAQ-3 (phpbb3) | Как задавать вопросы | Как устанавливать моды

Ваш вопрос может быть удален без объяснения причин, если на него есть ответы по приведённым ссылкам (а вы рискуете получить предупреждение ;) ).
Закрыто
Аватара пользователя
Nekstati
Former team member
Сообщения: 2641
Зарегистрирован: 19.03.2009 17:43
Благодарил (а): 11 раз
Поблагодарили: 904 раза

Антибот 100500

Сообщение Nekstati » 31.03.2012 2:06

Мод исключает активность спам-ботов, не поддерживающих Javascript. Если на вашем форуме спамят именно такие боты, то вы сможете забыть о спаме и даже отключить капчу. А если у вас водятся умные редкие звери с поддержкой Javascript, то пользы от этого мода вам не будет. Определить это можно лишь опытным путём. :)

Побочный эффект: пользователи, в браузерах которых отключён Javascript, не смогут регистрироваться и оставлять сообщения. Они будут получать ошибку отправки формы. У кого-то из вас Javascript таки отключён? Вы молодец, купите себе сникерс.

Установка мода: 1) скопировать файл hook_antibot100500.php в папку includes/hooks/, 2) очистить кэш форума.

———————————————————————————————

Опционально, для успокоения нервов любителей сникерсов, можно изменить текст выводимой ошибки: найти в файле language/ru/common.php

Код: Выделить всё

	'FORM_INVALID'			=> 'Ошибка отправки формы. Попробуйте ещё раз.',
и заменить на что-то вроде

Код: Выделить всё

	'FORM_INVALID'			=> 'Ошибка отправки формы. Попробуйте ещё раз. Проверьте, включён ли Javascript.',
Если хотите, можете оставить антибот включённым только для гостей, хотя теоретически при этом опасность прорывания спама может увеличиться (т. е. если бот каким-то образом умудрится зарегистрироваться, то спамить ему уже ничто не помешает). Для этого найдите в хуке строку

Код: Выделить всё

	if (!defined('ADMIN_START') && !defined('IN_INSTALL') && defined('HEADER_INC') && !empty($template->_rootref['S_FORM_TOKEN']) && isset($template->_rootref['DEBUG_OUTPUT']))
и замените на

Код: Выделить всё

	if (!$user->data['is_registered'] && defined('HEADER_INC') && !empty($template->_rootref['S_FORM_TOKEN']) && isset($template->_rootref['DEBUG_OUTPUT']))
Решение проблемы "Ошибка отправки формы" в мобильных и не стандартных стилях --> читать тут
antibot100500_v4.zip
(1 КБ) 2143 скачивания

MAzZY
Бывший член :)
Сообщения: 2942
Зарегистрирован: 14.05.2005 23:43
Благодарил (а): 79 раз
Поблагодарили: 71 раз
Забанен: Бессрочно

Re: Антибот 100500

Сообщение MAzZY » 01.04.2012 18:24

Это тот самый мод, о котором шла речь вот здесь - Антиспам-мод
Визуальное подтверждение можно отключить. Оставьте что-то только для случаев, когда пользователь три раза ошибается с вводом пароля.

Аватара пользователя
nissin
phpBB 3.0.3
Сообщения: 2108
Зарегистрирован: 16.12.2007 14:01
Откуда: Павлодар
Благодарил (а): 7 раз
Поблагодарили: 329 раз
Контактная информация:

Re: Антибот 100500

Сообщение nissin » 02.04.2012 23:47

Кто-нибудь в Хроме проверял?
А то клиент пожаловался, что перестали работать формы в админ.разделе и я мод быстренько удалил (разбираться некогда было).
Всё повторяется. nurlan.info

Аватара пользователя
Nekstati
Former team member
Сообщения: 2641
Зарегистрирован: 19.03.2009 17:43
Благодарил (а): 11 раз
Поблагодарили: 904 раза

Re: Антибот 100500

Сообщение Nekstati » 03.04.2012 8:15

nissin, это оттого, что я забыла, что на одной странице может быть несколько форм. :) Исправлено. Кто использует мод, обновите его, пожалуйста.

Аватара пользователя
Sheer
phpBB Guru
phpBB Guru
Сообщения: 10861
Зарегистрирован: 18.02.2007 19:01
Откуда: Рига, Латвия (страна-недоразумение)
Благодарил (а): 42 раза
Поблагодарили: 2367 раз
Контактная информация:

Re: Антибот 100500

Сообщение Sheer » 03.04.2012 8:52

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

Код: Выделить всё

[phpBB Debug] PHP Notice: in file [ROOT]/includes/hooks/hook_antibot100500.php on line 27: Undefined index: DEBUG_OUTPUT
Соответственно регистрация не работает: Ошибка отправки формы
Изображение
Общие ошибки новичков (07.11.2005) & Как задавать вопросы
Если ничто другое не помогает, прочтите, наконец, инструкцию!
"Никакая инструкция не может перечислить всех обязанностей должностного лица, предусмотреть все отдельные случаи и дать вперёд соответствующие указания, а поэтому господа инженеры должны проявить инициативу и, руководствуясь знаниями своей специальности и пользой дела, принять все усилия для оправдания своего назначения".
Циркуляр Морского технического комитета №15 от 29.11.1910 г.

Аватара пользователя
Nekstati
Former team member
Сообщения: 2641
Зарегистрирован: 19.03.2009 17:43
Благодарил (а): 11 раз
Поблагодарили: 904 раза

Re: Антибот 100500

Сообщение Nekstati » 03.04.2012 16:03

Sheer, на этот раз я не учла, что функция $template->display может, кажется, вызываться неоднократно во время генерации одной страницы. :o Исправлено, перекачайте.

Аватара пользователя
MIT
Former team member
Сообщения: 2503
Зарегистрирован: 14.03.2009 17:52
Откуда: 56°20′02″ с. ш. 36°42′45″ в. д.
Благодарил (а): 4 раза
Поблагодарили: 351 раз
Контактная информация:

Re: Антибот 100500

Сообщение MIT » 03.04.2012 16:15

Nekstati писал(а):$template->display может, кажется, вызываться неоднократно во время генерации одной страницы
Мод не ставил, но проверь ещё предпросмотр сообщений. Оная функция также вызывается при предпросмотре во время генерации разметки для inline-вложений.

Аватара пользователя
Nekstati
Former team member
Сообщения: 2641
Зарегистрирован: 19.03.2009 17:43
Благодарил (а): 11 раз
Поблагодарили: 904 раза

Re: Антибот 100500

Сообщение Nekstati » 03.04.2012 16:49

MIT, проверила, вроде всё ОК, спасиб.

Аватара пользователя
nissin
phpBB 3.0.3
Сообщения: 2108
Зарегистрирован: 16.12.2007 14:01
Откуда: Павлодар
Благодарил (а): 7 раз
Поблагодарили: 329 раз
Контактная информация:

Re: Антибот 100500

Сообщение nissin » 03.04.2012 21:58

Поставил заново, попросил проверить. Надеюсь всё будет работать.

Из предложений:
1) может стоит xor-ить form_token и sid, а то слишком просто (обрезаешь последние символы из form_token и вуаля).
2) вынести javascript в отдельный файл (скрипт php), дабы код сильно не светился.
Всё повторяется. nurlan.info

Аватара пользователя
MIT
Former team member
Сообщения: 2503
Зарегистрирован: 14.03.2009 17:52
Откуда: 56°20′02″ с. ш. 36°42′45″ в. д.
Благодарил (а): 4 раза
Поблагодарили: 351 раз
Контактная информация:

Re: Антибот 100500

Сообщение MIT » 03.04.2012 22:24

nissin, нет смысла. Суть этого антибота — отсечь тех, которые не понимают JS. А если понимают, то какая разница, где будет этот код находится? Защиту же от персональных парсеров, заточенных именно под конккретный (этот или любой другой) антибот, сделать довольно сложно.

Аватара пользователя
nissin
phpBB 3.0.3
Сообщения: 2108
Зарегистрирован: 16.12.2007 14:01
Откуда: Павлодар
Благодарил (а): 7 раз
Поблагодарили: 329 раз
Контактная информация:

Re: Антибот 100500

Сообщение nissin » 03.04.2012 23:00

В данном случае понимать JS боту не нужно. Отпарсил страницу и заменил значение form_token. Эффект примерно такой же, если просто добавить обязательное дополнительное поле.
А если будет подключенный в header javascript файл, то не факт, что его сразу заметят, и его ещё парсить дополнительно придётся.

Боты конечно персонально затачиваются под любой сайт, но наша задача максимально осложнить им это дело.
Всё повторяется. nurlan.info

soprom
phpBB 1.0.0
Сообщения: 4
Зарегистрирован: 28.11.2010 19:26

Re: Антибот 100500

Сообщение soprom » 26.04.2012 20:27

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

Аватара пользователя
Nekstati
Former team member
Сообщения: 2641
Зарегистрирован: 19.03.2009 17:43
Благодарил (а): 11 раз
Поблагодарили: 904 раза

Re: Антибот 100500

Сообщение Nekstati » 26.04.2012 20:33

Ссылку.

Аватара пользователя
Sheer
phpBB Guru
phpBB Guru
Сообщения: 10861
Зарегистрирован: 18.02.2007 19:01
Откуда: Рига, Латвия (страна-недоразумение)
Благодарил (а): 42 раза
Поблагодарили: 2367 раз
Контактная информация:

Re: Антибот 100500

Сообщение Sheer » 26.04.2012 22:06

soprom
Корявые java-скрипты в вашем коде могут провоцировать подобное явление при установленном моде. Проверяйте.
Изображение
Общие ошибки новичков (07.11.2005) & Как задавать вопросы
Если ничто другое не помогает, прочтите, наконец, инструкцию!
"Никакая инструкция не может перечислить всех обязанностей должностного лица, предусмотреть все отдельные случаи и дать вперёд соответствующие указания, а поэтому господа инженеры должны проявить инициативу и, руководствуясь знаниями своей специальности и пользой дела, принять все усилия для оправдания своего назначения".
Циркуляр Морского технического комитета №15 от 29.11.1910 г.

soprom
phpBB 1.0.0
Сообщения: 4
Зарегистрирован: 28.11.2010 19:26

Re: Антибот 100500

Сообщение soprom » 27.04.2012 4:17

Nekstati писал(а):Ссылку.
Отправил в личку.

Закрыто

Вернуться в «Бета-версии модов для phpBB 3.0.x»