【发布时间】:2019-03-03 08:11:56
【问题描述】:
我一直在使用 OWASP ZAP 运行一些渗透测试,它会针对所有请求发出以下警报:X-Content-Type-Options Header Missing。
我了解标题,以及为什么推荐它。 this StackOverflow question中解释的很好。
但是,我发现各种参考资料表明它仅用于 .js 和 .css 文件,而为其他 MIME 类型设置标头实际上可能是不好的事情:
- 注意:nosniff 仅适用于“脚本”和“样式”类型。同样对图像应用 nosniff 被证明与现有网站不兼容。 [1]
- Firefox 在支持图像的 nosniff 时遇到了问题(Chrome 不支持它)。 [2]
- 注意:现代浏览器只尊重脚本和样式表的标头,如果使用错误的媒体类型提供其他资源(例如图像)的标头,则可能会在旧浏览器中产生问题。[3]
上述参考资料(和其他参考资料)表明,简单地为所有响应设置此标头是不好的,但尽管关注了任何相关的链接并在 Google 上进行搜索,但我找不到此论点背后的任何原因。
与设置X-Content-Type-Options: nosniff 相关的风险/问题是什么?为什么要避免text/css 和text/javascript 以外的MIME 类型?
或者,如果没有风险/问题,为什么 Mozilla(和其他人)建议有?
【问题讨论】:
标签: browser http-headers cross-browser mime-types web-standards