我有一个网站与简单的形式,张贴作为twitter帐户的推文输入。
由于没有安装验证码或任何类型的反垃圾邮件系统,所以垃圾邮件机器人疯狂地发布虚假内容是唯一合乎逻辑的事情。
现在,我想构建一个不需要任何验证码的验证。
这就是我一直在想的,我需要你的诚实的意见。
如果机器人在不使用鼠标或键盘的情况下发布它们的内容(可能使用某种生成的脚本),那么这实际上意味着它们不能给表单本身任何类型的焦点。
我的想法是创建一个简单的js条件,即表单不能在没有获得某种焦点的情况下提交。
你觉得这个怎么样?还有其他类似的想法吗?
谢谢!
发布于 2012-10-03 20:58:39
发送未经验证的消息的想法本身听起来很不安全。尽管如此,还是有一些方法可以最小化垃圾邮件。
例如,您可以实现一个honeypot变体,将另一个字段添加到提交表单中,但以一种对实时用户隐藏的方式。机器人会错误地填写它,你可以在服务器端拒绝提交-信不信由你,大多数评论垃圾邮件都来自爬虫,所以即使是这样的基本方法也可以极大地减少提交的恶意内容的数量。
你的假设是正确的,大多数机器人发布“不使用鼠标或键盘”-这样做要比模拟客户端活动简单得多。同样,您可以利用这一点-添加一个将由JS填充的字段,并在服务器端验证其内容。
https://stackoverflow.com/questions/12708933
复制相似问题