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)(本文为原创讲解,非转载原文)


This site uses Just the Docs, a documentation theme for Jekyll.