首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

微信小程序《消灭病毒》辅助

最近玩了一个比较火的微信小程序,消灭病毒。

游戏没有充值的地方,想要升级金币就得不停的看广告攒金币,刷关卡。

后来看到X宝有卖消灭病毒刷金币的,只需要用户ID号就可以,就尝试自己试试。

首先从抓包着手,我比较习惯用fiddler抓包。尝试模拟器上配置代理抓包,结果模拟器用不了。

没办法就用手机链接代理抓。

port就是安装证书时候的端口,保持手机和开fiddler的电脑在同一个网络中。查看电脑的IP地址。在手机的WiFi选项中设置代理电脑IP和端口。此时fiddler已经可以抓到手机中的http数据包了 。

如果需要抓https的数据包,还需要在手机浏览器中输入 " IP地址:8888 "

选择第二个 ,点击下载证书,然后安装好证书就可以抓https的数据包了。

进入正题

用手机抓包,抓到微信进入小程序后的数据包。

分析得出这个包是向服务器提交用户数据的数据包,其中有本地储存的用户信息,包括关卡,金币,砖石,体力等数据。一起发送给服务器了。其中的sign参数判断是用来校验合法性的,uid就是用户ID判断某宝的刷金币点就是在这里。尝试直接重放数据包更改用户ID发现服务器验证并没有通过,猜测数据经过加密放在sign参数中校验。需要找到加密sign的算法。

首先反编译小程序

找到疑似sign加密的算法

这个js看的有点绕,实在不确定是那一块进行的sign加密,就把疑似的地方dump下来直接去验证。

最后找到sign的加密算法。可以看到是用提交数据的全部内容+openid+wx_appid(这个可以不变)+wx_secret(也可以不变)生成的新sign,然后通过post请求 带上原来的数据,加上生成的sign发送出去。尝试发送,返回code:0表示成功了。

之后删除小程序 ,重新进入小程序 ,发现数据已经刷上了(为的是防止本地有数据默认进入小程序前提交到服务器,就会覆盖掉已经刷好的数据)

至此已经实现了想要的目的。

作者:WHITE

点这里留言~

来源:Ms08067安全实验室

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20190418A02HKM00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券