【发布时间】:2011-01-20 22:36:23
【问题描述】:
目前我们正在举办一场比赛,进展非常顺利。不幸的是,我们让所有那些运行脚本的作弊者重新开始工作,这些脚本会自动为他们的条目投票。通过手动查看数据库条目,我们已经看到了一些作弊者——例如,在 70 分钟内使用相同浏览器的 5 星评级。现在随着用户群的增长,识别他们变得越来越困难。
到目前为止我们所做的:
- 我们存储 IP 和浏览器,并在一小时内阻止该组合。 Cookie 对这些人无济于事。
- 我们还使用了验证码,已被破解
有谁知道我们如何使用 PHP 脚本在我们的数据库中找到模式,或者我们如何更有效地阻止它们?
任何帮助将不胜感激...
【问题讨论】:
-
IP和浏览器的组合不是唯一的组合。我在代理服务器后面,并使用标准浏览器。如果坐在我旁边的人使用相同的浏览器,我们中的一个人就不能投票(我们的 IP 与您的网站相同)。
-
也许你已经被咽了。
-
@David:当垃圾邮件是一个大问题时,牺牲一些用户的访问权限可能是合理的
-
此时您正与他们进行军备竞赛。您可能必须加强身份验证(让他们证明他们是特定的人)。这样做需要一个持久的身份,这对他们来说是有价值的。如果你允许匿名投票,你能做的最好的就是一一打击他们的诡计——他们比你有更多的空闲时间。为什么你认为 Stack Overflow 只允许有既定身份的人投票?
-
正如往下说的,验证码并没有被破坏......用户每次都坐在电脑前输入验证码......他们似乎有很多时间。 .. 目前的解决方案 - 就在此时此刻 - 是按原样阻止 IP ......我们不再关心拥有一个 IP 的企业网络。我们不会向任何人提供有关他们在比赛中的位置的任何信息。我们只是说:底线、中场、明星……从最好的角度来看,我们只是为随机用户提供良好的投票……其余的必须手动完成。我真的希望它更容易;-)
标签: php spam-prevention voting