原文地址:https://mp.weixin.qq.com/s?__biz=MzIwMTYzMzcwOQ==&mid=2650948432&idx=1&sn=125742722bbbce53774199a587688088&scene=1&srcid=0712bIkjChASin2vxqLLRkfI&key=77421cf58af4a6531f655659e82b0e329b827ddf0fe167881d47d7a9327d07762b47cf198ad9f6488ef3029f00abd36b&ascene=0&uin=MjA1MTY2ODAyMQ%3D%3D&devicetype=iMac+MacBookPro12%2C1+OSX+OSX+10.11.3+build15D21)&version=11020201&pass_ticket=s%2BMnEynsCC8nMGHtigEwzNFFiy45QzhRKOkOPx6j85kascYPN55wMPjF%2BT6%2FQoYj(
原文作者:糖炒小虾
前言
Pokemon Go 这个童年满满的游戏这周上线了,然而任天堂居然根据 GPS 锁区。于是我们肉身在墙内的小伙伴只能看海外的基友到处抓小精灵,各种约妹子出去散步。
于是我们为什么不去写个外挂去搞一发?整个东西的做法和之前的 Hack Moves 类似,所以只写步骤啦。
FakeLocation
首先,我们要知道该如何去做地理位置欺骗,然而我们知道 iOS 有个越狱插件叫做 FakeLocation8 能干这件事。那么我们就去研究一下他是怎么做的。
首先找到 Fakelocation8.deb
,然后执行
ar -x Fakelocation8.deb
会把安装包解出来一堆压缩包,解压 data.tar.lzma
漏出二进制,拖入 ida…
经过分析,这东西原理超级简单,说白了就是重写了 CLLocation 的 coordinate 方法。于是我们也写一个一样的出来:
步骤
- 找一台越狱设备 Clutch 砸壳出来一个 PokemonGo 的 spa
- 通过 iTunes 下载一个原版的 PokemonGo 的 ipa,解压拿出里面的 info.plist
- 配置好 iosopendev
- 创建一个 CaptainHook 工程
- 把上面写好的代码打包编译
- 对第一步的 ipa 中的二进制之行 yolo pokemongo libFakeLocation.dylib
- 对 libFakeLocation 执行 codesign: codesign -f -s "iPhone Distribution: 你的证书." libLocationFaker.dylib
- 把 libFakeLocation.dylib 和第二步的 info.plist 丢到 .app 目录中,再将 .app 放入 Playload 文件夹,压缩
- 写了个 fastlane 脚本,重签名 ipa
- 上传到 fir
从 FIR 下载安装
完成!
怒戳,阅读原文去下载吧。
原文地址链接:http://fir.im/j8bv#rd(作者已经把这个应用下架了,想用的得自己按照上面的步骤操作)