0x01. 通用业务逻辑漏洞模块
通用业务逻辑漏洞模块,是各行业共性的业务逻辑安全风险点,在每次的测试过程中也是最常见到的模块,也是测试的重点对象,所以网上介绍此类逻辑漏洞的文章很多,在这里再做下简单的思路点总结:
1.注册模块
•恶意用户批量注册。
•用户登录账号、id、昵称身份覆盖。
2.登录认证模块
•密码爆破。
•空密码登录。
•登录越权:修改登录请求返回包中的用户id等。
3.找回密码(修改密码)模块
•前端js校验绕过。
•邮箱重置密码链接弱token遍历。
4.验证码模块(图形、滑块、手机、邮箱)
•验证码前端js绕过。
•验证码空参数或删除验证码绕过。
•图形验证码长宽DDOS。
•验证码单一用户无限制发送。
•验证码重复使用。
•验证码低位数爆破。
•验证码回传泄露。
•验证码越权接收。
•验证码重复发送同一值。
5.支付交易(充值、提现、抽奖、优惠券、会员)等多个模块
•金额、数量负值/小数。
•总金额=商品金额+优惠券金额(只校验订单总金额,而不单独校验优惠券金额跟商品金额,可增大优惠券金额)。
•订单参数混淆干扰(在同一个订单内提交两个或多个金额参数,如price=1&price=-1)。
•校验商品总数量不能为负数,而不校验单个数量,可以设置两个商品一个数量为-1,一个数量为2。
•越权使用他人优惠券。
•首充优惠、升级会员等,多台设备同一账号同时进入支付宝微信第三方支付页面,此时签名订单已生成,支付时不会变成其他金额,可依次以优惠价格支付订单。
•小数点精度:0.019=0.02(比如充值0.019元,第三方支付截取到分也就是0.01元,但是系统四舍五入为0.02)。
•int型溢出(超过最大值整数溢出)遍历优惠券id,有可能遍历出测试隐藏的无条件大额优惠券。
•首充、提现、抽奖、领取优惠券等并发:不一定非要用同一个数据包去进行多次并发操作,可用bp等工具拦截客户端数据包,快速多次点击相应客户端按钮,然后停止拦截,并发请求。
0x02. 专项业务逻辑漏洞模块
由于业务逻辑漏洞更侧重的是思路,再加上师傅们超脱银河系的脑洞,各行各业的业务逻辑漏洞被挖掘的越来越多。接下来以我自身案例以及网上分享的逻辑漏洞思路点,给大家汇总一下不同行业所特有的逻辑漏洞风险点:
1.直播
•快速进出房间炸房。
•无限发送点赞协议。
•修改礼物数量,0,小数,负数,特定值(一般情况下为1073741824)。
•修改礼物ID,遍历尝试是否有隐藏ID。
•并发送礼物,抽奖。
•无限创建首次优惠订单,有些首次优惠订单是一个特殊的pid,这种的直接替换pid进行支付。有些是相同的ID,这种的提前创建订单,记录多个订单号在依次修改订单支付。
•刷屏:发言刷屏,分享,点赞等有提示的地方刷屏房间内可以申请的地方进行申请取消操作,看看是否能炸房。
•越权踢人,增加管理员,关闭房间等操作。
•发送的表情是否可以修改长宽(真实案例)。
•加密直播尝试删除页面锁定弹窗对应div标签。
2.外卖
•商品数量,0,负数,小数,特定值,正负数(A为-1,B为2,总值为1)。
•送餐员评价修改,星级,打赏金额(小数,负数)。
•订单商品评价,星级,评论字数,上传图片是否可以自定义格式。
•订单超出送餐地址。
•强行货到付款,取消订单,退款。
•越权操作别人订单,登录。
•优惠购买会员(重复使用优惠购买)。
3.社交论坛
•强行举报(读取本地消息上传那种)。
•强行加好友(一般尝试重发通过好友这条协议)。
•自由修改号码(靓号类)。
•群管理无限禁言越权禁言,踢人,拉黑。
•会员修改金额,数量,无限优惠购买。
•非会员使用会员功能。
4.购物
•购买数量:为0,小数,负数,正负值(A为-1,B为2,总值为1)。
•代金券:并发领取,遍历领取。
•同一个代金券重复使用。
•未满足条件使用代金券。
5.读书/漫画
•打赏金额为负数,小数,特定值(溢出)。
•越权删除评论,登录。
•修改充值金额。
•付费漫画免费看。
•评论图片数量过多会导致客户端加载卡死。
6.音乐
•唱歌类软件修改上传分数等参数。
•付费下载尝试替换下载ID。
•修改付费下载金额。
•F12查看下是否有歌曲地址。
7.网约车
•无限叫车,重复发送协议造成市场混乱。
•修改评价分数。
•修改限时优惠叫车关键参数。
•越权操作其他订单。
8.交易平台
•钱包并发提现,负数提现。
•使用钱包支付时多个订单并发支付(是否支付金额能大于余额)。
•转账负数,并发转账。
•上架商品突破限制,例如数量,字数。
•替换订单,创建订单号如果订单状态可修改,先进到支付界面,然后将订单修改成更大的金额,然后支付提前进入的支付界面。
•数量修改。
9.快递
•根据距离计算金额时选择近距离,在最终生成订单时进行收货地址修改。
•订单重量修改。
•无验证码限制无限发送上门取件订单。
•快递员评价分数刷分。
•订单遍历。
10.教育
•免费领取课程遍历id/替换收费课程id。
•试看课程抓包查看详情是否返回所有课程链接(会员视频课程同理,会员到期仍可观看或会员权限下可看到专享课程视频链接)。
•自助模拟考试多次重复答题刷分。
•顺序缺陷绕过支付获取课程链接。
•教师端篡改课时提前结取薪酬。