负面的Captchas - 帮助我更好地理解垃圾邮件机器人

时间:2010-07-29 06:41:25

标签: captcha bots spam-prevention

我必须决定防止垃圾邮件机器人注册我的网站的技术。在这个问题中,我主要询问负面验证码。

我开始了解机器人的许多弱点,但想知道更多。我读过大多数机器人不渲染/支持javascript的地方。为什么会这样?如何测试访问程序无法评估javascript?

我从这个问题开始Need suggestions/ideas for easy-to-use but secure captchas 如果你有一些好的验证码想法,请回答这个问题。

然后我在这里得到了关于负面验证码的想法 http://damienkatz.net/2007/01/negative_captch.html

但Damien写了though this technique likely won't work on big community sites (for long), it will work just fine for most smaller sites.

那么,有人制作特定网站机器人的可能性有多大?我认为我的网站将是一个非常受欢迎的网站。这种技术会考虑多少安全?

此处描述的使用复杂蜜罐实现的否定验证码 http://nedbatchelder.com/text/stopbots.html

有人知道它的实施有多容易吗?有没有可用的插件?

谢谢,

Sandeepan

2 个答案:

答案 0 :(得分:1)

  

我在某处读过大多数机器人不会渲染/支持javascript。为什么会这样?

简单的实施 - 您可以使用高级语言中的十几行代码阅读网页源代码和发布表单。我见过很糟糕的机器人,例如使用正则表达式解析HTML并在URL中获取../错误。但它显然运作良好。

然而,运行JavaScript引擎和实现DOM库是一项复杂得多的任务。你必须处理while(1);的脚本,这些脚本依赖于定时器,外部资源,CSS,嗅探浏览器并做很多疯狂的事情。您需要快速完成的工作量就像编写完整的浏览器引擎一样。

它的计算成本也非常昂贵,因此对于垃圾邮件发送者来说可能并不是那么有利可图 - 他们可以拥有无​​声的垃圾邮件,默认垃圾邮件速度可达100页/秒,或者功能完备的垃圾邮件可以垃圾邮件发送2页/秒,并且可以像普通人一样点燃受害者的计算机网络浏览器会。

在实现一个简单的特定于站点的黑客方面存在中间立场,例如,如果在页面中注意到已知的脚本模式,则填写特定的表单字段。

  

那么,有人制作特定网站机器人的可能性有多大?我认为我的网站将是一个非常受欢迎的网站。这种技术会考虑多少安全?

这是一项成本/收益权衡。如果你有很高的网站浏览量,大量的访问者或具有货币价值的东西,或对垃圾邮件有用,那么一些垃圾邮件发送者可能会注意到你并决定解决方法是值得的。 OTOH,如果你只有一个个人博客或小型论坛,那么有数百万人没有受到保护,等待发送垃圾邮件。

答案 1 :(得分:0)

  

如何测试访问程序无法评估javascript?

创建一个具有固定值的隐藏字段,然后编写一个js,它会递增或更改它,您将在响应中看到..