前言
最近微信跳一跳这个小游戏火爆, 由于朋友排行版的存在, 激发了我们的上(pan)进(bi)心. 除了正常方式爆肝提高分数以外, 也有各种技术宅的非正常手段出来:
- 抓包拦截请求, 直接改游戏结束之后, 提交到服务器的分数
- 物理外挂, 用机械手指和摄像头, 识别距离, 计算点击时间, 控制机械手指按下去的时间
- 利用手机调试模式, 屏幕截图, 识别方块距离, 计算点击时长, 调用系统函数模拟点击屏幕
第 3 种方法相当于第 2 种方法的软件版, 本文用的就是这种方式
ps:
目前方法 1 的提交漏洞已经被修复, 方法 3 特别是方法 2 原理上是模拟人的操作 (代码中有故意随机偏移落地点和停顿间隔), 理论上微信是没法区别的, 但是微信貌似有一套成长曲线检测方法, 如果你的进步曲线不科学, 还是会把你分数清零的