问题标签 [clickjacking]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
javascript - 如何保护小部件免受伪造请求
假设您有一个 JavaScript 小部件,当且仅当用户想要单击它时,它才需要向您的 Web 应用程序发出请求。您不希望此请求易受 CSRF 攻击,因此您将 iframe 写入页面。根据源继承规则,父站点将无法读取 CSRF 令牌。但是点击劫持(或类似劫持)呢?由于 CSRF,您必须在 iframe 内,并且x-frame-options无济于事,对于frame-busters也是如此。
攻击者将在小部件加载后对 iframe应用SVG 掩码。此蒙版将使 iframe 不可见。此时,攻击者可以将 iframe 的大小调整为页面大小,或者让这个现在不可见的 iframe 跟随光标。无论何时用户点击页面上的任何位置,iframe 都会收到点击事件并结束游戏。
所以有一个二元性,你似乎被困在 CSRF 和 Clickjacking 之间。这个问题的最佳解决方案(如果有的话)是什么?
javascript - 防止点击劫持的Javascript
我的应用程序中有这个 Javascript 片段来防止点击劫持:
基本上,它默认创建一个样式元素(动态 CSS)来隐藏当前页面的正文。然后,如果它没有检测到点击劫持,则会将其删除。所以,这样做,每个没有 Javascript 的人也可以看到该页面(尽管他们不会受到点击劫持的保护)。
它适用于除 Internet Explorer 之外的所有浏览器,它会引发未知运行时错误异常。有人对如何解决这个问题有建议吗?
谢谢 :-)
javascript - 击败一个强悍的 FRAME 杀手
我一直试图打破这个几个小时,但没有成功......我现在非常绝望:(
我正在为一家公司做渗透测试,我需要绕过这个框架杀手 JS:
非常感谢!
javascript - 如何检测网页中的点击劫持攻击
我试过一个点击劫持工具。它只能检测 HTML 页面中的隐藏帧。我研究了点击劫持攻击,如下面的参考资料所示,如果 HTML 代码中存在任何重复的帧,我认为帧破坏攻击能够检测到该工具。
但我需要该工具来提供给定 Web URL 是否可能包含点击劫持攻击的详细信息。
参考:
firefox - X-Frame-Options:Firefox 和 chrome 中的 ALLOW-FROM
根据这篇文章,我正在实施“传递”,X-Frame-Options
让合作伙伴网站将我雇主的网站包装在 iframe 中:http: //blogs.msdn.com/b/ieinternals/archive/2010/03/30 /combating-clickjacking-with-x-frame-options.aspx
(拆分 URLS 发布)
简而言之,我们合作伙伴的页面有一个 iframe,其中包含针对我们域的 URL。对于我们域中的任何页面,他们都会添加一个特殊的 url 参数,例如&@mykey=topleveldomain.com
,告诉我们页面的顶级域是什么。
我们的过滤器从 URL 中提取合作伙伴 TLD(如果提供),并根据白名单对其进行验证。如果它在列表中,我们会发送X-Frame-Options
带有值的标题ALLOW-FROM topleveldomain.com
(并添加一个 cookie 以供将来点击)。如果它不在我们的白名单上,我们会发货SAMEORIGIN
或DENY
.
ALLOW-FROM domain
问题在于,对于最新的 Firefox 和 Google Chrome,它看起来像是以无操作的方式发送结果。至少,IE8 似乎正确地实现了ALLOW-FROM
.
查看此页面: http ://www.enhanceie.com/test/clickjack 。在“应该显示内容”的第 5 个(共 5 个)框之后,是一个不应该显示内容的框,但它是。在这种情况下,iframe 中的页面正在发送X-Frame-Options: ALLOW-FROM http://www.debugtheweb.com
一个与http://www.enhanceie.com
. 然而,框架仍然显示内容。
X-Frame-Options
关于是否真正ALLOW-FROM
跨相关(桌面)浏览器实现的任何见解?也许语法已经改变?
一些感兴趣的链接:
- 关于 x-frame-options 的 rfc 草案:https ://datatracker.ietf.org/doc/html/draft-gondrom-frame-options-01
- developer.mozilla 文章将标头讨论为 2-option 标头(sameorigin 或 deny)。 https://developer.mozilla.org/en-US/docs/Web/HTTP/X-Frame-Options
- 发起整个事情的 msdn 博客:http: //blogs.msdn.com/b/ie/archive/2009/01/27/ie8-security-part-vii-clickjacking-defenses.aspx
- 讨论 3 个值的 msdn 博客:添加 allow-from origin http://blogs.msdn.com/b/ieinternals/archive/2010/03/30/combating-clickjacking-with-x-frame-options.aspx
php - 我怎样才能从这个例子中打破框架?
一个随机网站决定通过以下代码加载我的一个网址...
我尝试添加一个 javascript framebreaker 来检查和中断,但这不适用于此。如何确保我的网站摆脱这种情况并显示为完整的浏览器而不是隐藏?他们正在消耗宝贵的带宽。谢谢
这是我已经像往常一样从头脑中尝试过的帧中断代码......
iis - 有没有办法设置 iframe 黑名单?
我注意到至少有一个网站将我的网站包含在 iframe 中,我很好奇禁止这种行为的最佳方法。
我已经包含了一些 Javascript,如果一个网站正在构建我的框架,它们应该能够获取,这样我就可以生成一个我想要阻止的网站列表。但是,有些网站我不想禁止 iframe。
是否有可能通过 IIS (7) 查看站点列表,如果请求来自该列表中的站点,则以某种方式失败或阻止请求?
谢谢!
clickjacking - IE8中的clickJacking预防方法?
我们了解到的一个 Web 应用程序容易受到 clickJacking 问题的影响。我们使用的是 IE8。上网后我发现我们可以安装“No Script”,但看起来它与我们使用 IE8 时的 mozilla 更相关。即使它在 IE8 中是可能的,那么还有更好的选择吗?
google-app-engine - 如何为我在 webapp2 中为谷歌应用引擎构建的应用添加反点击劫持支持?
我知道 django 有 WSGI 中间件,但我找不到 webapp2 的任何东西。django 中间件可以工作吗?