前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >记一次逻辑漏洞实战-超低价购买商品

记一次逻辑漏洞实战-超低价购买商品

作者头像
字节脉搏实验室
发布2020-06-23 15:49:21
7110
发布2020-06-23 15:49:21
举报

业务逻辑漏洞:

由于程序逻辑不严谨或逻辑太过复杂,导致一些逻辑分支不能正常处理或处理错误,统称为 业务逻辑漏洞。

关注重点:

业务流程

HTTP/HTTPS 请求分析

本片文章针对这几天发现的一个网站的漏洞,进行流程分析和漏洞复现,截止发稿之时,漏洞已提交客服反馈,且获得平台奖励,但尚未修复,请勿非法利用。

一、业务分析

首先需要注册登陆:

查看一下付费套餐:

二、业务分析

根据我经验,这个三天试用设置的有点不合理,一个月338,三天只要一块钱,那自然就能想到三十天只要10块钱了,然后先操作一波。

购买分为两步,一是生成订单,然后二是支付。

购买三天试用,下单支付一气呵成,然后再次下单支付,循环十次不就是一个月么,所以继续下单。

哦豁,有限制了,咋办?正常后台开发应该都有这个限制,但是想想是不是有其他办法绕过呢?

三、尝试绕过

捋一下,就知道,下单之后就会判断是否享受过三天试用,那么我先不支付会怎样?

我可以试着先生成多个订单。

尝试之后发现,可以一直生成三天试用得订单。

三、漏洞利用

这步当然是尝试付款,然后看套餐时间是否累加,打开订单详情,逐一进行付款操作,之后能看到套餐时间进行了叠加。

四、漏洞反馈及修复

第一时间跟平台小姐姐反馈了这个问题,然后小姐姐帮忙申请了一年标准套餐得奖励,最后我还是选择了一个月企业套餐得奖励。

之后针对这个问题,给了小姐姐两套修复方案。

1. 生成试用订单的时候,后台查询一下,该用户是不是已经有试用订单,但是还没支付,有的话,直接跳转到未支付的订单页面,而不是生成新得待支付订单。

2. 可以无限生成试用支付订单,但是支付之后时间不进行累加,做一波反向薅羊毛操作。手动狗头。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2020-06-16,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 字节脉搏实验室 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档