记一次简单的逻辑漏洞-支付漏洞

admin 2022年3月7日23:50:51评论213 views字数 1693阅读5分38秒阅读模式

记一次简单的逻辑漏洞-支付漏洞

△△△点击上方“蓝字”关注我们了解更多精彩




0x00 Preface [前言/简介]


支付逻辑漏洞是指系统的支付流程中存在业务逻辑层面的漏洞

常见支付流程:

记一次简单的逻辑漏洞-支付漏洞

用户用钱包加上优惠券/折扣券确认购买商品的单价、数量以及购买时间,提交给平台或商家确认无误后,确认支付信息,报告购买信息。其中有三个重要的因素:用户、商品、平台/商家。这三个因素在支付流程中都有可能造成支付漏洞。

支付逻辑漏洞一般分为四类:

1.支付过程中可以修改支付金额2.可以将订单中的商品数量修改为负值3.请求重放导致4.其他问题(程序异常,其他参数修改导致问题等)

其他支付问题补充:

修改支付状态、修改附属值(优惠券积分等)、修改支付接口、替换多个订单、重复支付等。



0x01 论参数校验的重要性
日常漏洞挖掘的时候发现了一个商城存在一个很简单的支付漏洞就想拿出来当作例子
直接步入正题:
1.修改订单接口参数值

记一次简单的逻辑漏洞-支付漏洞

再加入购物车的时候抓包,然后众多参数都明文的出现在了下面,工作习惯告诉我,这个时候可以试一试是否存在逻辑漏洞, 

记一次简单的逻辑漏洞-支付漏洞

仔细观察了一下参数,小学英语加上“三小时”的漏洞挖掘经验,让我怀着激动的心,颤抖的手改了一下num这个参数由正改为负,之前见过文章改为数量为负数之后买东西还会倒贴钱。

记一次简单的逻辑漏洞-支付漏洞

PS:实在不好意思被log挡住了,再补一张

记一次简单的逻辑漏洞-支付漏洞

发包之后成功添加了购物车

记一次简单的逻辑漏洞-支付漏洞

3.见证漏洞的诞生

这个时候我们的商品数量变成了负数金额变成了0,所以此处存在逻辑缺陷,但是这个开发好像只是对数字比较敏感,没有出现“理想中”的负数金额,而是归0.

记一次简单的逻辑漏洞-支付漏洞

后面就是点去结算,然后确定支付,支付成功,在订单列表也显示订单支付成功。因为考虑到网站在正常运行,之前测试有过一次提交订单(账号忘记了),这次就没有放上成功截图。

0x02 chapter2 0x06 chapterN 正文N



0x02 测试方法

1. 修改支付价格

在支付流程中,提交购买信息、确认支付、确认购买的流程中,如果相互之间没有做好验证机制,就有可能出现修改支付价格的漏洞。

在这三个步骤中,可以尝试抓包,修改支付价格。


2. 修改支付状态

这个问题是没有对支付状态的值跟实际订单支付状态进行校验,导致点击支付时抓包修改决定支付或未支付的参数为支付状态的值从而达到支付成功。


3. 修改购买数量(此文例子已经运用)

抓包,尝试修改购买数量,如果修改购买数量后,价格不变,亦或者修改购买数量为负数,如果价格为负数,同样会导致支付问题的产生。


4. 修改优惠券、积分

如果优惠券、折扣券、积分等可以换取相应的物品,那么也有可能出现支付漏洞,这个流程与一般支付流程类似,可以尝试挖掘。



5. 修改支付接口

比如一些网站支持很多种支付,比如自家的支付工具,第三方的支付工具,然后每个支付接口值不一样,如果逻辑设计不当,当我随便选择一个点击支付时进行抓包,然后修改其支付接口为一个不存在的接口,如果没做好不存在接口相关处理,那么此时就会支付成功。


6. 多重替换支付


7. 重复支付


8. 最小额支付


9. 值为最大值支付问题

以前也是看到过相关的例子,一些网站比如你购买商品,这里有2个思路修改值,1是直接修改支付金额值为最大值,比如999999999,或者修改附属值,如优惠卷,积分等为999999999,如果这里逻辑设计有问题,那么其支付金额会变为0。

参考:https://blog.csdn.net/weixin_44023442/article/details/113487816




0x03 Summary 总结
水水文挺开心,希望能对初学者提供帮助,宁可信其有不可信其无,挖洞就是玄学。希望初学的萌新们,在挖洞的道路上越走越远,不被暂时的“0”收获所击败,当然也一定要勿忘初心,因为我们是正义的白帽子!

本篇文章仅供学习使用,切勿触犯法律!



END



如您有任何投稿、问题、建议、需求、合作、后台留言NOVASEC公众号!

记一次简单的逻辑漏洞-支付漏洞

或添加NOVASEC-MOYU 以便于及时回复。

记一次简单的逻辑漏洞-支付漏洞


感谢大哥们的对NOVASEC的支持点赞和关注

加入我们与萌新一起成长吧!


本团队任何技术及文件仅用于学习分享,请勿用于任何违法活动,感谢大家的支持!!



本文始发于微信公众号(NOVASEC):记一次简单的逻辑漏洞-支付漏洞

免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2022年3月7日23:50:51
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   记一次简单的逻辑漏洞-支付漏洞https://cn-sec.com/archives/494300.html
                  免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉.

发表评论

匿名网友 填写信息