3. 逻辑漏洞之支付漏洞
支付漏洞 乌云案例之顺丰宝业务逻辑漏洞 案例说明 顺丰宝存在支付逻辑漏洞,可以允许用户1元变1亿元。这个漏洞在其他网站很难存在,原因是页面交互都使用了对字段做签名。但是顺丰宝没做签名,导致支付金额可以被修改为任意数值。猜测成因是开发人员为了快速实现功能,而忽略了其中数据签名的步骤。可以想象,如果我充值1个亿,然后再使用取款功能,会产生神马效果。 利用过程 1 登录顺风宝查看余额 2 充值,选择招商银行。填写充值金额1,如下图: 提交之后如下: 3 开启firefox的tamper,点击支付,截取数据包,修改参数Amount为一分 4 提交跳转到招行支付 5 支付成功后,招行扣去一分 6 查询余额 乌云案例之乐视商城逻辑支付漏洞 案例说明 订单的价格在支付链接中出现,导致用户可以修改任意金额购买产品 利用过程 1 下单后选择支付,如图: 2 注意下面的连接,orderPrice参数为商品总额 3 将价格改成0.1 乌云案例之读览天下支付逻辑漏洞 案例说明 通过替换支付订单号的方式,来完成花小钱买大东西。同时生成两个订单号,一个贵的一个便宜,首先支付便宜的,银行往回返回的时候,替换订单号,然后就可以完成两个订单的同时支付。 漏洞成因 服务端只检查支付是否完成,并没有确认订单金额与银行支付金额是否相同,过分信任客户端提交的数据 修复方案 检查支付完成后价格和买的产品的价格是一样的。