在钉钉的蓝牙打卡系统中,管理员通常设定一个特定的打卡范围,用户只能在这个范围内打卡。然而,最近发现了一个可能的漏洞:实际的打卡位置并非在用户点击打卡那一刻被确定,而是在之前的某个时刻。这一发现通过两个实际场景得到验证:一是用户在离开办公区域后,在非打卡范围内成功打卡;二是在打卡失败后,用户在离开打卡机的路上重新尝试并成功打卡。这表明钉钉的打卡位置抓取逻辑可能存在时序问题,允许用户在非规定区域打卡成功。
钉钉蓝牙打卡 Bug 分析#
正常情况下的打卡流程:#
- 管理员设置特定的打卡范围。
- 用户必须在该范围内才能成功打卡。
发现的问题:#
- 钉钉打卡位置抓取逻辑异常:实际打卡位置不是在用户点击打卡的那一刻确定的。
场景还原:#
-
下班场景:
- 时间:下午六点半,下班。
- 操作:
- 关闭电脑,离开办公区域。
- 到达楼梯口附近时打开钉钉,出现打卡提醒弹窗,但未立即打卡。
- 继续走到楼下小区附近,此时点击之前的打卡提醒弹窗。
- 结果:打卡成功。
- 注意:此时的位置已经不在打卡范围内。
- 对照实验:同事在相同位置尝试手动打卡,无法连接到考勤机。
-
再次尝试打卡:
- 操作:
- 来到打卡机前,再次尝试打卡。
- 人脸识别阶段故意未露脸,导致打卡失败,但产生了打卡失败的弹窗。
- 未关闭弹窗,继续走到路口。
- 在路口点击弹窗上的 “重试” 按钮。
- 结果:打卡成功。
- 位置已不在规定的打卡范围内。
- 操作:
总结:#
- 钉钉的蓝牙打卡功能可能存在位置信息抓取时机的 Bug,导致实际打卡位置和用户操作时间不同步,从而使得用户在非指定区域也能成功打卡。
此文由 Mix Space 同步更新至 xLog
原始链接为 https://www.laogou666.com/posts/BUG/dingtalk