实战经验丨业务逻辑漏洞探索之活动类漏洞

ichunqiu ichunqiu     2023-03-09     367

关键词:

活动类的漏洞大家一定听说过,比如之前拼多多APP出现重大BUG,用户可以在任何没有限制的情况下无限领取100元无门槛优惠券。据不完全统计,一晚上的时间直接导致了拼多多200多亿的优惠券面额损失。

技术图片

 

其实很多平台都会通过参与活动赢取奖励的方式来吸引用户,或是使用资金、虚拟货币、积分等进行交易,然而如果这些功能没有设计好,会很容易造成重大的经济损失,比如像上述的拼多多案例。

那么今天我们就来学习一下业务逻辑漏洞探索之活动类漏洞的相关内容,希望对大家有所帮助。

注:本文中提供的例子均来自网络已公开测试的例子,仅供参考。

我们测试的时候可以分为以下几种测试场景进行测试:

技术图片

 

一、重放攻击

重放攻击是指攻击者发送一个目的主机已接收过的包,来达到欺骗系统的目的。在交易活动类功能里,除了进行简单的重放攻击进行获利外,对于大量的请求同时发起时,如果没有进行很好的处理,那就可能存在条件竞争漏洞。

1、无限获利

举个例子:

a) 某地方运营商举办让红包飞活动,中奖后可使用活动码兑换奖品。

 

技术图片

 

b) 还未兑换前的流量。

技术图片

 

 

技术图片

 

c) 输入使用码可兑换50M流量。

技术图片

 

d) 可成功兑换流量。

技术图片

 

e) 抓取兑换流量的数据包进行重放可无限次兑换流量。

技术图片

 

2、条件竞争

举个例子:

a) 某App 推出了新人领红包活动,新号可以免费领一次红包,使用抓包工具进行抓取领红包的数据包。

b) 然后同时并发多个数据包。

技术图片

 

c) 由于没有做好大量并发请求的处理,可同时领到多个红包。

技术图片

 

二、数据篡改

在交易活动类功能中,经常会涉及买卖、转账或者是兑换涉及资金、虚拟币、积分等,需要注意防范通过参数篡改进行非法获利。常见的两种篡改方式分别为金额篡改和数量篡改。在测试过程要注意交易、兑换过程中的商品单价、商品总价是否可以突破极限改为0、1、负数,尝试对金额进行篡改;在兑换过程中也要注意对数量参数的测试,尝试是否可免费或较低金额兑换大量积分、虚拟币等。

1、金额篡改

举个例子:

a) 某旅游网站的机票购买功能存在任意金额购买漏洞。

技术图片

 

b) 搜索国际航班。

技术图片

 

c) 选择一班机票进行购买,此时可看见金额至少为1778。

技术图片

 

d) 提交购买订单。

技术图片

 

e) 使用抓包工具进行抓包,可发现数据包中的totalPrice是机票价格。

技术图片

 

f) 将机票价格修改为0.01,发现可以用0.01的价格购买任意机票。

技术图片

 

2、数量篡改

  • 将数量改大

a) 某APP可进行签到抽奖获得阅币(50阅币相当于1块钱)

b) 首先得到自己手机签到和抽奖时候的链接,下次可以直接用浏览器访问链接签到、抽奖。抽奖时候的链接类似这样的(XXX是替代字符):

http://xxx.xxx/zybook/u/p/user.p ... 27XXXX74&p2=108

c) 抽奖过程是由js控制的,结果已经设定好了是6,就是会抽到6个阅币,是由count这个变量定义的。只要用浏览器打开,修改这个变量即可。

 

技术图片

 

d) 这个变量应该是在上一步的时候生成的链接定义的,从链接中的变量传递过来,所以可以直接访问链接:

http://xxx.xxxx/zybook/u/p/user. ... 5&p1=1307271227

e) 注意,里面的price=5100表示这一次将抽到5100阅币,设置多少得多少,目前测试7位数可行。

技术图片

 

 

技术图片

 

将数量改为负数

举个例子:

