
各位大神,求教下 有 1 个表单页面(非手机端),为了避免被机器人刷单,又不想用验证码,有什么好的办法吗? 微信,手机号码验证除外,谢谢大家
1 izoabr 2019-12-05 10:09:02 +08:00 这东西道高一尺魔高一丈 CSRF 限制但 IP POST 频率 计算题 选图 拼图 之类的吧 |
2 locoz 2019-12-05 10:10:18 +08:00 有能锁死用户的唯一识别码(比如账号)就行,结合风控可以做到不用验证码,但是你又说微信、手机号码验证除外。 |
3 locoz 2019-12-05 10:13:23 +08:00 没有的话就用那种无感验证(比如 reCAPTCHAv3 那种后台检测、打分的)吧,能在尽量不出验证码的情况下提高刷的门槛。 |
4 manami 2019-12-05 10:13:50 +08:00 js 写个定时器,限制一段时间内提交操作 |
5 rogwan 2019-12-05 10:17:29 +08:00 via iPhone 一般情况,限制下 IP 频率就可以了。价值非常高的 post,你肯定是要有账号系统的吧 |
6 imdong 2019-12-05 10:19:07 +08:00 用客户端挖矿即可。 |
7 Torpedo 2019-12-05 10:28:18 +08:00 往客户端的方向走吧。 客户端接口大部分都是有 token 的。客户端代码重混淆,或者会用 c++。 那么同理,js 也可以和后端约定基于 token 的加密算法。 混淆的话,uglify 当然太简单了,可以使用 Javascript-obfuscator 一定程度可以防止 |
8 ech2o 2019-12-05 10:28:57 +08:00 限制同一 ip 在指定时间内重复提交 |
10 wangkun025 2019-12-05 10:31:48 +08:00 cloudflare 欢迎你 |
11 berumotto 2019-12-05 10:37:30 +08:00 我们应该换个思路,表单页面只允许机器刷,判断如果是人为提交就阻止他。这样人们就会想尽办法做出模拟人为提交的方式,从而反向达到防刷的效果~(逃 |
12 hostpai 2019-12-05 11:17:32 +08:00 随便什么验证码,都能机器刷 |
13 ClarkAbe 2019-12-05 11:41:15 +08:00 via Android 让客户端计算随机指定前缀的哈希 |
14 340244120w 2019-12-05 13:27:43 +08:00 via iPhone 注册的时候用手机号或者微信绑定呗。加上一次性表单 token,短时间提交次数超过前端限制的,直接封号。 游客也能提交表单的话,验证码啥的这类简单的都嫌麻烦,要防止估计做梦都想不出来。 至说绑定 ip 的,了解下国内有多少公网 ip 吧。 |
16 tjx20114 2019-12-13 11:53:17 +08:00 从机器人的角度考虑, 1. 能走尽量走接口 2. 使用不同 ip 来提交不同表单 防刷思路: 1. cookies 验证,记录 refer 等,验证不通过就跳转回主页,防止机器人直接访问接口,应该会过滤掉大量直接扫描接口提交的机器人 2. 找到机器人提交的表单的特征, 如 文本内容里面有广告? 有手机号?等过滤 完全避免: 1. 强验证码 2. 登录 |