在 Web 应用程序安全测试中,Web 服务器对 URL 中特殊字符的处理方式差异,可能引发网络缓存欺骗、访问控制失效等严重安全问题。下面将详细介绍如何使用 Burp Suite Intruder 工具,精准查找路径分隔符存在的潜在问题。
一、捕获目标请求
首先,打开 Burp Suite 工具,确保其代理功能处于开启状态,并将浏览器代理设置为与 Burp Suite 一致,保证流量能够被正常拦截。在浏览器中正常访问目标 Web 应用,找到需要测试的特定请求,例如获取 “/ 我的账户” 信息的 GET 请求,该请求在 Burp Suite 的 “Proxy” 模块 “Intercept” 选项卡中会被捕获显示,形如GET /我的账户 HTTP/2 。
二、将请求发送至 Intruder 模块
捕获到目标请求后,在 Burp Suite 的 “Proxy” 模块中,右键单击该请求,在弹出的菜单中选择 “Send to Intruder”,将请求发送至 Intruder 模块进行后续测试。
三、配置 Intruder 测试参数
进入 Intruder 模块后,在 “Positions” 标签页下,会显示刚才发送过来的请求。此时,将光标定位到 “/ 我的账户” 路径的末尾,添加自定义的字符串(如 “abc”),并选中该字符串,点击 “Add §” 按钮(或直接点击 “Add new position”),在选中的字符串两侧会出现 “§§” 符号,这表示该位置已被设置为可替换的测试点,最终请求格式变为GET /我的账户§§abc HTTP/2 。
!
#
$
%
&
'
(
)
*
+
,
-
。
/
:
;
=
?
@
[
]
_
~
...
https://portswigger.net/web-security/web-cache-deception/wcd-lab-delimiter-list
攻击类型选择 “狙击手(Sniper)” 模式,此模式会每次仅改变一个测试点的内容,依次使用有效载荷中的字符进行替换测试,便于精准定位问题。
四、设置有效载荷
切换到 “Payloads” 标签页,在 “Payload set” 中选择刚才设置的测试点位置(即 “abc” 所在位置)。在 “Payload Options” 部分,粘贴包含特殊字符的列表,这些特殊字符包括但不限于;、?、#、&等可能影响服务器处理逻辑的字符。准备就绪后,点击 “Start attack” 按钮,Intruder 便开始使用有效载荷中的特殊字符,逐个替换测试点的内容,向服务器发送请求并记录响应结果。
五、分析测试结果
Intruder 攻击完成后,通过查看 “Length”“Status”“Response” 等列的信息,分析不同特殊字符替换后的响应差异。
推荐站内搜索:最好用的开发软件、免费开源系统、渗透测试工具云盘下载、最新渗透测试资料、最新黑客工具下载……
还没有评论,来说两句吧...