a) 使用某购物网站进行购物,选取商品后进行抓包。

 

技术图片

 

b) 修改数量为-1。

技术图片

 

c) 网站里出现未支付订单,发现金额显示-299。

技术图片

 

d) 直接点击付款,发现可以付款成功。

技术图片

 

e) 可发现余额增多。

技术图片

 

三、流程绕过

客户端测试活动业务是否存在漏洞,能否在未满足活动参与条件的情况下参与活动或获得收益常见的客户端验证方法。常见的活动限制绕过有两种,一种是次数限制绕过,一种是时间限制绕过。

1、次数限制绕过

举个例子:

a) 登入活动页面输入兑换码就可以兑换省内100M流量,当第二次输入同一个兑换码的时候会显示已兑换。

技术图片

 

b) 查看历史找到了兑换的网页,可以跳过限制直接再次兑换。

地址:http://xxx.xxx/xxxx/web/info2.jsp?coupon=2&PrizeID=兑换码

技术图片

 

c) 又发现兑换码只是个摆设,可以直接输入利用上面地址。输入11位数或英文大写字母就又可以兑换。

技术图片

 

d) 后来继续查看那个地址发现info2.jsp是二等奖的页面,改成info1.jsp,就是一等奖的领奖页面。

技术图片

 

2、时间限制绕过

a) 某站举办活动,有个摇奖机,摇一次之后需要在下一个小时才能摇奖。

技术图片

 

b) 发现抽奖的验证放在前端,只是通过禁用抽奖按钮控制抽奖。将抽奖的方法搬到“查看中奖名单”的onclick下,每次点击“查看中奖名单”就可以触发摇奖机摇奖。

技术图片

 

四、修复建议

以上就是对活动类漏洞的归类,如果你也有别的归纳也可以一起探讨探讨,以下就是对于交易活动类漏洞修复的一点建议:

1、交易类业务应充分考虑业务风险,应充分考虑流程和数据的防泄密、防篡改、防重放等安全问题。

2、交易类业务的关键参数,如单价、金额等关键参数必须在服务端生成或进行二次校验,不得直接使用用户可控数据。

3、活动类功能所有验证及限制都应在服务端,不应该相信客户端提交的信息。

以上是今天的全部内容,小伙伴们学会了吗?

 

直播预告丨开源sdn互通实战演示与经验分享

第四场TFLive带来多平台互通及服务链的演示。7月9日本周四19点,TF中文社区线上直播活动,将由华胜天成网络架构师王峻,和您一起聊聊TungstenFabric在企业统一管理平台中的作用和表现。本期活动,由TF中文社区与SDNLAB合作举办... 查看详情

业务逻辑漏洞挖掘随笔身份认证篇

...新鲜的。最近要让学弟们去帮忙挖漏洞,结合自己的测试经验顺便给他们归纳了下业务逻辑挖掘,于是有了本文....  纯科普,大牛请无视 暴力破解:实习的时候帮客户检查系统,当实在没找到漏洞的时候最爱挑这个... 查看详情

一次src实战逻辑漏洞

...炸密码重置绕过验证订单价格修改接口枚举登录凭证绕过实战打开页面发现有用户注册和登录功能我们先注册一个账号,在邮箱验证处用burp抓包重放看看可否绕过验证码发现返回的数据中有6位数字,疑似验证码我们使用这6位数... 查看详情

逻辑漏洞基于burpsuite的越权测试实战教程

一、什么是越权漏洞?它是如何产生的?越权漏洞是Web应用程序中一种常见的安全漏洞。它的威胁在于一个账户即可控制全站用户数据。当然这些数据仅限于存在漏洞功能对应的数据。越权漏洞的成因主要是因为开发人员在对数... 查看详情

业务逻辑漏洞常规漏洞集合

文末有网盘链接!互联网行业:P2P金融行业:电商行业:政务行业:常规漏洞: EXCEL网盘链接:https://ww.lanzous.com/ic8ddvc更多分享:https://www.cnblogs.com/Yang34/p/12375242.html  查看详情

业务安全-02业务逻辑漏洞之越权操作

