我刚刚在我的错误日志中发现了这两个条目:
Date: 2012-02-09 11:33:46.693 PageUrl: http://thebusinessbook.com/SalfordComamp;tbo=1&q=related:http:/www.barnesandnoble.com/c/city-of-salford-commun2onmousedown=return Error: A potentially dangerous Request.Path value was detected from the client (&). UrlReferrer: http://www.salford.gov.uk/contact-socialservices.htm UserAgent: Mozilla/5.0 (Windows; U; MSIE 9.0; Windows NT 9.0; en-US) UserHostAddress: 217.155.37.153 UserHostName: 217.155.37.153 Date: 2012-02-09 11:33:41.027 PageUrl: http://thebusinessbook.com/SalfordComamp;tbo=1&q=related:http:/www.barnesandnoble.com/c/city-of-salford-commun2munitySocialServices Error: A potentially dangerous Request.Path value was detected from the client (&). UrlReferrer: http://www.salford.gov.uk/contact-socialservices.htm UserAgent: Mozilla/5.0 (Windows; U; MSIE 9.0; Windows NT 9.0; en-US) UserHostAddress: 217.155.37.153 UserHostName: 217.155.37.153
所以这个错误发生了,因为在没有前面的URL中有一个&字符? 标记查询string。
我不明白的是URL引用。 列出的页面来自英国政府网站。 我的网站与他们没有任何关系,页面上没有任何链接到我的网站上。 我读过,有时垃圾邮件发送者使用不真实的UrlReferrer标题,但我不明白为什么政府网站会有什么关系。
有什么理由可以造成这种情况? .gov网站上的Buggy脚本,一个愚蠢的用户,或者可能是我的结局?
我应该做些什么,或者只是忽略它?
我会在发生这些尝试的时候检查我的日志,看看是否可以find任何可能表示某人“正在模糊”您的应用程序或以其他方式攻击您的古怪请求。 这可能不算什么,但值得仔细检查一下日志。
最终,我只是忽略引用者,并假设日志没有显示任何攻击模式,请将其填入其他人框中的某个破解代码。
任何东西都可以在Referer头文件中,并且应该被认为完全不受信任。 如果你的应用程序在某种程度上利用了Referer的值,那么我会仔细检查你是否正确地将它视为不可信,如果你在数据库查询中使用它,那么你正在对它进行适当的消毒,逃避metacharaters。