news 2026/10/20 8:34:13

Business logic vulnerabilities:Flawed enforcement of business rules

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Business logic vulnerabilities:Flawed enforcement of business rules

声明:本文为博主原创文章,文章中所涉及的技术、思路和工具仅供学习交流使用,使用者必须遵守《网络安全法》等相关法律,严禁将本文知识用于任何未授权的非法活动,否则后果自行承担,与作者无关。未经作者授权,禁止任何形式的转载。

一、漏洞原理

这道题依然是要我们通过低价(不超过账号余额的100美元)购买一件1337美元的衣服,而且还给了我们一张优惠券NEWCUST5。一开始我在想:不会又是通过并发使用优惠券的接口吧,试了一下才知道,这张优惠券只能抵消5美元,所以要想通过这种方法购买成功,得并发成功几百次才行,这不现实,所以只能另想办法。

继续研究发现:在网站的底部,出现了一个“注册时事通讯”的输入框,只要输入一个邮箱地址完成注册,系统会赠送一张大额优惠券SIGNUP30。在下单页面,正常情况下,两张优惠券只能各使用一次,但是如果我们交替使用,它们却可以被使用多次,最终让我们可以低价购买指定的商品。

二、漏洞证明

1、打开购物网站首页,可以看到第一张优惠券NEWCUST5,如下图:

2、拉到购物网站底部,注册时事通讯,只需任意填入一个邮箱地址即可,如下图:

3、成功注册时事通讯后,浏览器弹框提示:我们又获得了另外一张优惠券SIGNUP30,如下图:

4、把题目指定的商品Lightweight "l33t" Leather Jacket添加到购物车,并进行支付。支付过程中我们交替使用两张优惠券,如下图:

5、最终成功下单,完成实验,如下图:


在拿到SIGNUP30这张优惠券后,我了解到它能抵扣400美元,所以我在想:能不能并发使用这张优惠券呢?只要能并发成功4次,也可以购买到指定商品了。于是,我尝试了下面两个步骤:

1、把优惠券兑换的接口发送至Turbo Intruder,然后修改优惠券名称,指定攻击的python脚本,如下图:

2、完成攻击后,查看攻击结果,如下图:

最终只有第一个请求正常使用了优惠券,其他请求都会提示优惠券已被使用,所以这个方法只能以失败告终。

三、漏洞思考

1、这道题在校验优惠券是否使用的时候,可能是检查上一张使用的优惠券和当前的优惠券是否相同,如果不同,那么可以使用当前的优惠券;如果相同,那么不可以使用当前的优惠券。但是,攻击者仅需要交替使用两张优惠券,漏洞就产生了。所以这也提示了我们:在检查优惠券是否已使用时,应该检查当前的优惠券是否已被使用,而不是检查当前优惠券和上一张使用的优惠券是否相同。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/10/20 8:33:21

Qwen3-TTS:3秒音色克隆,97毫秒首包延迟的实时配音方案

你有没有过这种经历:在剪辑软件里改一句配音词,音色选对了、语气对了、词也改好了,结果合成人声要等两三秒,卡在“等TTS响应”这件事上把灵感都等没了。我做有声内容那段时间,几乎天天跟这种等待较劲。直到把Qwen3-TTS…

作者头像 李华
网站建设 2026/10/20 8:33:02

桌面端AI办公智能体:本地化、低延迟、高合规的下一代办公范式

1. 这不是又一个“AI助手”,而是一场办公场景的静默革命“桌面端AI办公智能体”这八个字,最近在技术圈和效率工具社群里反复刷屏。它不像“Copilot”“通义灵码”那样带着明确品牌烙印,也不像“RAG”“Agent”这类术语只在论文里打转——它是…

作者头像 李华
网站建设 2026/10/20 8:32:57

鱼叉式钓鱼攻防拆解:从情报收集到绕过多因素认证的完整实践

提到鱼叉式钓鱼(Spear Phishing),很多人的第一反应是那封伪装成老板要求转账的邮件。可真正接触过攻防演练,也处理过几轮应急响应之后,我的体会完全不一样:定向钓鱼最厉害的地方,不是话术多巧妙…

作者头像 李华
网站建设 2026/10/20 8:32:57

Kaggle注册卡在验证码?从原理到排查的完整解决方案

Kaggle注册卡在验证码这一步,很多人第一反应是“我输错了”,但实际上一连试了七八次、换了几种验证方式还是过不去,这时候要意识到问题大概率不在你的输入,而在于验证码组件本身没有被完整加载出来。这篇文章就把我这些年处理Kagg…

作者头像 李华
网站建设 2026/10/20 8:32:57

Java异常处理:体系结构、捕获抛出与实战排坑全解析

对于很多刚接触Java的同学来说,异常处理大概是基础语法里最容易被“跳过”却又最影响实战体验的一环。写练习demo的时候,满屏红字似乎也能跑;可一旦进了真实项目,冷不丁一个NullPointerException或者ClassCastException冒出来&…

作者头像 李华
网站建设 2026/10/20 8:31:40

技术只是入场券:工程师真正的硬功夫在代码之外

很多人问我,做技术十几年,最大的感悟是什么。以前我会讲一堆架构演进、性能优化、疑难杂症排查,但最近几年我的答案慢慢变了——做技术越久,越发现技术本身没那么重要。这句话听起来像劝退,其实不是。它背后是我对&quo…

作者头像 李华