【问题标题】:X-Frame Options Not 100% For Blocking IframesX-Frame 选项不是 100% 用于阻止 iframe
【发布时间】:2018-03-02 21:39:37
【问题描述】:

似乎将 X-Frame-Options 设置为拒绝是防止我的网站被 Iframed 的最推荐方法。但它并不完美。首先,X-Frame-Options 可以通过使用 Chrome 扩展程序来忽略,如下文所述。我已经通过使用 Ignore X-Frame headers chrome 扩展证明了这种情况。

Getting around X-Frame-Options DENY in a Chrome extension?

其次,X-Frame-Options deny 仅适用于网页的第一个 iframe,如果我 iframe 网页两次,则第二个 iframe 有效。

我的问题是,防止我的网站被 iframe 化的最佳多管齐下方法是什么?

【问题讨论】:

  • “第二个 iframe 有效”到底是什么意思?

标签: security iframe x-frame-options


【解决方案1】:

X-Frame-Options 只是一个响应头。当然,如果你控制了客户端,你可以忽略它。如果你控制了客户端,你几乎可以做任何事情。

X-Frame-Options 的重点是防止像Clickjacking(主要)或Pixel Perfect Timing Attacks 这样的攻击。它确实阻止了这些攻击,因为攻击者无法控制受害者的浏览器说安装扩展程序(或者如果可以的话,从受害者的角度来看,点击劫持是最小的问题:)。

【讨论】:

  • 感谢您的回复。您说“如果您控制客户端,则可以忽略它”,这是否意味着如果用户(客户端)安装了 chrome 扩展,则该扩展可以控制客户端计算机?
  • 好吧,一个扩展不能做任何事情,但它对浏览器中加载的网页有很多控制,它可能对文件系统有一定程度的访问(我猜可能是有限的)等等. 我不是扩展专家,它可能因浏览器而异,所以请查看文档!但是,如果用户授予该访问权限,扩展程序肯定可以访问浏览器中的网页,它可以读取和修改它们,可以获取用户在页面中输入的任何数据,等等。
  • @Garbor 再次感谢您。就防止我的网站被 iframed 而言,X-Frame-Options 是最好的方法吗?
  • @user1609391 我会说是的,因为它非常简单且兼容。一个更新但更复杂的替代方案是Content-Security-Policy: frame-ancestors 'none'。如果您不确定,请选择 X-Frame-Options。
猜你喜欢
  • 1970-01-01
  • 2012-08-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-02-01
  • 2017-01-22
  • 1970-01-01
  • 2020-12-24
相关资源
最近更新 更多