背景:公司采用了软件打卡,而且有打卡地址限制,只能在公司周围几百米内才能打卡。
目标:通过抓包获取接口地址,手动篡改GPS坐标地址,达到随时随地打卡的目的。
工具:windows7_x64+fiddler+GPS查询网站+Httpea(iPhone上运行).
步骤:
1、下载并安装fiddler.
2、配置fiddler,假设IP为192.168.2.100。
3、配置iPhone,设置代理指向fiddler的IP和端口:192.168.2.100:8888
4、运行打卡软件,点击打卡按钮。
5、此时在fiddler的界面就可以看到调用的url和入参,可以发现入参是基于form表单的。还可以看到header里面的参数。
6、将入参decode.因为入参是encode,所以里面有大量的%.利用decode可以还原出原来的字符串。按ctrl+e,将fiddler截出来的入参拷贝进去,选择URLDecode即可。
6、利用GPS查询网站查询出公司所在地的经度和纬度。
7、在iPhone上下载Httpea,填入上面发现的url(其中经度和纬度要改成公司的)、入参、header里面的参数,点击send按钮,即可以打卡成功
。这样就可以用手机,不受地点限制随地打卡了。
注意到:
1、只能打当天的。假设昨天的忘记的打了,此方法无力回天。
2、只能解决地点限制。不能解决时间限制。换句话说,如果迟到了就只能迟到了。
3、综上,时间是服务器控制的,未留接口在客户端。
以上,已经达到目标
----------------------------------------------------------------------------------------------------------------
下面分享下一些调试技巧:
1、如果不用Httpea,直接利用fiddler,也可以实现打卡的目标。因为fiddler有个功能是拦截所有请求,在拦截到请求时,将经度和纬度改成公司的,然后点击Run To Completion。
2、可以利用postman调试。安装postman需要fanqiang(可以用lantern)
遗留的问题:
发现上班打卡和下班打卡的入参是一样的,不知道是不是我的失误,没有区分这2种,明天再试下。
这里特别小坦克的fiddler教程!