在决定不对我的网站使用 CAPTCHA 后,我在我的注册页面中添加了一个 [input=range] 来代替必须滑动到最大值才能提交的提交按钮。垃圾邮件机器人能否绕过此措施?如果是这样,还有其他好的选择吗?
3 回答
一般来说,垃圾邮件机器人可以击败任何需要向服务器提交可以通过检查代码来确定的值的东西。关键是要求价值是人类可以轻松识别但机器人无法识别的东西。
例如,使用您的幻灯片创意(顺便说一句,还不错),而不是让他们将其滑动到最大(这对于机器人来说很容易模仿),而是向他们展示 3 张图片并要求他们将其滑动到“让他们变冷。” 然后展示一张北极荒地、撒哈拉沙漠和熔炉的图片(这当然只是一个例子)。这些是最能抵抗垃圾邮件的控件。
您需要注意的是可预测性和可重复性。如果您总是问同样的问题,或者您只有几个不同的问题,那么攻击者很容易将所有可能的结果列举到攻击脚本中并击败您的控制。
唯一的限制实际上是你的创造力和对代码的难度,对人类来说容易的要求。
这取决于物理滑动的结果在代码方面是什么。我已经看到了这个的 JavaScript 实现(不确定它是否相同),它根本不提供安全性,因为它所做的只是在幻灯片完成后发送一个带有预定令牌的请求。但是,没有什么可以阻止垃圾邮件机器人简单地获取页面上的令牌并将请求发送到服务器,服务器不知道“用户”是如何获得令牌的。
在验证码的情况下,“令牌”在这个阶段很难被机器人破译,但对人类来说相对容易。
我个人无法忍受任何这类 bot 预防措施,我想大多数用户都会同意。阻止机器人的唯一方法就是阻止用户。
即使垃圾邮件机器人可以绕过验证码,人类验证码求解器也可以绕过它。垃圾邮件没有完美的解决方案。您可以在此处阅读有关此问题的信息:http: //blog.minteye.com/2013/02/26/captcha-solving-human-labor/