我有一个网站已经工作了一段时间。最近,任何以查询字符串('GET')形式传递的表单中都包含单词“SELECT”,“FROM”和“WHERE”会导致页面挂起,最终会出现“找不到页面...”错误。看起来这只发生在IE,而不是Firefox,但已经使用多个客户端确认。此外,它只发生在一台服务器上...如果我将相同的测试脚本复制到另一台服务器,没问题。单词不必从表单传递,也可以作为查询字符串。
所以,例如,
http://www.problemserver.com/qsfails.asp?q=select+from+where
在出现问题的服务器上失败。事实上,如果我用不存在的页面名称替换'qsfails.asp',页面加载仍然会挂起并等待它超时,而尝试加载不存在但没有查询字符串的页面会立即“找不到页面......“错误。
服务器是否受到了损害?托管公司声称它不是。有没有人见过这个?想法或建议?
谢谢!
答案 0 :(得分:2)
我重新审核您的网络主机正在运行通用过滤器以防止SQL注入攻击,例如UrlScan。 IIS和Apache都有几种这样的工具。这样可以防止您的网站看到或处理该请求。
奇怪的是他们在你的问题之后不会提到类似的东西。与他们核实。
答案 1 :(得分:0)
结果证明索拉林是正确的。
我曾询问安全过滤但被告知没有。我再次询问并仍被告知“不”,托管公司认为这是一个路由问题(这对我来说没有意义,但我知道什么)。
然而,他们必须把它踢上线,因为他们安装了一个过滤器,这是问题所在。客户不仅不知道,甚至他们的第一批技术支持也不知道。糟糕。
感谢Thorarin。