Comments 73
Я добился такого же эффекта просто переименовав поле confirm_code во что-о другое, а confirm_code, для совместимости, остался как hidden поле.
Ну и ессно в самом ucp.php тоже нужно поменять имя переменной, на соответствующее.
Это, конечно, не спасет если боты целенаправленно пришли на сайт, там и проверить можно, что нужно передавать, а от 99,99% гуляющих по сети, такая схема вполне прокатывает.
Ну и ессно в самом ucp.php тоже нужно поменять имя переменной, на соответствующее.
Это, конечно, не спасет если боты целенаправленно пришли на сайт, там и проверить можно, что нужно передавать, а от 99,99% гуляющих по сети, такая схема вполне прокатывает.
Это в принципе первое, что приходит в голову, но не хотелось ковыряться в скриптах форума, и не забывать их править при обновлениях.
В последнее время перешел на поведенческие фильтр, их сложнее ботам вычислить, чем простое переименование полей.
В последнее время перешел на поведенческие фильтр, их сложнее ботам вычислить, чем простое переименование полей.
Смена дислокации форума тоже помогает
Его закрытие и уход владельца в монастырь — тоже. :) Самый верный способ избавления от спама :))
зачем так уж?
есть другой экстремальный, но 100% надежный способ — премодерация.
есть другой экстремальный, но 100% надежный способ — премодерация.
Это просто ваш форум еще активно не спамили, задолбаетесь разгребать.
К примеру на форуме одного из клиентов, даже просмотр закрыт для гостей, тем не менее когда там оказалось на пару сотен нормальных сообщений 14 тысяч спамерских — премодерация им перестала нравиться, и чистил я их напрямую в базе, так как, так значительно проще, чем форумными инструментами.
К примеру на форуме одного из клиентов, даже просмотр закрыт для гостей, тем не менее когда там оказалось на пару сотен нормальных сообщений 14 тысяч спамерских — премодерация им перестала нравиться, и чистил я их напрямую в базе, так как, так значительно проще, чем форумными инструментами.
Можно программно спам отличать от нормальных сообщений?
На ум приходит только шерстить сообщения с веб-ссылками…
На ум приходит только шерстить сообщения с веб-ссылками…
Ссылки, бб-коды и html-теги, английский язык на русскоязычном форуме, плюс анкеты юзеров (боты любят подписи сразу заполнять, и сайт прописывать). В самом phpBB какие-то очень массовые действия сложнее делать (ну по крайней мере для меня). А так слил дамп форума на локалку, и уже HeidiSQL в руки + немного php — поудалял всё лишнее, а потом в форуме сделал пересчет статистики.
На самом деле, учитывая, что спам — это не вредоносы сами по себе (не эксплойты), а реклама либо ссылки на вредоносы, то не обязательно искоренять спам сам по себе, достаточно запретить ссылки, и смысл спама пропадает
Далее, можно даже обьединять похожие (используя расстояние левенштейна или другие алгоритмы) сообщения в один, считая правкой.
Либо составляя самообучающуюся систему…
Премодерация тоже годится, если не планируется много сообщений
Далее, можно даже обьединять похожие (используя расстояние левенштейна или другие алгоритмы) сообщения в один, считая правкой.
Либо составляя самообучающуюся систему…
Премодерация тоже годится, если не планируется много сообщений
А Вы думаете, кто-то планирует много спама? В упоминавшемся выше форуме, всего-то пару десятков юзеров было, тем более сайт не настолько раскручен, чтобы ожидать наплыва спама (те же PR и ТИЦ у него были нулевые, месяц-два как открылся). Но по сути автоматических ботов это мало волнует, они себе лазят по нету в поисках форумов и спамят их.
Также некоторые боты не оставляют сообщений, а просто регятся и ссылки вставляют в профиль пользователя.
Премодерация, естественно, не даст показать спам, но она добавляет кучу головной боли админам или модераторам, нужно же этот мусор чистить, причем чистить придется каждый день и много.
Также некоторые боты не оставляют сообщений, а просто регятся и ссылки вставляют в профиль пользователя.
Премодерация, естественно, не даст показать спам, но она добавляет кучу головной боли админам или модераторам, нужно же этот мусор чистить, причем чистить придется каждый день и много.
мне например удалось отбиться от ботов путем добавления еще одного обязательного поля в профиль пользователя.
Меня всегда убивало, то что все пытаются делать капчи и прочее говно, когда нужно убрать возможность боту находить поля.
Любой форум или регистрация, да все что угодно лечится так:
Любой форум или регистрация, да все что угодно лечится так:
а ну понятно… мы так и думали))
В форме
В скрипте регистрации просто работать с массивом формы, где все поля обезличены(имена полей рандомные, ботам ухватиться негде), а проверочное поле мы всегда видим 12 в массиве и просто проверяем его наличие с заданым текстом.
Как итог это отсекло ботов вообще, они не видят формы, а написание скриптов не проходит, т.к структура формы изменена и я не жду данных имени к примеру в первом элементе формы.
Вот как-то так. Мой способ не панацея, но про ботов я не слышал вообще, равно как и не мучаю пользователей капчей. Нельзя насиловать пользователей капчей.
form name="megaForm"
input name="rand()"
input name="rand()" type="hidden" value="это поле для проверки" //Проверочное поле
/form
В скрипте регистрации просто работать с массивом формы, где все поля обезличены(имена полей рандомные, ботам ухватиться негде), а проверочное поле мы всегда видим 12 в массиве и просто проверяем его наличие с заданым текстом.
Как итог это отсекло ботов вообще, они не видят формы, а написание скриптов не проходит, т.к структура формы изменена и я не жду данных имени к примеру в первом элементе формы.
Вот как-то так. Мой способ не панацея, но про ботов я не слышал вообще, равно как и не мучаю пользователей капчей. Нельзя насиловать пользователей капчей.
каптча введена неправильно, спасибо, Вы не бот
Рандомные имена полей, конечно, хороший вариант от неспециализированных ботов.
Одно плохо: автокомплит перестаёт работать.
Одно плохо: автокомплит перестаёт работать.
От специализированных ботов ничего не спасет, если пишут бота специально под рессурс, анализируют сперва обычные запросы и тупо их копируют один в один.
а мой «бот» ваш метод пробьет?:
примеру, можно распознать тип форума и заполнять поля не по их именам, а по их расположению в верстке шаблона.
примеру, можно распознать тип форума и заполнять поля не по их именам, а по их расположению в верстке шаблона.
Интересно! В первый раз слышу про такой способ.
1. А у Вас нет статьи на эту тему, где можно почитать? А $_POST Вы после представляете в виде массива $_POST[0], $_POST[1],… (не ассоциативного, но скалаярного) ???
2. Как в таком случае делать проверку правильной заполненности полей используя JavaScript? Ведь нам имя поля неизвестно. Обрабатывать входные данный сервером, не клиентом?
1. А у Вас нет статьи на эту тему, где можно почитать? А $_POST Вы после представляете в виде массива $_POST[0], $_POST[1],… (не ассоциативного, но скалаярного) ???
2. Как в таком случае делать проверку правильной заполненности полей используя JavaScript? Ведь нам имя поля неизвестно. Обрабатывать входные данный сервером, не клиентом?
интриига…
не понимают кириллицы
очепятка, букву потеряли
очепятка, букву потеряли
Если не ошибаюсь в phpBB3 есть возможность сделать текстовой подтверждение, где указать свой уникальный вопрос или вопросы, а также набор ответов на них. Достаточно придумать что-то свое, что относится к теме форума и боты заглядывают все реже. =)
Вроде бы это для ботов даже легче?
Если кто-то составит конкретно для твоего форума набор ответов на вопросы. На маленьком форуме текстовое подтверждение неплохо решает проблемы с ботами.
Составить автору и проблема — надо же чтобы посетители знали ответ… В общем, ориентация на конкретную аудиторию получается.
Ну например сходу «Как называется наша планета?». И набор ответов «Земля», «Earth» и какие-то дополнительные ответы для особо одаренных. Если не смогут на такой вопрос ответить, нужны ли такие посетители? =)
А, ну такой антиспам проверен асечкой…
Это был пример легкого вопроса. На своих форумах я решал проблему вопросами из серии, «какого цвета неба» или «чему посвящен форум» или «сколько будет 22 прибавить 35». Главное составить правильный набор ответов.
Мне нравится набор с загадками, типа «С яйцами и луком, но не пирожок» — но это надо и смекалку иметь, и некоторые знания (уже, наверное, забытые) и для иностранцев не подходит…
Легче, но точить бота под конкретный форум нецелесообразно.
>>>Ну и напоследок submit на русском языке, при выбранном русском языке.
Вроде бот выбирал английский язык?
в моем случае в phpbb3, когда ломали капчи, я поменял на текстовую с супер тупыми вопросами — настала удивительная тишина от сверх умных ботов.
В части «isset($_POST['password_confirm'] &&» ошибка — функция не закрыта.
года 3 назад делал для своего форума на punBB, ботов остановило на полтора года. Правда, я не подавал вида, что рега не прошла. Проверка была ровно перед INSERT в базу. Так что, и письмо с регистрацией, и все данные и отображение уходили как должны. Это, вероятно, немного затрудняло перенастройку бота.
HINT для SMF:
Большинство ботов в обязательном порядке указывают Skype login хотя он и необязателен. Но указывают его в виде 4 символьного набора [0-9a-zA-Z]{4} (зарегистрировать 4 символьный логин в скайпе нельзя).
Большинство ботов в обязательном порядке указывают Skype login хотя он и необязателен. Но указывают его в виде 4 символьного набора [0-9a-zA-Z]{4} (зарегистрировать 4 символьный логин в скайпе нельзя).
Лично я решал проблему еще топорнее: поле [input type=«hidden» name=«js_test»], заполняется на страницу с помощью JS. Когда возник вопрос о людях с отключенным JS, мой руководитель сказал а-а-атличную фразу: «Я готов пожертвовать этими пятью долбоебами»
Первый человек в космосе:
1) Симпсон
2) Фарнсворт
3) Гагарин
И все в таком же духе. Для phpbb2 есть плагин, кажется, Antibot question. Наверное и для 3-его тоже должен быть. Помогает феноменально.
1) Симпсон
2) Фарнсворт
3) Гагарин
И все в таком же духе. Для phpbb2 есть плагин, кажется, Antibot question. Наверное и для 3-его тоже должен быть. Помогает феноменально.
Я еще вместо 404 возвращаю левую страницу с подтверждением регистрации. Это ставит в тупик многих ботов.
1) 'creation_time' => '1320421149'
2) 'creation_time' => '1320421154'
разница 5мс?
разве можно за такое время заполнить все поля? или я что то неправильно понял?
2) 'creation_time' => '1320421154'
разница 5мс?
разве можно за такое время заполнить все поля? или я что то неправильно понял?
А я отключил стандартную регистрацию и прикрутил Логинзу
«Во втором POST запросе, обращаем внимание на то, что бот выбрал английский язык, при том в предыдущем запросе он язык не менял, и типа спокойно прочитал правила форума на русском, а потом выбрал английский.»
Меня ни чуть не смутят правила/лицензионные соглашения etc. даже на вирите, и не помешает попробовать зарегистрироваться.
Но ваш подход шикарен. Бороться надо, как раз, не усложняя жизнь пользователям капчами, премодерациями и прочим анальным джихадом.
Меня ни чуть не смутят правила/лицензионные соглашения etc. даже на вирите, и не помешает попробовать зарегистрироваться.
Но ваш подход шикарен. Бороться надо, как раз, не усложняя жизнь пользователям капчами, премодерациями и прочим анальным джихадом.
Дело в том, что в phpBB 3 на странице с правилами есть переключение языка, более того, если сменить язык на второй странице (где вводится логин, пароль и т.п.), то phpBB сразу же возвращает на страницу с теми же правилами, но уже на английском. Плюс ставится пометка, что язык был изменен с дефолтного.
Т.е. если приходит, что язык английский, то кнопка никак не может быть на русском.
Т.е. если приходит, что язык английский, то кнопка никак не может быть на русском.
А зачем отдавать 404? У бота в логах тогда будет видно что появилась защита, которую начнут изучать и обходить. Может лучше эмулировать что сообщение добавлено?
Ага, только поменяйте в примере $_POST['change_lang'] на request_var('change_lang', '') и так далее.
А то неакуратненько.
А то неакуратненько.
У меня на форуме была текстовая каптча с несколькими вопросами вроде «Сколько будет дважды два?». Ни один спамбот её сломать не смог, а пользователям это было куда проще чем разглядывать кривые циферки и буковки.
Где разместить приведенный код, чтобы он вызывался при регистрации пользователя phpbb?
Первое правило защиты от спама на phpbb3: никому не рассказывать, как ты это делаешь.
Спамеры же бдят! Так ведь? :)
Спамеры же бдят! Так ведь? :)
Sign up to leave a comment.
Защита от спама в phpBB 3 без капчи