Ajax 内容类型text/json是否具有安全含义?

Ajax 内容类型text/json是否具有安全含义?,ajax,json,http,xss,content-type,Ajax,Json,Http,Xss,Content Type,我应该改用文本/纯文本吗。或者在跨站点安全性方面,text/json实际上会是一样的吗 无论哪种方式,内容都将是有效的JSON,我只想确保我对内容类型头的看法是正确的。没有影响请求-应答mime类型选择的安全考虑因素。请注意,JSON的正确mime类型是application/JSON。是的,存在安全隐患。浏览器——尤其是IE——经常会对内容类型进行二次猜测。原因是,一段时间以前,服务器以相同的内容类型交付所有内容,因此浏览器必须进行猜测才能正确显示内容。 Text/plain以内容嗅探(二次猜

我应该改用文本/纯文本吗。或者在跨站点安全性方面,text/json实际上会是一样的吗


无论哪种方式,内容都将是有效的JSON,我只想确保我对内容类型头的看法是正确的。

没有影响请求-应答mime类型选择的安全考虑因素。请注意,JSON的正确mime类型是application/JSON。

是的,存在安全隐患。浏览器——尤其是IE——经常会对内容类型进行二次猜测。原因是,一段时间以前,服务器以相同的内容类型交付所有内容,因此浏览器必须进行猜测才能正确显示内容。
Text/plain以内容嗅探(二次猜测)而臭名昭著。如果您的json在某些值中包含html,则如果您直接在浏览器中打开url,浏览器可能会确定其html并呈现它。这可能导致XSS。

正确的内容类型应该是应用程序/json@Musa,也就是说:为什么不把它作为一个答案发表呢?我建议你读一读《纠结的网络》。它详细解释了内容嗅探。不要在肥皂盒里大声说话。我读那张纠结的网。我仍然坚持我的主张,即HTTP内容头的内容不构成任何安全考虑。无论您使用mime类型的application/json可以利用什么,您都可以使用text/plain进行利用。一般来说,还是仅在这个特定场景中?(我不明白你的第一句话是什么意思,但如果我冒犯了你,我很抱歉)顺便说一句。这里有一个例子似乎与你的说法相矛盾:“无论你用mime类型的应用程序/json可以利用什么,你都可以用文本/plain进行利用”:这是一个常见的神话,正如神话通常所说的那样,这是错误的。Microsoft对mime类型检测的参考是:注意,从该文档中可以看出:a)文本/纯文本在受限区域中永远不会呈现为HTML;b)从不猜测未知的mime类型。这是八年前推出的IE6SP2的行为。text/json要么作为json处理,要么作为未知类型处理。这是XSS安全的。我经常在论坛上看到这种讨论。2011年的随机示例:我不久前建立了一个测试平台,这表明在某些情况下,至少IE9将文本/纯文本视为HTML: