在钉钉的蓝牙打卡系统中,管理员通常设定一个特定的打卡范围,用户只能在这个范围内打卡。然而,最近发现了一个可能的漏洞:实际的打卡位置并非在用户点击打卡那一刻被确定,而是在之前的某个时刻。这一发现通过两个实际场景得到验证:一是用户在离开办公区域后,在非打卡范围内成功打卡;二是在打卡失败后,用户在离开打卡机的路上重新尝试并成功打卡。这表明钉钉的打卡位置抓取逻辑可能存在时序问题,允许用户在非规定区域打卡成功。
钉钉藍牙打卡 Bug 分析#
正常情況下的打卡流程:#
- 管理員設定特定的打卡範圍。
- 用戶必須在該範圍內才能成功打卡。
發現的問題:#
- 钉钉打卡位置抓取邏輯異常:實際打卡位置不是在用戶點擊打卡的那一刻確定的。
場景還原:#
-
下班場景:
- 時間:下午六點半,下班。
- 操作:
- 關閉電腦,離開辦公區域。
- 到達樓梯口附近時打開钉钉,出現打卡提醒彈窗,但未立即打卡。
- 繼續走到樓下小區附近,此時點擊之前的打卡提醒彈窗。
- 結果:打卡成功。
- 注意:此時的位置已經不在打卡範圍內。
- 對照實驗:同事在相同位置嘗試手動打卡,無法連接到考勤機。
-
再次嘗試打卡:
- 操作:
- 來到打卡機前,再次嘗試打卡。
- 人臉識別階段故意未露臉,導致打卡失敗,但產生了打卡失敗的彈窗。
- 未關閉彈窗,繼續走到路口。
- 在路口點擊彈窗上的 “重試” 按鈕。
- 結果:打卡成功。
- 位置已不在規定的打卡範圍內。
- 操作:
總結:#
- 钉钉的藍牙打卡功能可能存在位置信息抓取時機的 Bug,導致實際打卡位置和用戶操作時間不同步,從而使得用戶在非指定區域也能成功打卡。
此文由 Mix Space 同步更新至 xLog
原始鏈接為 https://www.laogou666.com/posts/BUG/dingtalk