bgu*_*uiz 5 javascript security iframe cors
在构建旨在嵌入第三方网站上的窗口小部件时,似乎有两种关于如何做的想法:
iframes使用该iframe方法时,跨域请求不是问题,因为服务器认为该请求源自其自己的页面。
使用主页的DOM时,跨域请求是一个问题,服务器需要使用适当的CORS标头进行响应才能正常工作。
这两种方法中的哪一种更为安全?在实现每种方法时应考虑哪些安全问题?
您可能会发现这篇文章很有趣 -如何保护小部件免受伪造请求的影响:
你不希望这个 [widget] 容易受到 CSRF 的攻击,所以你向页面写了一个 iframe。基于源继承规则,父站点将无法读取 CSRF 令牌。但是点击劫持(或likejacking)呢?由于 CSRF,您必须在 iframe 内,因此 x-frame-options 无济于事,对于 frame-busters 也是如此
Origin(即协议、域和端口)。最后,这取决于您的小部件的功能。父站点在用户上下文中自动提交表单或单击小部件上的按钮会产生什么后果?如果有一个赞或 +1 按钮,托管页面可能会通过在用户不知情或同意的情况下向您注册赞/+1 来欺诈性地宣传他们的网站。这适用于两种方法,只是攻击方法不同(即 CSRF 或 Clickjacking)。
上面帖子中接受的答案有一个针对 CSRF 与 Clickjacking 的解决方案:
单击小部件需要打开一个包含新页面的弹出窗口——iframe 不够好,它必须是一个新窗口——这完全在您的 Web 应用程序的控制之下。确认该页面上的操作,无论它是什么。
是的,这有点不雅,但是目前的 Web 安全架构并没有给您任何更好的选择。
总之,IFrame 方法总体上似乎具有更高的安全性,并且在交互时实现弹出窗口可以减轻点击劫持风险。
| 归档时间: |
|
| 查看次数: |
2695 次 |
| 最近记录: |