如何在iframe中实现Frame-Buster-Javascript
我看到这段代码可以帮助解决iframe中的点击劫持问题如何在iframe中实现Frame-Buster-Javascript,javascript,Javascript,我看到这段代码可以帮助解决iframe中的点击劫持问题 <style> html { display : none; } </style> <script> if( self == top ) { document.documentElement.style.display = 'block'; } else { top.location = self.location ; } </script> html
<style>
html { display : none; }
</style>
<script>
if( self == top ) {
document.documentElement.style.display = 'block';
} else {
top.location = self.location ;
}
</script>
html{显示:无;}
if(self==顶部){
document.documentElement.style.display='block';
}否则{
top.location=self.location;
}
我不明白它是如何解决问题的?为什么self==top
会解决这个问题
我可以使用
ALLOW-FROM
header还是建议使用这两种方法 为了便于讨论,Mallary的页面是包含
元素的页面,Bob的页面是放在框架中的页面
我不明白它是如何解决问题的
如果Mallary不能将Jack Bob的页面保存在一个框架中,她就不能单击该页面
当然,这确实需要clickjack攻击完全依赖于运行JS的Bob页面,否则Mallary可能会sandbox
it,因此其JavaScript不会运行
为什么self==top
会解决这个问题
没有
top.location=self.location代码>使浏览器离开Mallary的页面,并将Bob的页面加载到浏览器顶层的相应位置
self==top
停止浏览器从Bob的页面导航并在其位置加载Bob的页面:即,它防止无限循环的重新加载
我可以使用ALLOW-FROM标头还是建议同时使用这两种方法
X-Frame-Options
是阻止页面加载到框架中的一种更有效、破坏性更小的方法。是X-Frame-Options
更灵活的替代品
我会使用它们,而不是像这样的JavaScript黑客