【发布时间】:2015-03-05 22:37:27
【问题描述】:
我让 IIS (Microsoft-IIS/7.5) 返回 403 禁止,我不知道为什么。我已将其范围缩小到%2F,但仅当它前面有一个字母时。知道是什么原因造成的吗?
这些工作...
- http://example.com/mySite123/index.cfm?x=blah%2Fblah
- http://example.com/mySite123/index.cfm?x=blah%2F
- http://example.com/mySite123/index.cfm?x=123%2F
- http://example.com/mySite123/index.cfm?x=%2F
但是,如果您在 %2F 前面放置任何单个字母,则会失败并返回 403。
这些失败...
- http://example.com/mySite123/index.cfm?x=a%2F
- http://example.com/mySite123/index.cfm?x=b%2F
- http://example.com/mySite123/index.cfm?x=c%2F
- ...
- http://example.com/mySite123/index.cfm?x=z%2F
- http://example.com/mySite123/anything.anything?anything=x%2Fanything
谢谢!
更新:我已经排除了 ColdFusion,因为这给出了相同的 403:http://example.com/mySite123/indexdotcfm?x=a%2F
更新:
Top Level IIs:
Checked:
Allow unlisted file name extensions
Allow unlisted verbs
Allow high-bit characters
Unchecked:
Allow double escaping
Request Limits:
Maximum allowed content length (Bytes): 30000000 Maximum URL length (Bytes):
4096 Maximum query string (Bytes): 2048
Sites
mySite123:
Checked:
Allow unlisted verbs
Allow high-bit characters
Unchecked:
Allow unlisted file name extensions
Allow double escaping
Request Limits:
Maximum allowed content length (Bytes): 2147483647
Maximum URL length (Bytes): 4096
Maximum query string (Bytes): 2048
Deny URL
/CFIDE/Administrator
/CFIDE/adminapi
更新:如果我更改我要访问的目录,我可以将 403 更改为 404。示例:
这会按预期返回 404: http://www.example.com/anything.anything?anything=x%2Fanything
这会返回 403: http://www.example.com/mySite123/anything.anything?anything=x%2Fanything
因此可以安全地假设 403 问题与“mySite123”虚拟目录设置有关吗?
【问题讨论】:
-
你能展示你的重写规则集吗? %2F 是一个正斜杠,所以这可能与重写有关。
-
是的,只是可能需要一些时间。我没有访问权限。我必须向别人索取。请求已发出。
-
@Olaf 没有重写规则。
-
example.com/index.cfm?y=c%2F(不同的变量名)的响应也是403吗?
-
您是否将request filtering 用于IIS?如果是这样,您在那里启用/禁用了哪些设置?
标签: java iis coldfusion url-rewriting http-status-code-403