越权越权即越权查看被人的信息,又分为水平越权和垂直越权,但是两者的本质都是一样的,只是越权的身份权限不一样而已水平越权:相同级别的用户,如用户A访问用户B垂直越权:普通用户到管理员... 查看详情

看懂逻辑漏洞

...期的学习无疑是最迷茫和难以坚持的,中后期主要是经验和能力的提高,我也刚接触计算机1年,也在不断的探索,在CSDN写博客主要是为了分享自己的学习历程,学习方法,总结的经验等等,希望能帮... 查看详情

不可思议但又无处不在的漏洞,web安全基础入门—业务逻辑漏洞(代码片段)

...全高级-综合利用》知识点全面细致,逻辑清晰、结合实战,并配有大量练习靶场,让你读一篇、练一篇,掌握一篇,在学习路上事半功倍,少走弯路!欢迎关注订阅专栏!专栏文章追求对知识点的... 查看详情

业务安全-03业务逻辑漏洞之暴力破解(burteforce)

暴力破解概述暴力破解是一种针对于密码或身份认证的破译方法,即穷举尝试各种可能,找到突破身份认证的一种攻击方法。暴力破解是一把双刃剑,一方面能够被恶意者使用,另一方面在计算机安全性方面却非... 查看详情

实战之授权站点漏洞挖掘-邮箱轰炸

1.思路:邮箱轰炸和短信轰炸思路是一样的,没有做相应的限制.2.利用:3.防御:建议对此处的短信发送进行时间限制。 查看详情

逻辑漏洞挖掘入门之简单的任意账户密码重置

   这类逻辑漏洞就没有停的时候 在WAF越来越普及的时代,SQL注入,远程命令执行这类高危可操作漏洞将越来少,而逻辑漏洞则是目前WAF(很久之后的WAF或许也不能防御)的盲区。所以作为一名合格的黑客,学好逻辑... 查看详情

业务逻辑漏洞

一、容易忽略的低危漏洞以及延伸利用在挖洞的过程当中,比如我们碰到信息泄露漏洞,但是我们不知道这个是信息泄露;或者说我们碰到一个xss,我们不会利用,只能弹个窗,比如反射型的xss,像这... 查看详情

墨者学院靶场复现(业务逻辑漏洞)(代码片段)

业务逻辑漏洞基础知识补充:User-AgentUserAgent中文名为用户代理,简称UA,它是一个特殊字符串头,使得服务器能够识别客户使用的操作系统及版本、CPU类型、浏览器及版本、浏览器渲染引擎、浏览器语言、浏览器插件等。例:微... 查看详情

python代码审计实战案例总结之反序列化和命令执行!(代码片段)

...巧进行总结,以便于朋友们的学习和参考。反序列化审计实战反序列化漏洞在Python代码审计中属于常见高危漏洞之一,它的危害性根据执行环境略有不同,本地和远程分别为7.2和10的评分。通过评分也可得知漏洞危害是显而易见... 查看详情

第12阶段src安全应急响应中心漏洞挖掘视频教程第七期课程18.逻辑漏洞与src挖掘经验

         2020-05-27 查看详情

web业务安全逻辑(代码片段)

一、认识业务逻辑漏洞业务逻辑漏洞是指由于程序逻辑不严谨或逻辑太复杂,导致一些逻辑分支不能正常处理或处理错误,如攻击者根据在线购物支付漏洞可以任意修改支付金额,薅羊毛等操作。二、价格&数量&... 查看详情

业务安全漏洞总结

...、图形验证码漏洞失效的图形验证码八、未授权访问前言业务安全漏洞作为常见的Web安全漏洞,在平时的渗透测试过程中是非常常见的,在诸次面临waf让你屡屡碰壁的情况下,不妨多看看逻辑漏洞。下面是结合我自己... 查看详情

攻防视角下,初创企业安全实战经验分享

...发总监胡金涌,以「攻防视角下,初创企业安全实战经验分享」为题进行分享。胡金涌拥有十年云安全产品研发经验 查看详情