开放重定向漏洞测试清单
将以下提示词粘贴到你的 AI 对话框中:
请根据 https://skillhub.cn/install/skillhub.md,安装 @user_3c6cb52e/open-redirect-ivqe。
技能介绍
要解决的问题
开放重定向漏洞长期存在于 Web 应用中,攻击者可以利用未充分校验的重定向参数将用户从可信域名跳转到恶意站点。这类漏洞不仅单独构成钓鱼风险,还常作为 OAuth token 窃取、SSRF 探测和 XSS 注入的攻击链起点。然而,检测开放重定向并非简单的 URL 替换测试——现代应用普遍部署了域名白名单、编码规范化和协议限制,绕过这些防护需要系统性的方法论。
核心能力与工作流程
该技能将开放重定向测试拆解为可执行的清单流程,从参数发现到影响评估形成完整闭环。
参数识别与端点枚举:列出常见的重定向参数名(如 redirect、url、next),扫描身份验证流程、支付网关、社交登录集成和短链接服务中的重定向入口。支持基于 Referer 头的重定向和路径触发型重定向的发现。
绕过技术体系:覆盖域名欺骗(混合协议解析、双斜杠)、编码绕过(双重解码、Unicode 规范化)、协议混淆(javascript:、data: URI)和特殊字符滥用。针对 CDN 和反向代理,测试 X-Original-URL 头驱动重定向和边缘/源站双层解码不一致。
链式利用与影响升级:将开放重定向与 OAuth redirect_uri 校验缺陷、SSRF 内网探测和 XSS payload 投递结合,评估其在真实攻击链中的价值。提供框架特定漏洞模式(Spring MVC、Express.js、Next.js)的针对性测试路径。
修复验证:检查白名单实现是否严格匹配、协议是否限制为 http/https、是否使用间接引用映射,以及移动端深链接是否验证 App Links/Universal Links。
适用边界与注意点
现代浏览器行为显著影响测试结果:Chrome 120+ 对跨站重定向的增强限制、SameSite Cookie 默认值对认证状态保持的影响,以及 COOP/COEP 头对 OAuth 弹出流程的干扰,都需要在测试中纳入考量。OAuth/SSO 栈日益要求 redirect_uri 精确匹配,但部分/路径级白名单和大小写/编码不匹配仍常见于生产环境。移动端场景下,开放重定向可能升级为 App Link 劫持,需在 Android intent URL 和 iOS Universal Link 回退路径上单独验证。该技能面向授权测试和漏洞赏金发现,不适用于未授权扫描。
使用场景
- 对目标 Web 应用做渗透测试,需系统排查参数、Referer 和路径型重定向入口
- 漏洞赏金挖掘中,针对 OAuth 回调 `redirect_uri` 做白名单绕过与 token 泄露验证
- 测试 Spring MVC、Express 或 Next.js 应用时,验证框架自带重定向接口是否未校验目标
- 在 CDN/反向代理后的目标上测试边缘与源站解码差异、头驱动重定向等防护绕过
适合人员
- 渗透测试工程师,需要在授权目标上按清单完成开放重定向检测与绕过验证
- 漏洞赏金猎人,持续在 Web 应用中寻找可链式利用的开放重定向缺陷
- 应用安全研发工程师,排查登录回跳、OAuth 回调和框架重定向接口的校验缺陷
- 前端/全栈开发者,在 Spring、Express、Next.js 等框架中修复重定向相关安全回归