竞态条件测试与利用手册
将以下提示词粘贴到你的 AI 对话框中:
请根据 https://skillhub.cn/install/skillhub.md,安装 @user_3c6cb52e/race-condition-lr-kju9。
技能介绍
要解决什么问题
竞态条件常出现在非原子的“读取后写回”流程里:两个请求先后读到旧状态,又都基于旧状态提交,导致一次性奖励重复领取、余额校验绕过或账本出现重复行。这个技能把竞态条件定位为授权与状态完整性问题,而不是单纯并发性能问题。它适合排查一次性操作、优惠券、库存扣减、积分发放等场景。
技能如何工作
核心思路是并行触发请求,再寻找应用层证据:
- 用
HTTP/1.1 last-byte sync、HTTP/2 single-packet或 Turbo Intruder gates 控制多个请求同时到达; - 优先选择
one-time或 balance-like 操作作为测试点; - 对比响应中的重复成功、余额不一致、账本重复行等异常;
- 若涉及业务规则,可结合
business-logic-vulnerabilities一起判断漏洞链路。
适用边界
该资料强调仅做授权测试。不要在没有许可的情况下对生产服务发起并行攻击;若目标只是普通状态更新,需要先确认业务是否真正依赖旧状态读取。
使用场景
- 在授权渗透测试中,向优惠券领取接口发送并行请求,确认是否出现重复成功响应。
- 复核余额转账 API 时,用 HTTP/2 single-packet 触发并发写,检查不一致余额。
- 测试一次性奖励接口时,并行提交相同请求,比对账本是否产生重复行。
- 排查库存扣减业务逻辑时,将竞态条件测试与业务逻辑漏洞分析结合使用。
适合人员
- 负责优惠券、积分等一次性接口渗透测试的安全工程师,需要验证重复成功与状态异常。
- 维护账户余额、库存扣减等写路径的应用工程师,需要排查非原子读取后写回缺陷。
- 为 API 制定并发回归测试的应用质量工程师,需要覆盖一次性操作和账本一致性。
- 配置 AI Agent 授权测试流程的安全运营人员,需要限定并行请求证据与授权边界。