之前在挖一个src的时候,有一个资产是小程序
抓包如下
根据地址id查看收货地址

注意到请求里没有cookie,然后url里面这个digest字段比较奇怪,所有的接口都是根据这个参数鉴权的,一般不都应该叫token么。
然后搜索了一下,这个参数不是服务端返回的(第一次出现不在response header 或者response body中),然后就猜想是本地生成的?
把小程序的源码拿下来,这个方式就不说了,网上教程很多,然后用 https://github.com/lcroot/wxappUnpacker 解包
用微信开发者工具打开,全局搜索 该接口的url,最终定位到

发现就简单的为userid加个salt(salt也是明文的,这里我码上了),再md5一下
这都不用调试了
直接md5验证一下

发现跟上面抓包的url里的degest参数相同
小程序的其他接口,比如订单,地址等,不同的接口只是salt不同而已,我们通过生成degest就可以全站接口的越权了。
最终拿到了严重的评级