Javascript 由机器人程序创建的Javscript/Ajax帐户
我做了一个简单的Javascript更改ID,以避免由机器人创建帐户:Javascript 由机器人程序创建的Javscript/Ajax帐户,javascript,php,bots,account,matomo,Javascript,Php,Bots,Account,Matomo,我做了一个简单的Javascript更改ID,以避免由机器人创建帐户: setTimeout(function() { $("#FormAccountCreateTmp").attr("id", "FormAccountCreate"); }, 5400); 因此,5.4秒后,Id为FormAccountCreateTmp的表单具有IdFormAccountCreate,然后可以执行jQuery/Javascript: $("body").validator().on("submit",
setTimeout(function() {
$("#FormAccountCreateTmp").attr("id", "FormAccountCreate");
}, 5400);
因此,5.4秒后,Id为FormAccountCreateTmp
的表单具有IdFormAccountCreate
,然后可以执行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"
我能做些什么来阻止这些机器人而不添加验证码。我可以看到我的访客日志中没有引用这些机器人IP。因此,可能有一种PHP或Javascript方法来阻止它们
为什么有些人创建这些机器人来创建随机帐户?创建这些帐户没有任何收益,我不了解他们的目标。对不起,我还不能发表评论,所以我将在这里发布更详细的回复 还请检查,这是我的来源,并有一些其他的选择。它谈到了博客注册表单,但仍然是相关的 “确认您的电子邮件”电子邮件 许多网站使用此功能不仅可以验证链接到您帐户的电子邮件是您的,还可以确认用户不是机器人 这将迫使控制机器人的人手动验证每个帐户 当然,您不希望帐户记录永远列在数据库中或存储它们的任何位置,因此只需在创建帐户时添加帐户创建时间的记录即可。然后创建一个每天运行一次的cron作业,并扫描有x天历史且尚未验证其电子邮件的帐户。此时,您将删除该帐户,并可以选择创建一个链接到帐户电子邮件或IP地址的记录,这些帐户以前无法验证其电子邮件地址,可能是一个机器人 虽然这个选项会处理机器人,但你也必须考虑其缺点
- 您必须运行cron作业
- 机器人仍然可以注册(但他们无法访问您的网站)
- 根据您允许用户等待验证其电子邮件的时间,bot帐户的活动时间可能会更长
选择权在你。很抱歉,我无法在实际注册过程中为您提供一个即时解决方案来防止机器人,但机器人正在不断改进,迟早机器人可能会找到绕过验证码的方法。抱歉,我还不能发表评论,所以我将在这里发布更详细的回复 还请检查,这是我的来源,并有一些其他的选择。它谈到了博客注册表单,但仍然是相关的 “确认您的电子邮件”电子邮件 许多网站使用此功能不仅可以验证链接到您帐户的电子邮件是您的,还可以确认用户不是机器人 这将迫使控制机器人的人手动验证每个帐户 当然,您不希望帐户记录永远列在数据库中或存储它们的任何位置,因此只需在创建帐户时添加帐户创建时间的记录即可。然后创建一个每天运行一次的cron作业,并扫描有x天历史且尚未验证其电子邮件的帐户。此时,您将删除该帐户,并可以选择创建一个链接到帐户电子邮件或IP地址的记录,这些帐户以前无法验证其电子邮件地址,可能是一个机器人 虽然这个选项会处理机器人,但你也必须考虑其缺点
- 您必须运行cron作业
- 机器人仍然可以注册(但他们无法访问您的网站)
- 根据您允许用户等待验证其电子邮件的时间,bot帐户的活动时间可能会更长
选择权在你。很抱歉,我无法立即为您提供在实际注册过程中阻止机器人的解决方案,但机器人正在不断改进,迟早机器人可能会找到绕过验证码的方法。我知道使用可见的recaptcha可能会让一些用户感到恼火,但是谷歌不可见的recaptcha呢?我知道对一些用户来说使用可见的recaptcha会很烦人,但是谷歌不可见的recaptcha呢?