我之前写过一篇文章《聊聊未越狱iPhone的虚拟定位》,介绍了iPhone虚拟定位的原理。然后就有不少网友动了心思,想用这个来进行钉钉打卡,比如万一哪天迟到或者想晚点到公司,那就在家先模拟定位瞬移到公司打个卡。
但是也有不少“谨慎”的网友又不是很放心,在后台问我,这个修改定位到底是否靠谱?钉钉打卡能否成功?有没有什么风险?
在这里,我统一回复一下。
1、修改定位这个功能肯定是没有问题的。这个也非常容易验证,你修改定位之后,打开微信或者百度地图,看一下当前位置就明确答案了。
2、钉钉打卡能否成功?在一定条件下是可以打卡成功的。钉钉作为一款几亿人下载的成熟产品,想都不用想,肯定是会有一套反作弊机制的。举个最简单的例子,如果你上一秒定位还在家里,下一秒就定位到了公司进行打卡,你说钉钉的后台会相信你有瞬移的能力吗?
但是所有的反作弊策略都不能做到百分之百,攻与防是一个博弈的过程,也需要考虑成本收益,对公司来说只需要用可控的成本识别大部分常规作弊手段即可。
如果你确实需要用虚拟定位来钉钉打卡,怎么样来提高成功的概率呢?
(1)操作顺序很重要。先关闭钉钉App一段时间,然后进行虚拟定位,定位成功之后再打开钉钉App打卡,钉钉打卡之后关闭钉钉,然后再关闭虚拟定位,所以最好养成“打卡之后就关闭钉钉”的良好习惯。这样可以确保钉钉后台拿到的定位信息不会存在从某个地方瞬移到公司的情况。
这里说的关闭钉钉App是指完成杀死进程。从这个角度来看,iPhone要比Android虚拟定位打卡容易。因为iPhone只需要在后台kill掉App就搞定了,而Android手机可能存在一些后台服务比较难杀死。如果哪天钉钉做到足够强大,跟一些国产手机厂商合作了,手机系统中集成了钉钉的后台服务或者把钉钉后台服务加入白名单,那钉钉反作弊就更彻底了。但是要跟苹果达成这种合作就不太现实。
(2)关闭WiFi。如果我做这个反作弊系统,我除了校验GPS定位之外,我可能也会看一下IP地址。连接公司WiFi,那分配的IP地址是在一个特定网段的。你连接家里或者其他地方的WiFi,手机获取的IP地址是不一样的。所以干脆关闭WIFI使用4G网络会更保险。
不过使用4G网络时,手机的IP也不是一成不变的,一般来说在同一个归属地(也就是同一个城市),只要手机不重启或者不开启关闭飞行模式,手机的IP地址不会变化。如果切换了城市,那手机的IP也会发生变化。所以,如果你想通过虚拟定位进行跨城市打卡,是很容易被识别的。如果哪天钉钉出了一个新规则,要求连接特定WiFi才能打卡,那就更难搞了。
(3)每次虚拟定位时,不用选择同一个GPS坐标。正常情况下,手机定位的存在误差的,尤其是在办公楼里GPS信号相对较差,漂移误差会比较大,可能会超过100米。比如都是坐在你自己的工位上,不同时间获取的具体GPS坐标肯定是不一样的。所以进行模拟定位时,不要偷懒每次都选择同一个写死的GPS坐标,而是需要每次都适当做些偏移。如果你每次都使用完完全全一模一样的坐标,那后台要识破你就非常简单。
3、因为我自己的工作不需要打卡,我也没有使用过钉钉这个App,以上是我根据自己的知识储备和逻辑推理得出的结论,仅供参考。
4、虚拟定位可能存在一些其他方面的风险。比如iPhone通过外设来定位,需要配套使用一个App来输入模拟的定位信息。因为这个App是没办法通过苹果审核在App Store上线的,所以一般都是使用的企业证书签名。我们知道苹果App Store审核还是非常严格的,不管是对私有API的扫描还是对各种隐私权限的管控都非常严格,而企业证书签名的App就没有这一步审查。比如我获取通讯录权限,获取照片权限,把你的通讯录和照片都偷偷上传到我后台服务器是轻而易举事情。所以,使用企业证书签名的App时要格外慎重。
5、最后,小罗不建议大家使用虚拟定位来打卡。这种行为是否违法我不确定,但是至少这是一种不诚信的行为。公司要求打卡自然有公司的考量,你在这个公司上班就应该遵守公司的规定,如果你讨厌打卡,那最好的方式就是换一家不用打卡的公司。
微信公众号:云峰小罗,坚持原创,聊聊科技和互联网, 分享职场和思维,