当前位置: 首页 > news >正文

URL验证绕过速查表:全面解析SSRF与CORS绕过技术

介绍URL验证绕过速查表

URL验证绕过是众多漏洞的根本原因,包括许多SSRF实例、CORS配置错误和开放重定向。这些漏洞通过使用模糊URL触发URL解析差异来绕过验证。然而,许多这些技术文档记录不足,因此被忽视。

为了解决这个问题,我们创建了一个速查表,整合了所有已知的payload,为您节省从互联网搜索和收集信息的时间和精力。今天,我们很高兴推出解决这个问题的新工具:URL验证绕过速查表。

我们希望您觉得它有用!这是一个经常更新的所有已知技术存储库,允许您快速生成满足需求的单词列表。

如何开始使用

URL验证绕过速查表是一个全新的交互式Web应用程序,根据您的上下文自动调整其设置。目前提供三种上下文:

  • 完全限定的绝对URL - 适用于URL用于请求查询参数等情况。所有payload都设计为与Burp Suite Intruder兼容,因此您无需担心正确编码。
  • 仅主机名 - 直接输入域名,例如在Host头值中。
  • CORS Origin - 主机名旨在用于有效的浏览器origin头。

最初,速查表提供六种类型的payload单词列表。高级设置允许您选择特定单词列表或同时使用所有单词列表。以下是最重要内容的简要概述:

  • 域名允许列表绕过:专为域名混淆攻击设计。您可以通过输入允许的域名和攻击者域名来自定义测试域名。
  • 伪相对URL:包括浏览器有效的绝对URL,这些URL可能被客户端代码错误验证。
  • 环回地址:此单词列表包括IPv4、IPv6地址的各种表示形式及其规范化。

编码

URL验证速查表支持几种字符串编码类型:

  • Intruder的百分比编码:此选项通过将某些字符替换为代表字符UTF-8编码的一到四个转义序列来编码payload字符串。它排除Burp Suite Intruder的默认字符,默认启用,使其易于与Burp Suite兼容。
  • 全部编码:此选项对所有非字母数字字符进行百分比编码。
  • 特殊字符选项编码除以下字符外的所有字符:["!","$","'",""","(",")","*",",","-",".","/","\",":",";","[","]","^","_","{","}","|","~"]
  • Unicode转义:此选项将payload字符串表示为六字符转义序列\uXXXX,除以下字符外:['"','\','\b','\f','\n','\r','\t']和范围[0x0020 - 0x007f]内的字符。

注意:应谨慎使用未编码字符串,因为Unicode值可能无法正确传输。

高级设置

IPv4地址表示

在处理Web应用程序时,将IP地址编码为不同格式对于测试、验证和安全目的至关重要。速查表支持标准IPv4地址作为攻击者IP输入,并返回编码表示的数组,包括八进制、十六进制、二进制和十进制格式。它还将IPv4地址转换为其IPv6映射地址格式。

编码详情:

  • 八进制:IP地址的每个段转换为八进制数并填充到4位数字。例如,环回IP地址127.0.0.1将表示为0177.0000.0000.0001
  • 十六进制:每个段转换为十六进制数,前缀为0x,并填充到2位数字。相同的环回IP地址将是0x7F.0x00.0x00.0x01
  • 二进制:每个段转换为8位二进制数。示例IP地址将是01111111.00000000.00000000.00000001
  • 部分十进制:将IP地址的第三和第四部分组合成单个十进制数:127.0.1
  • DWORD表示法:整个IP地址转换为无符号32位整数:2130706433
  • 带溢出的DWORD表示法:先前转换的结果加上2^32 * 10 = 45080379393
  • IPv6映射地址:将IPv4段转换为十六进制并格式化为标准IPv6映射地址。环回IP地址可表示为[::FFFF:7F00:0001]或::FFFF:127.0.0.1

规范化

单词列表包括许多利用Unicode字符串规范化的payload。例如,以下字符的规范化导致空字符串:

零宽度空格、负极细空格、负细空格、负中空格、负粗空格、词连接符(U+2060)(& NoBreak;)
软连字符U+00AD(­)

这些技术可用于绕过Web应用程序防火墙(WAF)。

允许域绕过的另一个示例发生在验证正则表达式允许多行字符串时。例如,如果使用正则表达式^allowed_domain$,以下内容可绕过验证:

attacker_domain(U+2028)allowed_domain(行分隔符)
attacker_domain(U+2029)allowed_domain(段落分隔符)

致谢

如果没有分享研究的Web安全社区,这个速查表将不可能实现。特别感谢:
Gareth Heyes、James Kettle、Jann Horn、Liv Matan、Takeshi Terada、Orange Tsai、Nicolas Grégoire。

我们在GitHub帐户https://github.com/PortSwigger/url-cheatsheet-data发布了所有payload,因此您可以通过创建新问题或更新JSON文件并提交拉取请求来为此速查表做出贡献。

我们期待您使用我们的新URL验证绕过速查表做出有趣的发现!
更多精彩内容 请关注我的个人公众号 公众号(办公AI智能小助手)
对网络安全、黑客技术感兴趣的朋友可以关注我的安全公众号(网络安全技术点滴分享)

公众号二维码

公众号二维码

http://www.jsqmd.com/news/25001/

相关文章:

  • https://avoid.overfit.cn/post/44c8d547475340d59aa4480f634ea67f
  • 记录一次成功的springboot2
  • 算法学习-素数筛法【埃氏筛法、线性筛法】
  • Day 18
  • Jenkins Share Library教程 —— 企业级 Jenkins Shared Library 实战示例
  • STM32之fromelf生成bin和反汇编文件
  • 25.10.28联考题解
  • 2025年河南工业大学2025新生周赛(1)
  • excel查找满足条件的第二项
  • 【传奇开心果系列】基于Flet框架实现的跷跷板动画自定义模板特色和实现原理深度解析 - 指南
  • CF506E Mr. Kitayutas Gift
  • 常用存储器介绍
  • 记录一次成功的springBoot
  • 2025.10.28总结
  • 代码大全2阅读笔记(1)
  • 进程与进程间通信(IPC)
  • QT:键盘事件(添加资源图片)
  • 2025.10.28
  • docker desktop:更新WSL2+安装nginx
  • # 学代码--看懂了但是不会写
  • 2025-10-28 aoao Round 比赛总结
  • P11307 [COTS 2016] 建造费 Pristojba 分析
  • 程序员如何打破职业瓶颈?先搬开这3块绊脚石。
  • 乱学点东西#2 :菠萝/蓝莓/Boruvka算法
  • 文件清理,推荐几款常用软件
  • AI时代的设计师:从工具到“超人”的进化之路
  • MyBatis 动态 SQL 实现原理 - Higurashi
  • bililun
  • 《程序员修炼之道:从小工到专家》观后感第二篇
  • 【学习笔记】数据结构全家桶