记一次奇妙的降价支付逻辑漏洞挖掘之旅,网络安全零基础入门到精通实战教程!

字字经典,本文以上帝视角,带你洞察整个主流支付功能背后的逻辑,之后再轻挥衣袖,实现降价支付!

前言

记录一次支付逻辑漏洞挖掘,这个支付漏洞很细,能挖出来需要十分细心和耐心,一点点看数据包,不然真的非常容易漏下,实际上这个漏洞的出现就是由于在确定订单价格时,后端数据校验缺失导致的。

这是一个新能源汽车充电小程序,出现问题的功能时购买电池的功能点,一开始选择购电,可以选择购买30度,50度,80度。不同电量对应了不同的价钱,30度电248元,80度是380元,这个漏洞的效果,就是通过简单的替换,将购买80度电时的价格变成购买30度电的价格,实现降价。

这篇文章将以复盘的视角,一边讲解利用过程,一边分析前后端支付发起逻辑,希望和大家交流!

渗透开始

  1. 首先进入小程序购买页面,是这样的,可以选择三种不同的电量,预约购买

    img

  2. 之后,点击立即预约,抓包,会发现一开始接口会发送一个priceld

    img

这个接口返回的是订单的价格,看变量名好像还有一些付款方式什么的

img

  1. 紧接着,下一个请求,这里发送的也是priceld,请求如下:

    img

    观察返回包,返回的是价格,猜测这个接口就是返回的当前选定项目的价格:

    img

  2. 此时界面来到了准备确认订单的页面,如下图,价格显示的是248元:

    img

  3. 到这里就可以思考一下这个过程,首先就是选择三个充电项目,也就是三个不同的电量,选择不同的电量,点击预约,费用是不同的,在这个过程中,主要有两个请求:第一就是最开始的,会直接生成个priceld发送到后端,返回订单的金额和退款规则等等;第二就是再次发送priceld,会返回当前订单的费用总计。

  4. 那么这里我们就可以设想:如果我点击第三个,提交的时候第一个请求首先得到了他的priceld,但是在发送第二个请求的时候,我将高价(80度电)的priceld替换为低价(30度电)的priceld,那么是不是就能实现降价呢?

  5. 实践起来,首先点击第三个80度电,点击预约

    img

  6. 之后Burp拦截开启,开始抓包,首先第一个可以看到是生成了第三个项目的priceld

    img

    观察返回包,可以发现也是第三个项目的度数和费用,80度380元

    img

  7. 继续抓包,可以看到此时已经来到第二个请求,通过之前的抓包,我们把之前280的priceld,替换到这里来:

    img

    观察返回包,发现此时的数值确实变了,变成了248元

    img

  8. 此时放掉返回包,发现前端界面的数值也发生了一些变化,请求的服务是80度,服务费是340元,但是下面的费用总和却是248元??!!

    img

  9. 到这里非常欣喜,再稍作分析,结合上面创建预约单的两个请求,可以知道,上面两个请求大概分别控制的是这些部分的内容:

    img

  10. 到了这里,我们通过更改请求包的方式,实现了对价格的控制,按照经验来讲,已经离成功不远了,在以往的老系统,有很多的支付漏洞价格修改,信息修改等都是通过返回包来控制,这种漏洞在现在已经非常少见了,而且大多数修改返回包只是仅仅更改了前端的显示。很难达到修改实际支付数额的效果。

  11. 继续测试,我们点击确认订单,抓包,看到了这些参数,看起来应当就是预约单的内容,通过变量发现应该是当前预约单的一些信息,其中还是有priceld,我们再次修改,替换他成为248元的那个priceld:

    img

  12. 更改之后放包,这里生成了第三方支付的二维码。

    在这里插入图片描述

  13. 扫描后,发现确实金额变成了第一种充电度数的金额,248元,说明该系统直接向第三方支付开出了248元的订单,至此,证明支付漏洞成功利用,已经实现降价。

    img

复盘总结

读到这里,相信你一定有一种“茅塞顿开”的感觉,是的,这个漏洞十分简单,就是因为他这个支付金额的确认逻辑是通过一个金额id(priceld),通过简单的把A产品的金额id(priceld),替换成其他产品的金额id(priceld),实现”使用其他产品的钱,购买A产品“的效果。

背后的支付逻辑大概如下图

img

因此,我们就可以通过更改第二个请求的priceld,实现了修改最终订单的付款费用,达成了更改价格的效果。

实际上这个漏洞不是特别难,但是经过调研测试发现,目前这套支付的处理逻辑有很多种,各行业的生产系统都在使用,面对C端的产品出现这种漏洞非常严重,同样根据这样的逻辑我们也可以进一步引申思考,同样的逻辑可能不光出现在支付过程,也许还可能出现在其他类似的例如积分兑换等功能上。

网络安全学习资源分享:

给大家分享一份全套的网络安全学习资料,给那些想学习 网络安全的小伙伴们一点帮助!

对于从来没有接触过网络安全的同学,我们帮你准备了详细的学习成长路线图。可以说是最科学最系统的学习路线,大家跟着这个大的方向学习准没问题。

因篇幅有限,仅展示部分资料,朋友们如果有需要全套《网络安全入门+进阶学习资源包》,请看下方扫描即可前往获取

👉1.成长路线图&学习规划👈

要学习一门新的技术,作为新手一定要先学习成长路线图,方向不对,努力白费

对于从来没有接触过网络安全的同学,我们帮你准备了详细的学习成长路线图&学习规划。可以说是最科学最系统的学习路线,大家跟着这个大的方向学习准没问题。

在这里插入图片描述
在这里插入图片描述

👉2.网安入门到进阶视频教程👈

很多朋友都不喜欢晦涩的文字,我也为大家准备了视频教程,其中一共有21个章节,每个章节都是当前板块的精华浓缩。(全套教程扫描领取哈)
在这里插入图片描述
在这里插入图片描述

👉3.SRC&黑客文档👈

大家最喜欢也是最关心的SRC技术文籍&黑客技术也有收录

SRC技术文籍:
在这里插入图片描述
黑客资料由于是敏感资源,这里不能直接展示哦! (全套教程扫描领取哈)

👉4.护网行动资料👈

其中关于HW护网行动,也准备了对应的资料,这些内容可相当于比赛的金手指!
在这里插入图片描述

👉5.黑客必读书单👈

在这里插入图片描述

👉6.网络安全岗面试题合集👈

当你自学到这里,你就要开始思考找工作的事情了,而工作绕不开的就是真题和面试题。
在这里插入图片描述

所有资料共282G,朋友们如果有需要全套《网络安全入门+进阶学习资源包》,可以扫描下方二维码或链接免费领取~

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值