• 逻辑漏洞——业务逻辑问题


    一、业务逻辑的相关概念

     

     

    常见的业务逻辑问题:支付逻辑、其他业务逻辑

    二、支付逻辑漏洞

     

     三、其他业务逻辑漏洞

     

     

     四、实例——支付逻辑之修改商品单价

    1、打开浏览器,访问http://ip/webug/pentest/test/2/

    2、用户名输入为:“tom”,密码输入为“123456”提交,登陆成功

    3、启动Burp Suite抓包工具,并配置参数和浏览器代理

    4、在对应的商品下选择购买的数量

    5、点击“购买”按钮,提交数据,Bp成功抓取数据包,将数据包中的价格bill1和bill2修改为0

     

    6、点击“Forward”,转发数据包,切换到浏览器,实现0元购买

    支付流程中存在的业务逻辑层面的漏洞。在系统的支付流程中由于服务器端没有对客户端请求数据中单价做校验,造成“0元购”,导致产生支付逻辑漏洞。


    五、支付逻辑之修改商品数量

    原理:

    在系统的支付流程中由于服务器端没有对客户端请求数据中金额、单价、数量等敏感信息做校验,造成商家的经济损失,导致产生支付逻辑漏洞。

    1、打开浏览器,访问http://ip/webug/pentest/test/2/

     

    2、用户名输入为:“tom”,密码输入为“123456”提交,登陆成功

     

    3、启动Burp Suite抓包工具,并设置参数和浏览器代理

     

    4、在对应的商品下选择购买的数量

     

     

    5、点击“购买”按钮,提交数据,Bp成功抓取数据包,将数据包中的数量num1修改为负


    6、点击“Forward”,转发数据包,切换到浏览器,实现0元购买

     


    六、 支付漏洞之修改商品编号

    原理:

    支付漏洞一直以来就是高风险漏洞,对用户和企业的危害都很大。网上购物的整体流程为:搜索、挑选商品 -> 下单购买 -> 付款 -> 发货。在系统的支付流程中,由于开发者在编写购物程序时,对客户端请求数据中金额、单价、数量、商品编号等敏感信息的逻辑处理不当,攻击者利用目标网站本身的逻辑问题,造成商家的经济损失,导致产生支付逻辑漏洞。

    1、打开浏览器,访问http://ip/index.php

    2、点击“登录”,跳转到登录界面。在购物之前先登录购物账号,用户名为“test”,密码为“123456”,登陆即可(也可以自己注册账号)

     

    3、在分类侧点击“手机”,跳转到手机一类的商品,任意选择一款手机点击,查看该商品的id,比如苹果手机,商品id是54

     

    4、回到首页,点击下方的苹果商品,可以看到该商品的id是42

    5、启动Burp Suite抓包工具,配置参数和浏览器代理

    6、点击“立即购买”,开始抓包,将数据包中该商品的“id”修改为手机的商品id【54】

    7、点击“Forward”,转发数据包。切换到浏览器,关闭代理。可以看到订单信息中,商品名称是手机,单价是苹果水果的单价。注意:在挖掘支付逻辑漏洞的时候一般支付方式为在线支付

    8、点击“提交订单”,可以看到支付的金额已经是水果苹果的价格

     

    9、点击左侧的“订单管理”,成功可以看到该订单

    支付流程中存在的业务逻辑层面的漏洞。在系统的支付流程中由于服务器端没有对客户端请求数据中商品编号做校验,造成低价购买高价产品,导致产生支付逻辑漏洞。


    这篇文章就写到这里了!

  • 相关阅读:
    阿里云服务器开放的一个新端口,重启防火墙,端口未启动
    自学前端——HTML篇
    spring boot + vue 前后端下载文件文件
    elform-item动态prop
    Vue----数据源中数组的操作
    Mock安装及应用
    [CMakeLists]cmake设置堆栈保留大小
    自然语言处理 Paddle NLP - 开放域对话系统-理论
    第6章_瑞萨MCU零基础入门系列教程之串行通信接口(SCI)
    快速排序算法
  • 原文地址:https://blog.csdn.net/weixin_54055099/article/details/127042164