我还没有找到太多答案,所以我只是想问一下。
阻止框架破坏者工作——甚至忽略它有多困难?
最佳答案
根据 Jeff's question :
事实证明,您的帧破坏代码可以被破坏,as shown here :
<script type="text/javascript">
var prevent_bust = 0
window.onbeforeunload = function() { prevent_bust++ }
setInterval(function() {
if (prevent_bust > 0) {
prevent_bust -= 2
window.top.location = 'http://server-which-responds-with-204.com'
}
}, 1)
</script>
此代码执行以下操作:
- 每次浏览器尝试通过
window.onbeforeonload
事件处理程序离开当前页面时增加一个计数器 - 设置一个计时器,通过
setInterval()
每毫秒触发一次,如果它看到计数器递增,则将当前位置更改为攻击者控制的服务器 - 该服务器提供一个带有 HTTP 状态代码 204 的页面,这不会导致浏览器导航到任何地方
关于javascript - 你能打败破框机吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7898503/