最佳答案
我正在使用 Backbone.js 和龙卷风网络服务器。在 Backbone 中接收收集数据的标准行为是作为 JSON 数组发送。
另一方面,由于下面的漏洞,龙卷风的标准行为是不允许 JSON 数组的:
Http://haacked.com/archive/2008/11/20/anatomy-of-a-subtle-json-vulnerability.aspx
一个相关的问题是: Http://haacked.com/archive/2009/06/25/json-hijacking.aspx
对我来说,当 JSON 实际上是一个对象列表时,不必将它包装在对象中,这种感觉更自然。
我无法在现代的浏览器中重现这些攻击(比如当前的 Chrome、 Firefox、 Safari 和 IE9)。与此同时,我无法证实现代浏览器已经解决了这些问题。
为了确保我不会被任何可能的糟糕编程技能或糟糕的谷歌技能所误导:
在现代浏览器中,这些 JSON 劫持攻击仍然是一个问题吗?
(注意: 很抱歉可能重复到: 有可能做的 JSON 劫持在现代浏览器?,但由于接受的答案似乎没有回答这个问题-我认为是时候再问一次,并得到一些更清楚的解释。)