使用移动应用抓包利器Charles Proxy分析微信小游戏「跳一跳」

使用移动应用抓包利器Charles Proxy分析微信小游戏「跳一跳」

一、前言

微信最近推出了小游戏,“跳一跳”迅速风靡整个朋友圈。但小程序“跳一跳”目前存在一些不严谨的地方,利用抓包+伪造请求,可以轻松获取高分,100,000分不是梦。

“跳一跳”排行榜


二、Charles Proxy的下载

Charles Web Debugging Proxy可以方便的从官网获取:

Download a Free Trial of Charles • Charles Web Debugging Proxywww.charlesproxy.com

这里使用是的v 4.2.1 macOS(.dmg)版为例:

Charles Proxy的安装

下载后安装即可。


三、Charles Proxy的配置

1. PC上的配置

选择Proxy-->将macOS Proxy的勾选去掉(默认勾选),把MAC上的请求过滤掉。

选择Proxy-->Proxy Setting-->Enable transparent HTTP proxying:

Proxy Settings

2. 手机上的配置(以iOS为例)

PC和手机需要使用同一个WiFi(在同一个LAN)。

点进去所连WiFi,找到HTTP代理-->配置代理-->手动-->服务器和端口,然后设置即可。这里我的是服务器:30.31.178.73 端口:8888。

端口和PC上配置的Port保持一致。


3. 手机上Charles SSL证书安装

在Safari浏览器中输入:

Charles Web Debugging Proxy • SSL CA Certificate installationwww.charlesproxy.com

即可自动安装Charles SSL证书:

安装Charles SSL证书
安装Charles SSL证书
安装Charles SSL证书

证书安装完成后,要另外选择信任。可以在通用-->关于手机-->证书信任设置-->信任中选择。

信任Charles SSL证书


四、抓包方法

完成以上步骤即可开始抓包。

在手机上操作小游戏“跳一跳”,可以看到MAC上有了相应的请求,如下图所示。

通过查看 mp.weixin.qq.com 相关的请求,我们找到了“跳一跳”的相关请求,抓包完成。

Charles Proxy抓包示例


五、小游戏“跳一跳”接口

1. 初始化接口

mp.weixin.qq.com/wxagam

{
	"base_req": {
		"session_id": "hpbkW2P4p+WFv6K1rBsj6TkkN7cQWz0499jrsKXgUNUo/yzsLFtL2V+pE+vrqj0WpWAQiwVwrjGzS7jnJpoz5cAq0+4AWUiZ2qaakAsjI+Lmp/QPNAd3sJHiOFd07Wcb+ea+CxK2gratJUyuQXgpGg==",
		"fast": 1
	},
	"version": 9
}


{
	"base_resp": {
		"errcode": 0,
		"ts": "1514961410981"
	},
	"version": 9
}


2. 设置分数接口

mp.weixin.qq.com/wxagam

{
	"base_req": {
		"session_id": "hpbkW2P4p+WFv6K1rBsj6TkkN7cQWz0499jrsKXgUNUo/yzsLFtL2V+pE+vrqj0WpWAQiwVwrjGzS7jnJpoz5cAq0+4AWUiZ2qaakAsjI+Lmp/QPNAd3sJHiOFd07Wcb+ea+CxK2gratJUyuQXgpGg==",
		"fast": 1
	},
	"action_data": "WRoEY8EgjsW+8isXK1hkhq+t5jEa7TtrVqWy612wiD7kRRLlmeioGPbk4kCw12Gv"
}


{
	"base_resp": {
		"errcode": 0,
		"ts": "1514961590767"
	}
}


3. 获取朋友信息接口

mp.weixin.qq.com/wxagam


4. 获取自己信息接口

mp.weixin.qq.com/wxagam


5. 记录自己多次游戏的数据接口

mp.weixin.qq.com/wxagam


通过获取信息的接口,还能够得到你和朋友们头像的存储地址,我的头像是这样的:

wx.qlogo.cn/mmhead/MuCX


最近有些忙,先分析这么多~~~

编辑于 2018-01-04