空白提交垃圾邮件机器人

Blank submission spam bot

我正在尝试想办法对付垃圾邮件机器人,它只提交我的空白条目表单。

我的表单使用 JQuery 检查字段是否已填写,并检查电子邮件字段是否已正确填写。然而,这个垃圾邮件机器人正在设法解决这个问题(通过禁用 JavaScript?)并且能够提交一个完全空白的表格。所以我需要的是一种方法来阻止它,但这里的问题是我不能使用我在网上找到的任何类型的验证码插件等,因为我不能使用 PHP,所以我需要客户端不管它是什么我都可以用来对付它的侧面验证但是我的另一个问题是如果这个垃圾邮件机器人能够禁用 JavaScript 那么我肯定会采取任何类型的措施,例如蜜罐验证码或禁用表单页面加载时有 5 秒无法正常工作,因为 JavaScript 刚刚被关闭,这个垃圾邮件机器人再次绕过所有内容并完成空白提交。

好吧,如果你想绕过 spambot 在不添加验证码的情况下发布空白条目 plugin/image 等

选项#1:

使用普通验证码,我们强制用户填写验证码值并在发布表单时在服务器端验证相同的值,但使用此技巧我们将采用相反的方式。

默认情况下,所有 spambot 访问站点 javascript 被禁用。它们通常被编码以填充所有表单字段。

所以您可以做的是在表单中添加一个任意名称的隐藏字段,比方说“hidden_captcha”。

现在您的服务器端代码会是这样的,如果该隐藏字段已填充,那么该条目将由 spambot 发布,因为普通访问者无法看到您的隐藏字段并提交数据。

Spambot 只查找表单中的字段并提交。

这样您就不需要添加验证码 plugin/image 和过滤垃圾邮件机器人发布的所有条目。

选项#2:

另一种方法是,再添加一个名为 "js_fill" 的隐藏字段。现在将 JS 代码放入生成随机值的页面并填写该字段。

在此之后,您的服务器端检查代码将如下所示:

if($_POST['js_fill'] != '' && $_POST['hidden_captcha'] == '') {
  // Valid Entry
} else {
  //Something Wring Here
}

让我知道这个概念是否清楚或需要更多理解。