Sheep_hack 羊了个羊速通
Pre
一个魔性三消微信小程序游戏。由于游戏第二关是真随机,导致很难通关。既然制作者不讲武德也别怪玩家不客气。
Solution
通过抓包可以看到为数不多的请求里有个很扎眼的map_id,是关卡地图,于是可以从rewrite request入手,把所有关卡的地图全变成第一关最简单的地图。
Several solution
Solution 1 Desktop + iOS device Desktop DebuggingProxyTool(Charles/Fidder…) iOS device ProxyTool supporting Socks(Brook/Surge/ShadowRocket/Quantumult…)
or
Solution 2 iOS Traffic Sniffer App with rewrite function iOS device Http Cacher/Storm Sniffer/Surge/Thor…
安卓没有试,但理论上方法一样。安装证书Charles证书之后,通过wifi连接Charles,有可能会遇到SSL Pinning导致https无法抓取,解决办法是Android上安装Xposed+JustTrustMe来绕过SSL Pinning
Cost
| Mac Proxy App | Price |
|---|---|
| Charles | 不注册也可以免费试用, 有免费注册方法,sniff,rewirte全功能可用 |
proxy app 国区没有幸存者
| iOS Proxy App | Price |
|---|---|
| Brook | freeCharge(国区没有) |
| Surge | freeDownload,抓包免费 proxy rewrite内购,(国区没有) |
| ShadowRocket | paid(国区没有) |
| Quantumult | paid(国区没有) |
| iOS on-deivce Sniffer App | Price |
|---|---|
| HttpCacher | freeDownload,http抓包免费,https抓包内购,rewrite内购 |
| StormSniffer | freeDownload,http抓包免费,https抓包内购,rewrite 需要内购 |
| Surge | freeDownload,抓包免费,proxy rewrite内购(国区没有) |
| Thor | paid,(似乎现在appStore搜不到) |
推荐 Charles + Brook 免费组合
我用的Charles + ShadowRocket 因为我刚好有
Step
使用Charles在桌面端开启代理注意要使用SocksProxy (菜单栏 -> Proxy -> ProxySetting)

按照Charles的提示安装CA证书在你的手机上。(菜单栏 Help -> SSL Proxying -> Install Charles Root Certification on a Mobile Device or Remote Browser)
iOS使用ShadowRocket添加Charles的代理,注意类型填socks类型,这里ip如果不知道填什么可以在Charles里查看(菜单栏 -> Help -> Local IP Address)。代理要设置为全局代理。

打开Charles的rewrite功能,url’s parameter, key map_id 的 value 不用填,自动全部替换统一改为 80001 (菜单栏 -> Tools -> rewrite)

(Optional)接下来按顺序操作,验证是否操作成功,不过此时如果顺利直接进游戏也可以。
- 删除微信里羊了个羊
- 打开Charles的Recoring (菜单栏 -> Proxy -> Start Recoring)
- Charles中点击Clear Session(菜单栏 -> File -> Clear Session)
- 再进入羊了个羊,一直进入到第一关
- 检查左侧是否出现了红框里的数据,如果所有的id都是80001,恭喜你,成功了。
如果不行可能是检查步骤出错,回到第一步重新操作;如果多次不行则前面设置代理有问题,返回检查。
进游戏过了第一关之后来到第二关,但是第二关也变成了第一关的模样,15秒速通。