【发布时间】:2020-02-08 12:30:01
【问题描述】:
我做了一个简单的 Javascript 更改 ID 以避免机器人创建帐户:
setTimeout(function() {
$("#FormAccountCreateTmp").attr("id", "FormAccountCreate");
}, 5400);
所以 5.4 秒后,ID 为 FormAccountCreateTmp 的表单的 ID 为 FormAccountCreate,然后可以执行 jQuery / Javascript:
$("body").validator().on("submit", "#FormAccountCreate", function(e) {
if(!e.isDefaultPrevented()) {
buttonLoading($("#BtAccountCreate"));
var values = $("form#FormAccountCreate").serialize();
$.ajax({
url: "https://mywebsite.com/sig" + "nup/aja" + "x/ajax" + "_account" + "_create.php",
type: "POST",
data: values,
success: function(data) {
$("#AjaxSignup").empty().html(data);
},
error: function(exception) { console.log(exception); }
});
}
e.preventDefault();
});
但从几天以来,我有机器人到达页面注册(访问网站的第一页)并在 23 秒后验证表单!
185.72.244.24 - - [08/Feb/2020:02:31:25 +0000] "GET /en/signup/ HTTP/2.0" 200 21891 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/73.0.3683.86 Safari/537.36"
...
185.72.244.24 - - [08/Feb/2020:02:31:48 +0000] "POST /signup/ajax/ajax_account_create.php HTTP/2.0" 200 584 "https://mywebsite.com/en/signup/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/73.0.3683.86 Safari/537.36"
如何在不添加验证码的情况下阻止这些机器人。我可以看到我的Matomo 访问者日志中没有引用这些机器人 IPS。所以可能有一种 PHP 或 Javascript 的方式来阻止它们。
为什么有些人会创建这些机器人来创建随机帐户?创建这些帐户没有任何收益,我不了解他们的目标。
【问题讨论】:
-
我知道使用可见的recaptcha 对某些用户来说可能很烦人,但是Google 的不可见recaptcha 呢?
标签: javascript php bots account matomo