安全扫描应用程序在我的asp.net MVC 5网站中发现了对signalR链接的风险。
the X-Frame-Options response header is missing, which may allow
Cross-Frame Scripting attacks
任何人都可以告诉我这是关于什么的? 以及如何解决?
ASP.NET SignalR Input Validation Flaw Permits Cross-Site Scripting Attacks
因为我使用SignalR 2.1.x
,所以不应该是问题请求是:
POST ***/signalr/send?transport=serverSentEvents&clientProtocol=1.4&connectionToken=bla**bla** HTTP/1.1
Host: ****
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:8.0.1) Gecko/20100101 Firefox/8.0.1
Accept: text/plain, */*; q=0.01
Accept-Language: en-us,en;q=0.5
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
Connection: keep-alive
Content-Type: application/x-www-form-urlencoded; charset=UTF-8
X-Requested-With: XMLHttpRequest
Referer: myhost
Pragma: no-cache
Cache-Control: no-cache
Cookie: authentication token
Content-Length: 113
data=********
回应是:
HTTP/1.1 200 OK
Cache-Control: no-cache
Pragma: no-cache
Transfer-Encoding: chunked
Content-Type: application/json; charset=UTF-8
Expires: -1
Server: Microsoft-IIS/8.0
X-Content-Type-Options: nosniff
X-AspNet-Version: 4.0.30319
X-Powered-By: ASP.NET
Some html body
答案 0 :(得分:2)
我认为这个警告可以安全地被忽略。 X-Frame-Options header用于阻止clickjacking。 SignalR响应没有任何链接或任何其他可点击内容。
但是,在每个响应上设置X-Frame-Options
标头可能是一个好主意,以确保安全。你可以这样做via IIS manager or web.config。如果您不使用IIS,则可以使用OWIN middleware instead。