Какую простейшую защиту от сабмита формы поисковым или спам-роботом можно предпринять. |
[исправить] |
В связи с участившимися случаями появления web-роботов занимающихся сабмитом форм, рекомендую:
if ( ($ENV{"HTTP_REFERER"} !~ /sitename\.ru/i) ||
($ENV{"HTTP_USER_AGENT"} !~ /(netscape|mozilla|links|lynx|opera|msie|konqueror)/i) ){
die "Несанкционированный запрос !";
}
|
|
|
23.12.2002
|
Раздел: Корень / Программисту и web-разработчику / Perl / CGI |
1, woland (?), 23:47, 24/12/2002 [ответить]
| +/– |
агента юзера отправить нет проблем............
надежнее поцепить JPG с каким нибудь числом ну допустим 6 знаков.... и сделать дополнительное поле ... т.е. юзер видит на странице картинку с числом и просьбу ввести это число в поле... если правильно введено то ОК... (c) mail.ru ... это я там подсмотрел такой вариант :)) | |
2, Alexander Wolf (?), 11:39, 16/05/2006 [ответить]
| +/– |
Интересно, а почему используется логическое ИЛИ, если нужно использовать логическое И? | |
|
3, DJAndreysXe (?), 01:17, 05/11/2006 [^] [^^] [^^^] [ответить]
| +/– |
Автор, по видимому, имел в виду: "Доостаточно, чтобы не совпало только одно условие, и мы считаем клиента ботом". | |
|
4, Katty (?), 17:49, 29/11/2006 [ответить]
| +/– |
Кажется несовсем надёжным...есть такие бродилки, которые пользуются браузером для захода на страничку.Кроме того, ни, конечно же, могут зайти и с главной странички сайта, к примеру. | |
5, миркус (?), 19:01, 05/07/2009 [ответить]
| +/– |
вообще не надежный способ.
как реферер так и юзер агент,
можно спокойно подделать в заголовках,даже кустарнику.
каптча более надежна,но и её алгоритм должен быть не простым.
допустим местную каптчу,
на мой взгляд не сложно обойти,убрав шумы.
| |
|