背景
最近这个小程序 确实太火了,我自己倒是没什么兴趣,主要就是我女朋友每天抱着个手机玩,每天抱着手机一个劲的玩。
然后朋友群里也是一个劲的讨论,讨论第二关好难过,然后每天看了多少多少广告。
然后网上还流传了 羊了个羊 收入。🐮🍺 这 谁看了不眼红。
上面我的信息,我也不知道真假。就图一乐,大家请勿当真。
分析
还是老规矩,还是先通过电脑 Charles 先进行分析,如果可以通过,再移植到手机 HTTP Catcher 上。
- 打开 Charles ,配置好手机代理
- 打开小程序 羊了个羊
- 查看 Charles 数据包情况。
可以看到这里一瞬间就出来非常多的请求,一般新手不太好找具体的目标是哪个,这个时候可能需要一点经验或者 猜测一下。
我自己第一个主意到的域名是 easygame2021.com 。
为什么呢,因为其他的要不然都是直接的 IP 地址,要不然就是 weixin.qq.com 这个是微信官方的服务,所以就基本上可以锁定这个是我们想要的域名。
然后使用 Charles foucs 一下。这样方便看一点。

然后现在进入小程序点击开始
然后返回 Charles 查看列表记录。

可以看到这里出现了两个接口,通过接口名字猜测,我感觉这个应该就是两个分别两关的配置。 然后就开始玩游戏,玩游戏的时候再观察本地效果。 实际玩的过程中,都没有接口请求了,所以基本上可以确定,这里的两个 map_info_new 就是两个地图的配置信息。
当我们知道了这个信息之后,我们又能做什么呢,试想一下如果我把 第二关的请求,重定向到 第一关,这样是不是就把第二关直接替换成第一关了,因为我们知道第一关其实是很简单的。
因为这里我们是在电脑上,所以我们直接使用 Charles 的 Map Local 功能将 第二关返回值,直接替换为第一关的返回值。
先检查下替换是否成功
然后再次进入 小程序 羊了个羊
注意看,上面这张图 我们在第二关的时候,显示的图确实第一关的。到这里我们其实就可以顺利通关了。
意外发现
在上面的抓包过程中
我发现最后完成游戏的时候 会发送一个 game_over 的接口。后面我发现这个 game_over 接口是可以重试的。😈😈😈😈😈😈😈😈😈😈😈😈😈😈😈😈😈😈😈😈😈😈😈😈😈
HTTP Catcher 配置
在电脑上完成之后 在手机上处理起来就很简单了。在 HTTP Catcher 上面有很多种方法可以达到我们的目的,我这里使用的是修改 URL 的方法。
具体看图
