1. 常规测试
首页
这是一个购物的小程序,那我们就冲着0元购目的打。
首先看到数据包中有商城的地址,那就试试看后台有没有弱口令吧。
字典都跑完了没有爆破出弱口令账户。还是测试功能点吧。
2. 并发
挨个测试那就先测试签到功能吧,目前是0积分。
把bp的拦截功能打开,拦截签到的数据包,然后转发到intruder模块。把payloads设置为Null payloads,并选择无限循环。
再新建一个并发999的资源池,发包。
成功了两个请求,获得了10积分。
3. 0元购
接下来测试余额功能,点进去后有一个充值按钮。
点击后是充值界面,那就充个0.01吧。点击立即充值按钮后,会产生两个数据包。第一个数据包是充值的申请,第二个数据包每隔5秒检测该请求是否已支付状态。如果关闭了付款二维码则会返回第三个支付失败的数据包。
其中在第一个数据包中包含了支付金额、用户id和用户token。
既然显示了金额,那我能不能填写0.01然后扫码支付0.01后拦截他的数据包把0.01改成想要的数字呢?我看刑试一试。扫码支付0.01后拦截他的数据包人就傻了,数据包被加密了,改不了。
再回头看数据包这个planId是干嘛用的?不甘心再试试,再充个0.01点击立即充值然后拦截该数据包把planId=0修改成planId=1看看是什么效果。
放包后扫描二维码成功支付0.01,再返回钱包你猜怎么着,多了10元。
看看充值记录是什么情况。用0.01充10.01足足1001倍啊,爆率真的高。那我要是把planId=0修改成planId=2又是什么样的效果呢。
填写0.01点击立即充值,拦截数据包把planId=0修改成planId=2然后放包扫码支付后,回到钱包还是用0.01充10.01
多次尝试后发现当planId改为4时则会返回充值套餐不存在的提示。
到这里我就明白了,当planId=0时是正常的充值,而1、2、3则有可能是小程序在开发时用来测试用的,小程序上线后这个测试的充值套餐没有被删除。(题外话:这种功能常用于在搞活动的时候用到,比如充值500送200这样的活动。)
4. 好多优惠券
ok接下来该轮到测试优惠劵了,点击领券中心,只有一个满1元减0.01的券。
点击领取后,查看一下数据包好玩的就来了。数据包中包含优惠券的id、用户id和用户token
盲猜和充值一个逻辑,直接把数据包转发到intruder模块。把coupon_id参数设置为变量,payloads设置为数值,数字范围从0到100
一共成功领取了12张优惠券
5. 水平越权
最后再测试一下个人信息界面吧。头像处经过尝试发现限制非常死,恶意文件上传不上去。上传正常图片后点击保存按钮,在数据包中就发现好玩的了。数据包中有图片的id。
数据包转发到repeater模块尝试把图片id改成1试试。
发现我的头像变了。
再改成2试试。
评论 (0)