Forum Webscript.Ru

Программирование => PHP => Тема начата: andymc от 22 Февраля 2007, 19:13:17

Название: Защита от спама
Отправлено: andymc от 22 Февраля 2007, 19:13:17
Есть гостевая у меня на сайте, которую частенько спамят.
Наткнулся на http://seomanager.ru/scripts.html - скрипты сабмита гостевых.
Начал думать, как защитися от спама.

Вот решения, которые приходят в голову.
1. На сайте есть переменная - кол-во пользователей, меняется много раз за день. почему бы её не записать в hidden поле формы а потом проверять?
2. Записать в сессию перемнную md5(uniqid(rand(),1)) и тоже проверять.
3. Если сообщение содержит больше 2 ссылок
Насколько эти решения удачны? Может есть другие варианты?
Название: Защита от спама
Отправлено: Макс от 22 Февраля 2007, 19:54:59
Ты хочешь защитится от стандартных скриптов или от скриптов, которые будут писаться специально для спама твоей гостевой ?

Первые твои 2 варианта не подойдут - стандартные скрипты просто вырежут соотв. значению и пошлют в запросе.
Третий вариант возможно и имеет смысл, но его постоянно надо совершенствовать.

Стандартные решения :
1. CAPTCHA - более надежно
2. менее надежный вариант - см пример на http://www.vintest.ru/operator.php - обходится легко, но для таких сайтов нужно писать отдельный модуль
Название: Защита от спама
Отправлено: brainkiller от 22 Февраля 2007, 21:18:46
Насчет капчи недавно интересную идею где-то прочитал: не заставлять пользователя доказывать, что он человек, а заставить робота раскрыть свою сущность. Например, скрыть средствами css некое текстовое поле, значение которого проверять. Если форму заполняет человек, он не увидит и не заполнит поле. Не универсально, но мысль здравая.
Название: Защита от спама
Отправлено: andymc от 22 Февраля 2007, 23:14:22
Макс
Важно защитить вообще от автоматического добавления сообщений.

Капча и вопросы - это здорово. Но не хочется заставлять человека доказывать, что он не верблюд :)
Цитировать
стандартные скрипты просто вырежут соотв. значению и пошлют в запросе
Они что форму загружат себе и сканируют?
Как тогда они определяют в какое поле что писать? А если я поля назову случайным образом? Если они вместо емейла напишут сайт, сразу ошибка будет...
Интересно кстати, как работают современные спамеры.
Название: Защита от спама
Отправлено: Макс от 23 Февраля 2007, 11:08:34
Цитировать
andymc:
Капча и вопросы - это здорово. Но не хочется заставлять человека доказывать, что он не верблюд

чтобы человек доказал что он человек, ему нужно сделать что-то на что не способны роботы. Если надо :
Цитировать
andymc:
защитить вообще от автоматического добавления сообщений

то капча - единственный более-менее надежный метод
Не от хорошей жизни почти все крупные сайты его используют.

Цитировать
andymc:
Они что форму загружат себе и сканируют?
Ну это уж как автор напишет. Вообще загрузка формы для определения списка полей и скрытых значений - вполне логичное решение для таких скриптов.
Название: Защита от спама
Отправлено: andymc от 23 Февраля 2007, 19:03:57
Макс
Капча это конечно круто, не спорю.
Но вот например когда я запретил тексты с 2 и более тегами
brainkiller
Идея хорошая. Запомним.

Ещё кстати, слышал такой способ. Ловить событие onClick кнопки. И записывать в скрытое поле какую-нибудь перемную.
Название: Защита от спама
Отправлено: CGVictor от 23 Февраля 2007, 20:11:45
andymc
Давай по сути.
Либо ты анализируешь контент, либо ты анализируешь процесс работы пользователя. Здесь принципиальная разница.

В первом случае: если ты запрещаешь теги А, то ты это делаешь для всех. Что зависит от твоей бизнес-задачи.
Во втором случае: если есть задача технически отличить пользователя от бота, то пока единственный вариант - это captcha. [off]Есть еще парсинг сложных выражений (но их и генерить непросто).[/off]

Не надо смешивать эти два понятия, ОК?

Про скрытые поля, JS и прочую лабуду: да, это защитит от тупых боксовых автоспамилок. Но чаще всего автор бота просто напишет отдельный скрипт, который будет соответствовать твоей "проверке" на твоем сайте. Делов-то.
Название: Защита от спама
Отправлено: andymc от 24 Февраля 2007, 06:15:43
Цитировать
автор бота просто напишет отдельный скрипт
вот как раз это самое страшное. От этого конечно защитися можно только с помощью картинок.
А авторам не лень для каждой гостевой писать скрипт?

Хм.. буду думать дальше.
Название: Защита от спама
Отправлено: CGVictor от 24 Февраля 2007, 10:01:29
andymc
Цитировать
andymc:
не лень для каждой гостевой писать скрипт?

Как показывает практика - нет, не лень. Пишут.