我正在尝试做一个跨框架脚本攻击(https://www.owasp.org/index.php/Cross_Frame_Scripting)的PoC,以在我的工作中显示这种攻击对于任何版本的IE浏览器都是多么危险。通过在IE8或更高版本上使用X-FRAME-OPTIONS: deny报头,可以轻松防止此攻击。但是,如果每个开发人员在所有web服务器响应中都包含这样的标头,那就更好了。使用下面的代码,我可以看到带有键代码的警告窗口,但是对于目标页面上的表单,我看不到表单内部按下的键的字母。
<script>
window.onkeydown = function() {
alert(window.event.keyCode);
}
</script>
<frameset onload="this.focus()" onblur="this.focus()">
<frame src="http://www.uol.com.br">
</frameset>使用下面的简单代码,我可以按下键并同时看到两者(警告窗口和窗体中的字母)。
<script>
window.onkeydown = function() {
alert(window.event.keyCode);
}
</script>
<input>第一个代码块中是否缺少了什么?谢谢!
发布于 2014-01-27 02:54:10
您的代码可能没有任何问题。跨框架脚本并不是真正的漏洞-它只是旧版本Internet Explorer中的一个漏洞,该漏洞包含在父帧内触发onkeypress事件的错误,尽管域与通常受Same Origin Policy保护的域不匹配。
其他跨框架脚本攻击仅仅是具有不同名称的Cross Site Scripting攻击,因为它们涉及框架。
https://stackoverflow.com/questions/21365297
复制相似问题