Burp 实战|输入校验与注入:XSS、动词篡改、参数污染、SQL/命令注入
用户输入不被信任,是安全铁律。这篇讲 Burp 怎么测最常见的几类”输入被当指令执行”的漏洞。
① 是什么
- XSS(跨站脚本):把脚本塞进页面,在别人浏览器里执行。反射型(随链接)、存储型(存库后展示)。
- HTTP 动词篡改:把 GET 改 POST/PUT 等,绕过敏感操作的限制。
- HTTP 参数污染(HPP):同一参数出现多次,看后端取哪个,制造歧义。
- SQL/命令注入:输入被拼进查询/系统命令并执行。
② 为什么重要
- 注入类常年位居 OWASP Top 10,危害从数据泄露到拿服务器权限。
- XSS 是后续钓鱼、盗 Cookie、蠕虫的起点。
③ 核心概念拆解
- 测反射/存储 XSS:在参数里插
<script>/事件处理器,看是否原样回显执行;存储型要找”展示点”。 - 测动词篡改:Repeater 里改请求方法,看是否绕过鉴权或达成越权写操作。
- 测 HPP:同参数给多值(
?id=1&id=2),观察后端解析,可能绕过 WAF/逻辑。 - 测 SQL 注入:插
'、' OR 1=1--、UNION SELECT等,看报错/差异;用 Intruder 批量 fuzz。 - 测命令注入:插
;、|、$(),看系统命令是否被拼执行。
④ 常见误区
- 误区 1:页面不回显就安全。盲注(盲命令执行)靠延时/外联判断。
- 误区 2:只测一个参数。每个入口(Header、Cookie、JSON 字段)都可能是注入点。
- 误区 3:WAF 拦了就放弃。换编码/分块常能绕。
⑤ 一句话小结
输入校验测试把”用户输入”当成”潜在指令”去挑衅:改方法、重复参数、塞注入串,看是否被误执行。
下一篇:客户端攻击:点击劫持、DOM XSS、DOM Invader、HTML 注入
参考来源:Burp Suite Cookbook (2023)(本文为原创讲解,非转载原文)