模拟点击是怎么被识别的

32 天前
 leeside

模拟点击是如何防止作弊的 https://github.com/Nain57/Smart-AutoClicker 今天淘宝有红包,想找一个模拟点击,结果识别的有效点击次数很少

猜测

  1. 检测位置不能一直是同一个坐标(软件开了防作弊会随机坐标)
  2. 时间不能太快
3843 次点击
所在节点    程序员
25 条回复
ho121
32 天前
模拟点击的按下和抬起的之间的延时分布不符合人工点击的延时分布。
leeside
32 天前
@ho121 谢谢,理解了。手工点击的时间间隔会更随机,疲劳可能导致时间时间会变大。
willwon1
32 天前
很简单,入职阿里的端防团队你就知道了。
要是年薪快百万每年产出就这个怕是早就要被开了。
GeekGao
32 天前
不可能告诉你的,知道也不会告诉你的
gam2046
32 天前
web 端有移动轨迹

移动端有移动轨迹和按压压力,最后你这个软件如果不需要 shell 权限,那么应该是通过无障碍服务功能实现,这对于目标应用来说是可见的,相当于你明牌了,告诉人家,你用了工具点击的。
ho121
32 天前
@leeside 这个可能只是一方面,实际上判断的途径会有很多
Jinnrry
32 天前
1 、压力
2 、轨迹
3 、基于以上 2 点,机器学习判断
aycclm
32 天前
弄一个马斯克的 optimus 机器人,把手机给它来点也许能行
levelworm
32 天前
@gam2046 我感觉直接拾取人工按一分钟的数据然后回放,怎么样?
gam2046
32 天前
@levelworm #9 基于我的对抗经验,如果你有足够多的轨迹回放,那么在规模不大的应用场景下,是可行的。如果回放轨迹较少,那么用不了几次,风控也就上来了。
levelworm
32 天前
@gam2046 多谢,看来可以花点钱请一百个志愿者来点击半个小时,然后随机组合一下。。。
jiaoyidongxi
32 天前
这个模拟点击的 app 我也在用,它不是自带反侦测随机漂移坐标的功能吗
liyafe1997
32 天前
@gam2046 App 最多能看到有哪些无障碍服务在运行,不能看出某次点击是否来自无障碍吧
gam2046
32 天前
@liyafe1997 #13 如果你指的是直接检测,给个 true or false 的结果,那么暂时是不太可行的。但是还是有比较方便的方法来测试。

假设张三希望在某 app 进行自动登陆,通过无障碍服务实现,找到 ID 为 abc 的 textview 就准备往里填写用户名。

而目标应用为了避免这种情况,只需要代码里 new TextView ,并赋 id 为 abc ,并不需要真的 attach 到 View ,调用类似这样的代码

textView.sendAccessibilityEvent(AccessibilityEvent.TYPE_NOTIFICATION_STATE_CHANGED);

如果最后 textview 里真的有值了,那么就是有无障碍服务操作,因为此时这个组件并不在用户可见的视图,类似的变种,比如视图先放到可视区域以外,size 先做的很小。透明度调低等等,开动小脑袋瓜,还有不少。

accessibilityManager.getInstalledAccessibilityServiceList()[*].packageNames 也可以知道哪些无障碍服务正在辅助自己,packageNames 为 null 或者自己的包名,那么都是自己的专辅。

同时目前 Android 上无障碍服务的正经应用并不多,建立个白名单并不困难。除了少数几个正经应用,其他我不认识的应用,还在辅助我,风控等级就往上调就行了。
dgsrz
32 天前
一般会综合多个维度判断的,像上面提到的坐标轨迹,还有像传感器(加速度计),系统环境,后台进程等
lisongeee
32 天前
我看这个 APP 是基于无障碍服务实现派发点击手势的,其实不通过无障碍接口也能实现

同时上面 #14 说的 getInstalledAccessibilityServiceList 也检测不出来

原理是基于 shizuku 绑定服务调用 UiAutomation 获取屏幕无障碍节点,通过 input tap x y 执行点击
Sawyerhou
31 天前
真实点击是多点触碰,模拟点击是单点触碰。
mouyase
31 天前
调一下摄像头发现屏幕前没有人(瞎说的
shunia
31 天前
那个上面说阿里的什么防团队年薪百万啥啥的真给我整笑了,能不能让这些年薪百万的天才们把阿里系那个傻叉的要死的验证条功能做好一点啊,说到底不还是有海量的瞎猜和误报。
liyafe1997
31 天前
@gam2046 1. 现在很多这种自动操作 App 为了避免这种情况,都是用的坐标点击,而不是激活某个“钓鱼控件”。
2. 正经的无障碍服务很多,如果你关注过盲人的圈子,他们甚至会自己开发各种各样小众的辅助工具,这些都是真实的无障碍需求,如果一刀切(甚至你提到的第一种情况)会让真正需要无障碍的人无法操作。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1080205

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX