文章来源于网络收集而来,版权归原创者所有,如有侵权请及时联系!
10.4 请求重放测试
10.4.1 测试原理和方法
请求重放漏洞是电商平台业务逻辑漏洞中一种常见的由设计缺陷所引发的漏洞,通常
情况下所引发的安全问题表现在商品首次购买成功后,参照订购商品的正常流程请求,进
行完全模拟正常订购业务流程的重放操作,可以实现“一次购买多次收货”等违背正常业务
逻辑的结果。
10.4.2 测试过程
该项测试主要针对电商平台订购兑换业务流程中对每笔交易请求的唯一性判断缺乏有
效机制的业务逻辑问题,通过该项测试可以验证交易流程中随机数、时间戳等生成机制是
否正常,如图 10-22 所示。
图 10-22 测试流程图
步骤一:在生成订单流程时抓取订购请求,如图 10-23 所示。
图 10-23 生成订购请求页面
步骤二:观察每次订购相同商品的请求是否存在不同的随机 Token、可变参数等,若
有则检查这些随机数的变化情况和失效情况,是否在当前订购流程中唯一有效,如图 10-
24 所示。
图 10-24 留存订购 HTTP 请求
步骤三:尝试重放之前已经完成流程的订购请求,观察服务器端是否做出正确响应,
若订购再次生效,订单再次生成则表明服务器存在脆弱性,如图 10-25 所示。
图 10-25 将订购 HTTP 请求进行重放发送
10.4.3 修复建议
用户每次订单 Token 不应该能重复提交,避免产生重放订购请求的情况。在服务器
订单生成关键环节,应该对订单 Token 对应的订购信息内容、用户身份、用户可用积分
等进行强校验。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论