1
jiuhuicinv 1 天前
UA?
|
![]() |
2
shuiduoduo 1 天前 via iPhone
无解
|
![]() |
3
leokun OP @jiuhuicinv 这是最容易模拟的
|
![]() |
4
shuiduoduo 1 天前 via iPhone ![]() 各种无头浏览器
|
5
pingdog 1 天前 via Android
买 ip 库,检测到 proxy/idc 跑 js PoW ,captcha 验证码,加 fingerprint 差不多了,再搞多就不化算,防的成本多于攻
|
6
fyq 1 天前
用户雇个大学生手动操作也就 3000 一个月
|
7
iOCZS 1 天前
不能,只能结合行为做上下文分析
|
![]() |
8
leokun OP 想到一个麻烦的办法,也是爬虫模拟与真实操作的本质区别
在访问网页时,真实的业务访问是连续的,间隔的,同一个用户在特定的业务中是不可能出现并发的,即使用户模拟 js 很厉害,但是在模拟业务次序,调整请求间隔上很难做到与真实用户一样 |
![]() |
9
wy315700 1 天前
|
10
longzhou6431 1 天前
可以考虑拒绝掉新建连接的第一个请求包,这样可以确保地址不被探活
|
11
Donahue 1 天前
浏览器 ja3 签名/浏览器指纹之类的
|
![]() |
12
MYDB 1 天前 via iPhone ![]() 这属于攻防了,对方水平很高,那建议花更多的钱请个高人或者找业内顶尖团队,否则记录日志就能挡住一些新手写的爬虫了
|
![]() |
13
nekoneko 1 天前
无解
最多是对前端请求做个摘要, 后端接到后进行验证, 这个只能提高门槛 另外就是加蜜罐, 这样能知道哪些用户是不正常的. |
![]() |
14
lambdaq 1 天前
用户模拟 js 的水平很高?
用户直接上无头浏览器! |
15
triptipstop 1 天前
调用 GPU 不给用的 直接怕黑
|
16
voidemoer 1 天前
比较有效的方法一是带上各种人机交互验证,二是监控用户鼠标轨迹
但是对抗情形下,都有破解的方法:第三方解码、多轨迹回放,只不过会大大增加攻击者的成本 |
17
deplives 1 天前
你说的这个无非就是反爬,没有最终的方案,都只是攻防而已
|
![]() |
19
yianing 1 天前 via Android
无解,人家用无头浏览器,ai 操作
|
![]() |
20
miyuki 1 天前
无非猫捉老鼠,后台搞个无头浏览器
|
![]() |
21
ejin 1 天前
油猴脚本,请求完全是浏览器发出和渲染,你怎么破,哈哈哈
|
22
laggage 1 天前
hmmm, 不能加验证码吗,请求前 js 弹出验证码框,验证通过才给请求?
|
![]() |
23
play78 1 天前
定时更新前端代码和后端接口及加密请求方式,业务流程。只要你改得足够快,模拟的人就跟不上。
很简单,你前后端稍微改一下业务流程,逆向的人,要花 10 倍的时间去梳理。只要成本与收益不匹配。就没人去做。 |
![]() |
24
duanxianze 1 天前
不可能的,只能用各种人机验证,验证码来预防
|
25
Rickkkkkkk 1 天前
用户直接手点浏览器你感觉能区分吗?
|
27
zachariahss 1 天前
单请求没办法,请求前的页面渲染状态,埋点,加载状态,鼠标轨迹,行为逻辑分析,一系列东西去判断,但是防不住真想和你做对抗的人....这东西都是一整个团队用上各种手段去尝试,对抗,没啥一劳永逸的办法
|
![]() |
28
akakidz 1 天前
本质上,这类问题没有绝对的防御手段。对抗方式往往是一个“试错博弈”的过程,如果用户的试错成本足够低,那么无论你做多少防护,他总能找到突破口。关键在于如何提高用户的试错成本,而不是通过技术手段杜绝爬虫
|
![]() |
29
Ketteiron 1 天前
这个问题等价于如何防止爬虫
答案是防不了 人机验证 通过接码平台解决 五秒挑战,参考 Cloudflare 5 秒盾,浏览器静默执行一段 js 脚本,识别当前是否是正常环境 通过无头浏览器解决 浏览器指纹验证 https://github.com/fingerprintjs/fingerprintjs 但它是开源的,攻击者依然可以想办法绕过 tls 指纹识别,cloudflare 等云厂商通过对所有开源请求库做特征库,能识别一个请求是否通过浏览器正常发送,甚至能识别无头浏览器 但可惜可以无头浏览器+伪造特征 再来就是老一套的混淆接口加解密 没啥用,5 分钟以内就能破 |
![]() |
30
MHPSY 1 天前
有一个 brightdata ,可以搜索一下
他们提供完整的无头浏览器远程的方案,包括自动过验证码,自动过 5 秒盾,几乎只需要写拿数据的业务逻辑就可以了,很方便。 很难爬的数据我就用这个搞,基本都能搞定 |
![]() |
31
Ketteiron 1 天前
人机验证算是最有效的防护手段了,双方硬拼钱包,但已经渐渐出现 AI 接码服务,攻击者成本会越来越低。
|
32
dddd1919 1 天前
也可以 RPA 操作浏览器,无解
|
36
AutumnVerse 1 天前 via iPhone
直接上 cf 盾,如果这都被破解,那就认了吧
|
![]() |
37
bzw875 1 天前
通通加上人机验证,图片验证码
|
![]() |
38
lavvrence 1 天前
https://lawrenceli.me/blog/cloudflare#client-hello---ja3
基于 TLS 的 JA3/JA4 指纹。 |
39
felixsama969 1 天前
被针对是无解的
|
![]() |
40
hahahalololo 1 天前
@Ketteiron 5 分钟!!大佬!!!我碰到 js 混淆加密,经常看半天都找不到破解方法
|
![]() |
41
kxg3030 1 天前
以前还有 tls 指纹的 现在 也是轻松过了 放弃吧
|
43
macaodoll 1 天前
我就是做爬虫的,无解
|
44
dode 1 天前
查看 UA ,操作系统,HTTP 请求头
|
45
dode 1 天前
统统随机人机验证验证码
|
![]() |
46
mightybruce 1 天前
|
47
DimensionalBoy 1 天前
你防住我的同时也会防住某些客户,然后客户:你的产品真难用
|
48
hnliuzesen 1 天前
TLS 握手指纹,不过可以模拟
|
![]() |
49
iorilu 1 天前
为什么要模拟 js
现在都是直接程序控制浏览器阿, 确实都是浏览器的访问 |
50
unused 1 天前
浏览器是啥
|
51
whp1473 1 天前
这个不能完全实现,但如果你希望是从自己的产品网页发出则是可以实现的,可以通过 js 代码记录全面的用户行为记录,然后发送行为记录数据,比如鼠标的移动、颤动、停顿、页面的切换等等,模拟成本无限拔高。
|
![]() |
52
Kinnice 1 天前 via Android
埋暗点,比如某几个.js/jpg 返回是 js/jpg 内容,但是实际是后端用来检测是不是爬虫的一个暗点
需要配合:别直接 ban 对方指纹,而是随机延迟返回,接口随机 50x 报错,假数据 只针对那种纯发包的爬虫场景,模拟浏览器的还要结合浏览器指纹/ip/一些 hack api ,随机的高级别验证码等 |
![]() |
53
KagurazakaNyaa 23 小时 10 分钟前
https://github.com/TecharoHQ/anubis 上阿努比斯,每个请求都要计算,正常用户在一个设备上不会有很高频率的请求,爬虫才会
|
![]() |
56
cheng6563 17 小时 29 分钟前
要求客户客户端挖个矿
|
![]() |
57
linxiaojialin 16 小时 32 分钟前
@Ketteiron 你好,请教一下,假如需要长时间(例如 24 小时不间断地)爬取一个电商的页面,而它有 CF 盾,同时要和其他人抢购不定时刷新出来的秒杀商品,请问有办法确保不会被屏蔽并尽量抢购到商品吗?
|
![]() |
58
dosmlp 11 小时 5 分钟前
无解,反正什么样的数据都可以伪装
|
![]() |
59
aino 10 小时 25 分钟前 ![]() 好事,攻防对抗 无休无止 又可以让老板多投点资源进来了
|
61
artiga033 10 小时 16 分钟前 via Android ![]() 要不人脸识别吧,也别管是人还是自动程序了,反正你就要求个人坐在摄像头前面
|
![]() |
62
byasm32 9 小时 51 分钟前
29 楼总结的挺完整的了。
|
64
liudewa 9 小时 35 分钟前
@Ketteiron #55 https://m.wandacinemas.com/login 大佬登录流程跑通
|
![]() |
66
EndlessMemory 9 小时 26 分钟前
行为轨迹
|
![]() |
67
yb2313 9 小时 23 分钟前
唯一的办法就是行为监测,但这很容易误伤正常用户,检测是否是人类的算法再完美也没用,到最后就是猛弹窗验证码,肥了打码平台,公开数据真那么重要还不如直接开放合理定价(不合理人家还是选择爬)的 pai 付费接口,钱捞到才是真的。
|
![]() |
68
viking602 9 小时 22 分钟前
其实无解 你只能从用户行为上进行判断 比如短时间内获取了大量数据这种很大概率是有问题的
|
![]() |
70
Ketteiron 8 小时 41 分钟前
@linxiaojialin #57 可以实现,js 逆向是基本功,摸清用户行为控制的级别和边界,看情况上分布式、退避算法、接入 AI 。
为了不给灰产送子弹,不会提供具体细节。 |
![]() |
71
Ketteiron 8 小时 35 分钟前
@yb2313 #67 接入 AI+MCP 后行为监测也没用了,cloudflare 现在是用 AI 去识别用户是否是 AI ,识别率感人,喜欢用纯键盘(比如我)翻网页的人几乎被误伤到没法用了。
|
74
Huelse 8 小时 10 分钟前
最简单的就是加验证码,有个验证码方案是 hash 算力检测,无头浏览器基本过不了,可以访问 openwrt.org 看看。
然后就是链接行为检测了,TLS 握手、指纹等等,这方面最擅长的是 GFW... |
![]() |
75
Ketteiron 8 小时 7 分钟前
@liudewa #72 请求验证码接口 电话号码明文,得到 requestID
请求登录接口,也全是明文,然后直接就登进去了 后续看了下改地址、选电影院也没有什么问题 兄弟,你不会连构造 cookie 都不会吧,玩这套流程让我回到了二十年前。 |
79
yulon 7 小时 8 分钟前
这个方向是错的,客户端 0 信任
|
![]() |
80
pocketz 6 小时 45 分钟前
在互联网上,没人知道你是一条狗.jpg
|
![]() |
81
wangtian2020 6 小时 42 分钟前
没有任何办法,一个东西他像用户,那他就是用户
|
![]() |
84
andforce 5 小时 51 分钟前
cloudflare 验证码
可以识别是用户还是模拟,我至今没找到能破解的方法。 用无头浏览器也不行,还是你能识别是不是人类 |
![]() |
86
hereIsChen 4 小时 27 分钟前
以前听过一个方法,防无头浏览器,就是页面内弄一个隐藏的 a 标签,普通用户是看不到的;
如果这个标签被访问了,就肯定不是正常访问到的 |
87
Dora112233 4 小时 17 分钟前
页面放个隐藏图片,没加载过图片的就是非浏览器访问。
|
![]() |
88
ljl024 3 小时 25 分钟前
|
![]() |
89
realpg PRO 高级点的机器人检测都是公司最核心的知识产权价值...
为什么总有人觉得去论谈发个帖就能拿到... 这玩意给个思路的价值都很离谱 |
90
xiaojie668329 17 分钟前
我直接 CDP 操作浏览器,你如何应对
|
![]() |
91
wjpauli 16 分钟前
你可以研究下指纹技术
|