我在IIS(Internet信息服务)上托管了一个页面。这是ASP的经典之作。 在Window Server 2008上托管。
<%
dim x
x = Trim(UCase(Request.QueryString("v0")))
if x= "" then
x="no value"
end if
response.write "<h1>Hello World "& x &"</h1>"
%>
在Internet Explorer中尝试以下地址
输入地址:
"test/sample.asp?v0=%25ABC"
结果:
"Hello World %ABC"
输入:
"test/sample.asp"
结果:
"Hello World No Value"
输入地址:
"test/sample.asp?v0=%25123"
结果:
"Hello World %123"
输入地址:
"test/sample.asp?v0=%25n" or "test/sample.asp?v0=%25N"
结果:
Web browser stop working.
IIS中是否有任何导致此症状的设置?或任何其他原因?
Add-On - 2015年11月2日
实际编码并非真正保密。但它太长了,不能发布在这里。但实际情况如下:
用户可以使用input box type text
搜索项目,然后onblur
将输入转发到调用showmodaldialog.
的函数
使用以下示例:
javascript
window.showModalDialog("search_item.asp?v0="+input)
输入在发送前进行URL编码。 用户发现&#34;%&#34; sign实际上是一个通配符。 *真的不知道他们是如何发现的。
从那以后他们一直在使用它。但是,因为我们将网站迁移到了 新服务器。问题开始发生。
因此,我试图缩小冻结的原因并发现值发送导致问题。
我不熟悉IIS。在设置IIS时,我可能犯了一个错误。
答案 0 :(得分:1)
美好的一天,我终于找到了造成冻结的原因。它由于杀毒! 防病毒软件将查询字符串视为入侵,从而阻止了IP。 默认情况下,阻止时间为60分钟。无法附上图片,但详情如下
防病毒:适用于WKS和FS的卡巴斯基反病毒套件。
安全类型:网络攻击拦截器。
网络攻击类型:Intrusion.Win.EasyAddressWebServer.format-string.exploit
目前正在寻找允许特定网络入侵的替代方案。