Jump to content
Catalo

Скрытое поле при регистрации для защиты от спамеров

Recommended Posts

Нужно сделать скрытое поле, которого при регистрации не будет видеть пользователь. С названием что-то типа e-mail. Если скрытое поле заполнено, значит регистрируется бот, значит кнопку "Зарегистрироваться" отключаем либо не выполняем действие. 

Это работает, проверенно мной на сайте, спамерские регистрации как отрезало, теперь надо реализовать на форуме. 

Вы не подскажите какие файлы копать? Может кто-то делал, и оставил инструкцию? Не очень знаю архитектуру IPS4

Share this post


Link to post
Share on other sites

\applications\core\modules\front\system\register.php

Найти

		$form = \IPS\core\modules\front\system\register::buildRegistrationForm();

Ниже добавить

		$form->add( new \IPS\Helpers\Form\Text( 'email_1', '', false, null, function( $value )
		{
			if( $value )
			{
				throw new \InvalidArgumentException('form_required');
			}
		}, null, '<style>#form_email_1{display:none;}</style>' ) );

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

Share this post


Link to post
Share on other sites

Огромное спасибо, сейчас попробую. По идее должно остановить. 

2 часа назад, siv1987 сказал:

Ниже добавить


 

Выдает ошибку при клике на кнопку "Регистрация"

Parse error: syntax error, unexpected 'if' (T_IF) in /***/applications/core/modules/front/system/register.php on line 176

Share this post


Link to post
Share on other sites

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

Share this post


Link to post
Share on other sites

Ждем отчета. Для чистоты эксперимента можно постепенно убрать вопрос ответ и капчу.
Название скрытого поле лучше не использовать на всех форумов одинаково.

Share this post


Link to post
Share on other sites

Я только поменял пару моментов.

display:none 

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

height: 1px; overflow: hidden;

и поле назвал e-mail (стандартное поле называется email без дефиса).

Share this post


Link to post
Share on other sites

Это, конечно, не лучший выход, ведь не всегда получается указать нужное кол-во тех самых почт, но свой форум от спамеров я защетил таким способом:

АП - Пользователи - Регистрация - "Разрешённые для регистрации email-домены". Установил там нужные мне почты, которые чаще всего используются. Больше регистраций спамеров я не замечал.

Share this post


Link to post
Share on other sites

недавно 5 спам ботов зарегались по почте yandex.com ?

и регу так не подтвердили.

ну я проверил их адреса. все в спам реестре.

и через 3 дня система удалила их аки. как не подтвержденные ?

Share this post


Link to post
Share on other sites
2 часа назад, Catalo сказал:

мое средство работает, боты регаться перестали

Отчет как то пустовато получился. Не очень объективно, учитывая сколько у вас там средств защиты от ботов. Нужно как минимум взять все ип адреса регистрации с момента установки этой модификации и проверить по спамбазе. Потом взять такой же промежуток времени до установки этого поле и также проверить ип по базе. Понятное дело что некоторые ип на момент регистрации могут быть чистыми, но такое как правило бывает редко. Прочие факторы должны быть равны, чтобы не искажали результат.

Share this post


Link to post
Share on other sites

Будет ли кому интересно...

Где-то нашел плагин DeleteMyAccount, добавляет в настройки профиля пользователя кнопку с просьбой удалить аккаунт.

В итоге в день человек 10 запрашивают удаление. У них дата/время регистрации почти совпадает с запросом удаления аккаунта. Это значит бот регистрируется и тут же сканирует эту кнопку тем самым вызывая запрос удаления аккаунта.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Recently Browsing   0 members

    No registered users viewing this page.

×