rss 推荐阅读 wap

焦点资讯网,中国新闻网!

热门关键词:  as  云南  xxx  自驾游  中考2018
首页 新闻聚焦 城市报道 理财投资 休闲娱乐 行业热点 购物消费 旅游资讯 科技创新 商业营销 体育健康

挖洞经验 通过购物车参数篡改实现低价免费购买商品

发布时间:2019-09-11 11:14:32 已有: 人阅读

  本文分享的Writeup是某流行电子商务购物网站的一个参数篡改漏洞(Parameter Tampering),作者利用该漏洞可以更改购物车中商品数量为负数,通过最终的正负支付金额平衡,实现以最低价格甚至是免费方式购物。以下是相关分享。

  近期,我收到了一份针对某流行电子商务购物网站的测试邀请,正好,我平时也经常在这个网站上购物,所以我欣然接受了这次邀请。由于网站方希望能发现一些影响业务方面的漏洞,所以我首先想到的就是测试参数篡改漏洞(Parameter Tampering)。

  参数篡改(Parameter Tampering):此类攻击是基于对客户端和服务器之间交换参数的操纵控制,它通过修改Web应用交互中存储在cookies、提交请求、隐藏表单字段或URL查询字符串中涉及的数据参数,如用户凭证、权限、产品价格、数量等,来实现控制和更改Web应用功能。参数篡改攻击的目的是为了获取利益,或利用中间人攻击来深入攻击其他人。

  在这里,参数篡改涉及的漏洞无疑就是价格操纵了,这是当今很多电子商务网站在线购物车和支付网关中存在的普遍漏洞。

  出于保密原因,我们把目标电子商务网站称为该网站存在的主要问题在于,它们只对用户购物车中的某件商品数量做了最大上限:10件,但却忘记对其商品数量下限做出限制,因此,任何人可以把购物车中的某件商品数量减少至负数,从而在购物车中添加负数的商品数量和支付金额。

  由于目标电子商务网站存在业务逻辑错误,因此我可以篡改购物车中的某些商品数量至负数,则当支付商品时,不同正负数量的商品件数产生的不同正负价值的支付金额相抵,导致我能以非常低的价格,或甚至是免费来购买某些商品。

  访问目标购物网站,任意打开一件商品,把它添加进购物车。比如,我在其中添加了一件单价为599 ₹ 的T恤衫,在该过程中,抓包分析,拦截其流量,然后把该件商品数量更改为-10。那该商品支付金额就是:

  现在,购物车中商品的支付金额还需要一些正数价格,所以,我又向其中添加了单价为399 ₹的8条牛仔裤,其金额为:

  但是,最后它却会报错,原来是由于消费税(GST)等原因,购物车中的最低支付金额为350 ₹,所以还需要在结账这关上进一步构造。

  接下来,我又向购物车中添加进了单价为599₹ 的T恤衫一件,所以支付金额594₹,加上消费税(GST)329₹,最终支付金额为:923 ₹。

  我进一步选择了收货地址,找到了付款方式,并通过信用卡付款,成功支付了该订单。最后,我发现买到的商品为7双鞋子、8条牛仔裤和1件T恤衫。也就是说,这些商品本来的价格应该是:7*399 ₹ +8*399₹ +599₹ =6584 ₹,而我却用923₹就买到了!当然,你也可以对商品数量进行一些价格构造,实现低价或免费购物。漏洞上报后,目标网站方非常重视,及时进行了修复并给予了我大笔奖励。

  2、把添加进购物车中的商品支付金额与提交到服务器后端的实际金额进行一个MD5哈希比较,如果两者存在不同,则可能存在参数篡改漏洞;

  3、去验证一些超出正常范围的字符或数据类型,如输入负数数量等,越出Web应用的最大最小限制去做测试,去考虑问题。

首页 | 新闻聚焦 | 城市报道 | 理财投资 | 休闲娱乐 | 行业热点 | 购物消费 | 旅游资讯 | 科技创新 | 商业营销 |免责声明

Copyright2008-2020 焦点资讯网 www.cyts999.com 版权所有 业务QQ:121390454 Power by DedeCms 粤ICP备13027220号-1

电脑版 | wap