Ты человек?(или как предотвратить спам) [закрыто]

StackOverflow https://stackoverflow.com/questions/42076

  •  09-06-2019
  •  | 
  •  

Вопрос

Какие механизмы вы знаете, которые предотвращают злоупотребление вашим сайтом анонимными спамерами?

Например, предположим, что у меня есть сайт, где люди могут за что-то проголосовать.Но я не надо хотите, чтобы кто-то рассылал что-то спамом до самого верха.Итак, я нашел (а) возможность создать учетную запись и проголосовать только один раз и (б) КАПЧУ для уменьшения количества спама.Какие еще методы вы знаете и насколько хорошо они работают?

Это было полезно?

Решение

Главное, что я заметил, это то, что, что бы вы ни делали, вы хотите, чтобы ваша система была уникальной.Вы хотите, чтобы злоумышленнику пришлось адаптировать свою программу автоматизации к вашему конкретному сайту, а не просто запускать в него уже существующий скрипт, который будет работать практически в любом месте.Он даже не обязательно должен быть криптографически защищенным;это просто должно сделать ваш сайт немного непохожим на обычный.

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

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

Другие советы

alt text

От xkcd

Что касается системы CAPTCHA, я от всей души рекомендую Рекапча.

Традиционные сгенерированные компьютером CAPTCHA будут в конце концов будет сломан путем разработки достаточно интеллектуальной системы.Например, вот кто-то который утверждает, что взломал КАПЧУ Google, ранее считавшуюся небьющейся, с частотой попадания в 30%.reCAPTCHA, по определению, показывает вам только изображения, которые не могут быть распознаны с помощью оптического распознавания символов.

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

Видишь здесь для получения дальнейших объяснений и для того, чтобы опробовать это.

  • Ограничьте количество голосов на IP-адрес за один раз
  • Блокируйте анонимизирующие прокси.
  • Для голосования:Как насчет перетасовки значения, которое должно быть возвращено формой "для каждого сеанса"?Если "1" означает первый элемент, то "2" означает второй.Тогда "77" означает первый пункт, "812" означает второй, ...за сценой может скрываться какая-то простая математика, но это не позволяет пользователям просто отправлять один и тот же HTTP-запрос снова и снова.
  • Что сработало у меня очень хорошо:Используйте AJAX-формы, а не простые HTTP-формы.Технически подделать голоса не намного сложнее, но я написал простую программу для ведения блога, и единственным механизмом защиты от СПАМА является отправка комментариев через AJAX - пока СПАМА нет.

Я фанат КАПЧИ "скрытое поле".Я не помню, где я читал об этом, но идея такова:

  • создайте свою форму в обычном режиме
  • добавьте дополнительное поле, но скройте его (т. е. style="display:none" в окружающем div или строке таблицы)
  • после отправки, если поле пусто, выполните соответствующее действие (например, отправьте электронное письмо).;если поле было заполнено, значит, это робот-отправитель

Единственный случай, когда это происходит, - это если браузер пользователя не обрабатывает CSS (или он отключен), что случается очень редко.

Взимайте плату за голоса, как это делают в некоторых телевизионных шоу "талантов", и получайте спам вплоть до банка!

Серьезно, это действительно сложная проблема, и когда-нибудь (может быть, скоро, если послушать Рэя Курцвейла) компьютеры проведут тестирование, чтобы отсеять людей.Ответы, которые я добавляю в список, имеют очевидные недостатки, но только ради перечисления:модерация (попросите людей провести тестирование) и отслеживание на основе IP (ограничьте количество голосов от хостинга).

stackoverflow имеет несколько функций, которые помогают в этом;Я думаю, что самый полезный шаг, который вы можете предпринять, - это отключить возможность голосовать анонимным пользователям и новым учетным записям.Таким образом, никто не сможет подписаться на сотни аккаунтов и использовать свой один голос, чтобы превзойти других пользователей.Я бы сказал, что требование нескольких должностей или членства в течение определенного периода времени - оба достойных варианта.

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

Это область изучения Человеческие Вычисления.

здесь есть отличное видео от Луиса фон Ана:http://video.google.com/videoplay ?docid=-8246463980976635143

В ответах на вопросы есть несколько идей. Лучшая КАПЧА, не основанная на изображениях? спросите, если вы этого еще не видели.

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

В процессе регистрации, в зависимости от ситуации, я использую optin через mail (для завершения регистрации и подтверждения того, что, по крайней мере, почтовый ящик существует) и / или CAPTCHA.

С этого момента вы можете решить, может ли пользователь использовать более одного раза, или любое другое правило.

Кстати, я не поклонник ограничений, основанных на IP:существует множество ситуаций, когда сети крупных организаций используют несколько IP-адресов для всех своих пользователей, поэтому высок риск заблокировать пользователей, которые могли бы проголосовать.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top