热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

“薅羊毛”漏洞分析|我是如何到处“混吃混喝”的

https:www.freebuf.comvuls149251.html*本文中涉及到的相关漏洞已报送厂商并得到修复,本文仅限技术研究与讨论,严禁用于非法用途,否则产生的一切后果自

https://www.freebuf.com/vuls/149251.html

*本文中涉及到的相关漏洞已报送厂商并得到修复,本文仅限技术研究与讨论,严禁用于非法用途,否则产生的一切后果自行承担。

*本文原创作者:小石,本文属FreeBuf原创奖励计划,未经许可禁止转载

不多哔哔 先看图 无图无真相 (๑•̀ㅂ•́)و✧。

好孩子不要学 | 我是如何到处混吃混喝的

1.jpg

好孩子不要学 | 我是如何到处混吃混喝的

下面就跟大家分享交流一下经验,漏洞均已上报给相应的厂商,无法透露详细细节,见谅。


一、某餐饮店的储蓄卡 卡里有800元可到任意分店进行消费

该储蓄卡分4种面值 60、200(180元购)、400(350元购)、800(650元购)。

因为没有购物车功能直接进行购买,负数漏洞是无法利用的了。

那么就分析一下购买的数据包,看看是否进行了价格、优惠等价格的传递。

saleAmt储蓄卡的单价 totalQty购买数量 totalAmt总价。

好孩子不要学 | 我是如何到处混吃混喝的

尝试修改了单价以及总价无果 对价格做了检测。

最后发现修改cardType的值 其余参数不动 貌似能以低价购买高价的卡。

选择购买60元的卡 –> 提交订单 –> 拦截数据包修改cardType的值为800的 –> 付款60 –> 拿到800元的卡。


此漏洞产生的原因

该程序员还是有安全意识的,对传递的价格参数做了检测。

但经过fuzz以及漏洞利用成功之后发现他仅仅将传递的价格与数据库中的价格进行比对,如果存在则放行,不存在则阻止。

以60元的举例:传递saleAmt:60 –> 查询数据库中价格列是否含有60?通过并提示付款:阻止。


二、某个厂商的活动 参与即可领取XXX电子券

开始我还以为只是个活动噱头,没那么容易拿到电子券的。

但我控制不住自己的好奇心啊,打开了burpsuite设置好了代理。

进入活动进行参与,没想到真的直接跳转到了领取电子券的页面,良心啊!

我将成功领取电子券的包抓了下来,放到Repeater进行分析,一个get包,大致如下:


GET /?a=0001&b=f
Host: 127.0.0.1
XXX: XXXX
...

我将包原封不动的重放,响应200但是没有回显,成功领取的那个数据包回显了电子券的过期日期的。

a参数一看就知道代表是电子券的类型 b参数看不出是什么,别的地方也没啥好改的,就随便改个值看看吧。

没想到一改这b参数的值就回显了电子券的过期日期,我都惊呆了w(゚Д゚)w。

打开我的奖励,确认多了一张电子卷,也查看了卷码,跟刚领的不同。

只要b参数的值之前没有提交过,就可以成功领取一张,光数字组合起来的就拿到手软好嘛..


此漏洞产生的原因

不详..我也不知道为啥会这样,还请大佬多指教。


三、想必大家非常熟悉了,基本随处可见的烤鱼店

经过一天刻苦的学(shen)习(you)后,大佬们带我去了烤鱼,到了店里我就跟大佬们说。

“有没有可能找到漏洞免费吃啊?” 大佬无情回复”怎么可能,哪会有漏洞。”

当时手上也没电脑,美滋滋的吃完就溜了。

过了两天闲来无事,就去看了看他的自助点餐系统,发现存在负数漏洞 开始还很激动。

但是需要到店跟店员确认的,所以并没什么用,但紧接着又发现他的一个商城,有卖一些菜品的卡卷。

进入商城页面一个购物车的图标就吸引了我,直接尝试负数漏洞,构造出最低价,付款,最后我仅用4元就买到了一张烤鱼的卷!


此漏洞产生的原因

没有对商品的数量进行校验是否正常导致结算出问题,例如A商品单价10元,B商品单价9元。

系统进行结算的公式: 单价数量 + 单价数量 = 总价

假如我添加了1个A、-1个B到购物车,

总价 = 110 + (-1)9 = 10 – 9 = 1 元。

感谢观看,小小杂技,献丑了,各位大佬请多多指教(。_。)

*本文原创作者:小石,本文属FreeBuf原创奖励计划,未经许可禁止转载




