漏洞描述
AppSecret是小程序的唯一凭证密钥,也是获取小程序全局唯一后台接口调用凭证的重要参数,需要开发者妥善保管至后台服务器中,并严格保密,不向任何第三方等透露。小程序若存在AppSecret密钥泄露漏洞的情况,会造成身份信息仿冒、敏感数据外泄等严重后果,开发者应及时发现该漏洞并快速修复相应问题。
漏洞环境搭建
如果没有可用的Appid、AppSecret来复现漏洞环境,可以自己注册一个公众号或微信小程序。我有公众号,那么接下来我会用公众号来演示操作。
首先登录公众号,然后依次点击:设置与开发-基本配置-开启、重置(第一次显示的都是开启,我这个是已经开启后效果,如果忘记AppSecret可以重置)
获取到Appid、AppSecret后还需要设置IP白名单。由于是通过开发者ID及密码调用获取access_token接口的,所以需要把访问来源IP添加到白名单,这样才可以正常使用功能(图片中的ip请替换成你的公网ip)。
相关文档手册
微信官方手册公众号
https://developers.weixin.qq.com/doc/offiaccount/Getting_Started/Overview.html
公共错误码
https://developers.weixin.qq.com/doc/oplatform/Return_codes/Return_code_descriptions_new.html
网页调试工具
https://mp.weixin.qq.com/debug/cgi-bin/apiinfo?t=index&type=%E5%9F%BA%E7%A1%80%E6%94%AF%E6%8C%81&form=%E8%8E%B7%E5%8F%96access_token%E6%8E%A5%E5%8F%A3%20/token
漏洞复现
获取Access token
手册说明
https://developers.weixin.qq.com/doc/offiaccount/Basic_Information/Get_access_token.html
获取方式
https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=APPID&secret=APPSECRET
举例子,假如你的Appid是123,AppSecret是456那么获取Access token的链接就为:
https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=123&secret=456
调用功能
通过查看微信官方手册公众号就可以知道可以通过接口使用哪些功能
我们用获取用户列表接口举列子
可以直接使用手册中的地址补充获取到的Access token请求即可,我这里使用网页调试工具来测试
由于我的公众号没有认证所以没有获得相关的权限无法通过接口调用功能。
从网上找了成功的案例图片
获取小程序用户评论
获取小程序用户访问数据
冒用小程序身份给用户发送消息
评论 (0)