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


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