安全 RJS leaking vulnerability in multiple Rails applications

Rei · 2013年11月30日 · 最后由 hooopo 回复于 2013年12月18日 · 2959 次阅读

http://cheeaun.github.io/hackerweb/#/item/6821999

用 GET 的 UJS 有泄露敏感数据的风险,原理类似 JSONP。

现在 Rails Core 还没有定论要怎么处理。

感觉…… ……这样干的都很少了……

反正我用 jQuery 之后从来都没这样干过……

#1 楼 @Kabie 我还在这样干……

我觉得 JSONP leak 和 UJS leak 这两个相关的事件上,homakov 有些小题大做。

在使用 JSONP 解决跨域问题时,开发者首先要考虑的是,自己可以跨域了,同时也给了攻击者跨域的机会。跨域传输的内容是否敏感,是否有修改资源行为,这是需要开发者去权衡的。对于确实有敏感内容和修改资源行为的 jsonp 请求,可以参考这里的最后面一节所提的方案解决。

回到 UJS,对于修改资源的请求,一般正确使用 HTTP verb 就没问题..因为有 CSRF 防御。如果真是获取私有内容,验证一下request.xhr?或验证 csrf_token 同样解决问题。

需要 登录 后方可回复, 如果你还没有账号请 注册新账号