DetectContentType,JavaScript 支持 ?https://github.com/golang/go/blob/c3931ab1b7bceddc56479d7ddbd7517d244bfe17/src/net/http/sniff.go#L21http Method DetectContentType背后是否有不支持JavaScript的真正原因?
1 回答
临摹微笑
TA贡献1982条经验 获得超2个赞
正如文档注释所述,DetectContentType
实现了https://mimesniff.spec.whatwg.org/中描述的算法,该算法不检测 JavaScript。那么问题就变成了:为什么不呢?
答案在规范的介绍中给出:
当“诚实”的服务器允许潜在的恶意用户上传他们自己的文件,然后使用低权限 MIME 类型提供这些文件的内容时,这些安全问题最为严重。例如,如果服务器认为客户端会将贡献的文件视为图像(因此将其视为良性),但用户代理认为内容是 HTML(因此有权执行其中包含的任何脚本),则攻击者可能能够窃取用户的身份验证凭据并发起其他跨站点脚本攻击。(当然,恶意服务器可以在 Content-Type 标头字段中指定任意 MIME 类型。)
本文档描述了一种内容嗅探算法,该算法仔细平衡了用户代理的兼容性需求与现有 Web 内容所施加的安全约束。
将不受信任的输入标记为 JavaScript(或者即使是!)可能会导致安全灾难。
- 1 回答
- 0 关注
- 92 浏览
添加回答
举报
0/150
提交
取消