推荐阅读
  • 这是原文链接:sendingformdata许多情况下,我们使用表单发送数据到服务器。服务器处理数据并返回响应给用户。这看起来很简单,但是 ... [详细]
  • 本文介绍了OC学习笔记中的@property和@synthesize,包括属性的定义和合成的使用方法。通过示例代码详细讲解了@property和@synthesize的作用和用法。 ... [详细]
  • MySQL中的MVVC多版本并发控制机制的应用及实现
    本文介绍了MySQL中MVCC的应用及实现机制。MVCC是一种提高并发性能的技术,通过对事务内读取的内存进行处理,避免写操作堵塞读操作的并发问题。与其他数据库系统的MVCC实现机制不尽相同,MySQL的MVCC是在undolog中实现的。通过undolog可以找回数据的历史版本,提供给用户读取或在回滚时覆盖数据页上的数据。MySQL的大多数事务型存储引擎都实现了MVCC,但各自的实现机制有所不同。 ... [详细]
  • 本文介绍了Java集合库的使用方法,包括如何方便地重复使用集合以及下溯造型的应用。通过使用集合库,可以方便地取用各种集合,并将其插入到自己的程序中。为了使集合能够重复使用,Java提供了一种通用类型,即Object类型。通过添加指向集合的对象句柄,可以实现对集合的重复使用。然而,由于集合只能容纳Object类型,当向集合中添加对象句柄时,会丢失其身份或标识信息。为了恢复其本来面貌,可以使用下溯造型。本文还介绍了Java 1.2集合库的特点和优势。 ... [详细]
  • 本文介绍了数据库的存储结构及其重要性,强调了关系数据库范例中将逻辑存储与物理存储分开的必要性。通过逻辑结构和物理结构的分离,可以实现对物理存储的重新组织和数据库的迁移,而应用程序不会察觉到任何更改。文章还展示了Oracle数据库的逻辑结构和物理结构,并介绍了表空间的概念和作用。 ... [详细]
  • 本文是一位90后程序员分享的职业发展经验,从年薪3w到30w的薪资增长过程。文章回顾了自己的青春时光,包括与朋友一起玩DOTA的回忆,并附上了一段纪念DOTA青春的视频链接。作者还提到了一些与程序员相关的名词和团队,如Pis、蛛丝马迹、B神、LGD、EHOME等。通过分享自己的经验,作者希望能够给其他程序员提供一些职业发展的思路和启示。 ... [详细]
  • 目录实现效果:实现环境实现方法一:基本思路主要代码JavaScript代码总结方法二主要代码总结方法三基本思路主要代码JavaScriptHTML总结实 ... [详细]
  • 禁止程序接收鼠标事件的工具_VNC Viewer for Mac(远程桌面工具)免费版
    VNCViewerforMac是一款运行在Mac平台上的远程桌面工具,vncviewermac版可以帮助您使用Mac的键盘和鼠标来控制远程计算机,操作简 ... [详细]
  • 如何用UE4制作2D游戏文档——计算篇
    篇首语:本文由编程笔记#小编为大家整理,主要介绍了如何用UE4制作2D游戏文档——计算篇相关的知识,希望对你有一定的参考价值。 ... [详细]
  • Java String与StringBuffer的区别及其应用场景
    本文主要介绍了Java中String和StringBuffer的区别,String是不可变的,而StringBuffer是可变的。StringBuffer在进行字符串处理时不生成新的对象,内存使用上要优于String类。因此,在需要频繁对字符串进行修改的情况下,使用StringBuffer更加适合。同时,文章还介绍了String和StringBuffer的应用场景。 ... [详细]
  • 本文介绍了2019年上半年内蒙古计算机软考考试的报名通知和考试时间。考试报名时间为3月1日至3月23日,考试时间为2019年5月25日。考试分为高级、中级和初级三个级别,涵盖了多个专业资格。报名采取网上报名和网上缴费的方式进行,报考人员可登录内蒙古人事考试信息网进行报名。详细内容请点击查看。 ... [详细]
  • 本文介绍了南邮ctf-web的writeup,包括签到题和md5 collision。在CTF比赛和渗透测试中,可以通过查看源代码、代码注释、页面隐藏元素、超链接和HTTP响应头部来寻找flag或提示信息。利用PHP弱类型,可以发现md5('QNKCDZO')='0e830400451993494058024219903391'和md5('240610708')='0e462097431906509019562988736854'。 ... [详细]
  • 闭包一直是Java社区中争论不断的话题,很多语言都支持闭包这个语言特性,闭包定义了一个依赖于外部环境的自由变量的函数,这个函数能够访问外部环境的变量。本文以JavaScript的一个闭包为例,介绍了闭包的定义和特性。 ... [详细]
  • 数字账号安全与数据资产问题的研究及解决方案
    本文研究了数字账号安全与数据资产问题,并提出了解决方案。近期,大量QQ账号被盗事件引起了广泛关注。欺诈者对数字账号的价值认识超过了账号主人,因此他们不断攻击和盗用账号。然而,平台和账号主人对账号安全问题的态度不正确,只有用户自身意识到问题的严重性并采取行动,才能推动平台优先解决这些问题。本文旨在提醒用户关注账号安全,并呼吁平台承担起更多的责任。令牌云团队对此进行了长期深入的研究,并提出了相应的解决方案。 ... [详细]
  • Java和JavaScript是什么关系?java跟javaScript都是编程语言,只是java跟javaScript没有什么太大关系,一个是脚本语言(前端语言),一个是面向对象 ... [详细]
author-avatar
chroalist
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有