euph
V2EX  ›  Android

请教一下,安卓用 adb 模拟点击可以被检测到吗?

  •  
  •   euph · Sep 8, 2023 · 17069 views
    This topic created in 1155 days ago, the information mentioned may be changed or developed.
    如题,想写个脚本自动操作手机,比如类似钉钉打卡什么的,那么用 adb 模拟的点击能被 app 检测到不是真实点击吗?还有,如果我手机连接蓝牙外设操作的话,这个操作也可以区分出来不是真实点击吗?
    20 replies  •  2024-03-07 16:45:32 +08:00
    leon0318
    leon0318
    Sep 8, 2023 via iPhone
    1
    区别不出来
    x500
    x500
    Sep 8, 2023
    2
    当然可以被检测出来
    itskingname
    itskingname
    Sep 8, 2023❤️2
    3
    adb 模拟点击有两种方案检查:
    1. 每次点击的坐标完全一样。
    2. hook uiautomator 里面的 click 函数,被调用的时候能发现
    flyqie
    flyqie
    Sep 8, 2023 via Android
    4
    连接蓝牙外设 + 每次随机漂移少许坐标。

    根本无法检测。
    dusu
    dusu
    Sep 8, 2023 via iPhone
    5
    @flyqie 我最近也在研究这块,除了刷抖音的那种蓝牙按键成品外,有没有那种可开发或者 diy 的外设蓝牙产品?老哥方便给个关键词?
    QinYu0226
    QinYu0226
    Sep 8, 2023 via Android
    6
    肯定不能分辨的,除非他被你授权了 root 权限。或者它是病毒,它自己获取了你的 root 权限,再来监控你。这个都已经属于投放病毒的性质了。
    karatsuba
    karatsuba
    Sep 8, 2023
    7
    单论技术层面不可能被检查出来
    Vegetable
    Vegetable
    Sep 8, 2023
    8
    @itskingname 可以加入随机,并用短 swipe 而不是 tap 来模拟点击,这些做起来很容易
    forQ
    forQ
    Sep 8, 2023
    9
    我司已将打卡手机绑定数量限制为 1 台,不能通过此法作弊了
    InkStone
    InkStone
    Sep 8, 2023
    10
    现在模拟点击检测都上模型了。通过分布模式识别来检测,理论上是能检测的,不过打卡这里有没有用上我很怀疑
    xingchenxf
    xingchenxf
    Sep 8, 2023❤️1
    11
    @itskingname hook uiautomator 里面的 click 函数,是指 UiDevice 里的 click 函数? 模拟点击的时候,都调不到本进程的这个函数吧,如何能 hook ?
    SoyaDokio
    SoyaDokio
    Sep 8, 2023
    12
    打卡的话,可以考虑用一个手机专门打卡,然后放公司用远程控制方式操作,方案成熟稳定,且回避了#9 老哥提到的限制绑定数量问题。
    当然也有带来的问题,就是下班时间给你发的消息看不到了,没法加班(逃
    hefang
    hefang
    Sep 8, 2023
    13
    adb 模拟点击检测不出来,也没有必要去做检测,因为有更方便检测的,
    就是你的打卡经纬度数据一个月都不带变的,这很容易就判定了。
    我司用钉钉,
    行政已经发邮件警告模拟打卡的了。
    sadfQED2
    sadfQED2
    Sep 8, 2023 via Android
    14
    要看你通过哪种方式提权,如果是通过无障碍接口提权进行点击的话是可以检测的。

    如果是 root 以后直接往设备文件里面写命令的话没法检测

    还有一种提权是通过 xposed hook 安卓系统函数,这种也没法检测
    sardina
    sardina
    Sep 8, 2023 via iPhone
    15
    adb 模拟点击 检测不出来,但是安卓上的 adbd 进程可是会被 app 读到的,再加上一些其他的行为验证,应该就差不多可以定位你了
    euph
    euph
    OP
    Sep 8, 2023
    16
    @hefang 那有的人就是每天坐到工位上才打卡咋办
    MLawliet
    MLawliet
    Sep 9, 2023❤️1
    17
    adb shell input 容易被检测,因为 dispatchTouchEvent() / onTouchEvent()里接收到 event 的 deviceId==-1,是 virtual device
    root 后,直接向/dev/input/event* 里写数据应该是检测不到的
    justfun
    justfun
    Sep 10, 2023
    18
    @dusu ios 端有个这 实现原理跟你说的一样 http://ecdoc.laoleng.vip/iosdocs/
    hefang
    hefang
    Sep 11, 2023
    19
    @euph #15 同一个位置也会有精度差异,不是一层不变的,但是模拟的位置信息就是一层不变的,具体怎么判定是 DD 的做的逻辑,不要小看那帮 B 。
    djby
    djby
    Mar 7, 2024
    20
    推荐用 NewDesk 远程控制,可以用 adb 控制,目前使用正常,不会被检测到,但是用无障碍已经被检测到了
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   1786 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 120ms · UTC 01:03 · PVG 09:03 · LAX 17:03 · JFK 20:03
    ♥ Do have faith in what you're doing.