%25u,%25U
当我检查一些 SiteMinder APACHE 2.2 WebAgent 配置文件时,我在属性中的 ASCII/URL 编码字符列表中发现了“ ” badurlchars
,如下所示:
[Wed Jun 19 2013 05:04:14] badurlchars='//,./,/.,/*,*.,~,\,%00-%1f,%7f-%ff,%25u,%25U'.
基本上,WebAgent 将拒绝任何在 URL 中包含该
'?'
字符之前出现的上述字符的请求。
现在我知道该badurlchars
属性可以包含 ASCII 字符本身或该字符的 URL 编码形式。[SiteMinder 参考]
那么%25u,%25U
在这种情况下“ ”代表什么,为什么将它们放在这个列表中?我想找出它们如何构成安全风险也可以间接回答我的问题。
更新 1:
我碰到这个 Debian 错误报告谈到了一个错误,其中xdg-open
解析包含&符号的URL,并将&符号转换为,%u
然后将其编码为%25u
。现在我不是Debian专家,但这是否是一个安全漏洞,有必要%25u
在URL中阻止它?
更新2:
我收到了回复说字符%25u
/%25U
指的是 ASCII 设备控制字符EM(介质结束)。
从w3学校:
ASCII Character: EM
HTML Entity Code: 
Description: end of medium
答案1
我相信你正在看到的是试图击败规范化攻击攻击者试图将编码字符嵌入到 URL 或其他输入值中,这样安全过滤器可能会漏掉它,将其读入系统、解码,然后用于恶意目的。这些类型的攻击通常用于导航到不应该访问的地方或注入错误输入。
更多内容请见此处:https://www.owasp.org/index.php/Canonicalization,_locale_and_Unicode