Burp 实战|业务逻辑测试:校验、文件上传绕过、流程绕过
很多漏洞不在代码语法层,而在”业务流程”层。这篇讲数据校验、文件上传与流程顺序这三类逻辑漏洞怎么用 Burp 试。
① 是什么
- 业务逻辑漏洞:功能”按设计工作”,但设计本身可被滥用(如改价格、跳过支付)。
- 文件上传绕过:传了不该传的文件(如 webshell),或靠改扩展名/Content-Type 骗过校验。
- 流程绕过:不按顺序走(如直接访问”已支付”页),系统没校验前置状态。
② 为什么重要
- 逻辑漏洞往往危害极高(任意金额下单、上传木马),却最难被自动扫描发现。
- 它们靠”人理解业务”才能测出,正是手测(Repeater/Intruder)的强项。
③ 核心概念拆解
- 测数据校验:前端校验一改就过;把请求发到 Repeater,改字段(负数、超长、特殊字符)看后端是否真校验。
- 测文件上传:传
shell.php,再试shell.php.jpg、加 GIF 头、改Content-Type,观察是否被执行/存放;polyglot(多语言文件)可同时骗过图片与脚本校验。 - 测流程绕过:把”下单→支付→完成”里的支付请求删掉,直接发完成请求;或重放某步骤看状态机是否被破坏。
- 流程时序攻击(Process-timing):在同一窗口并发/快速重放请求,触发竞态(如重复发券)。
④ 常见误区
- 误区 1:前端报错=后端也拦。务必在 Burp 里改包验证后端。
- 误区 2:只传正常文件测试。要试边界与恶意组合(polyglot)。
- 误区 3:按正常顺序走完就放心。要故意”跳步、重放、并发”破坏状态机。
⑤ 一句话小结
逻辑漏洞靠”改数据、换文件、跳流程、抢时序”逼出;前端校验永远要在 Burp 里二次验证。
下一篇:输入校验与注入:XSS、动词篡改、参数污染、SQL/命令注入
参考来源:Burp Suite Cookbook (2023)(本文为原创讲解,非转载原文)