Javascript 帧onkeydown反馈

Javascript 帧onkeydown反馈,javascript,security,internet-explorer,frame,xfs,Javascript,Security,Internet Explorer,Frame,Xfs,我正在尝试对跨帧脚本攻击()进行PoC,以在我的工作中显示这种攻击对于任何版本的IE浏览器都有多危险。 通过在IE8或更高版本上使用X-FRAME-OPTIONS:deny标头,可以轻松防止此攻击。但如果每个开发都在所有web服务器响应中包含这样的头,那就太好了。 使用下面的代码,我可以看到带有键代码的警报窗口,但如果目标页面上有表单,我看不到表单中按下的键的字母 <script> window.onkeydown = function() {

我正在尝试对跨帧脚本攻击()进行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>

window.onkeydown=函数(){
警报(窗口、事件、键码);
}
使用下面的简单代码,我可以按下键并同时看到(警报窗口和表单中的字母)


window.onkeydown=函数(){
警报(窗口、事件、键码);
}
第一个代码块上是否缺少某些内容?
谢谢

您的代码可能没有问题。跨帧脚本不是一个真正的漏洞-它只是旧版本Internet Explorer中的一个漏洞,其中包含一个在父帧内触发
onkeypress
事件的漏洞,尽管域不匹配,但通常由


其他跨帧脚本攻击只是具有不同名称的攻击,因为它们涉及帧。

点击劫持攻击如何?诚然,它们的攻击面很小(只有鼠标点击才能触发有意义的状态更改),但它们仍然不同于XSS。我同意你的观点,但这就是我的观点:点击劫持就是点击劫持,我不会称之为跨帧脚本。XFS似乎在几种不同类型的攻击之间混为一谈,而该漏洞只属于单一类别(xss、浏览器错误或点击劫持)。我同意添加标题是个好主意,尽管这可以在web服务器级别而不是应用程序级别完成。谢谢@SilverlightFox!我使用IE11测试了第一个代码,我可以看到带有按键html代码的警报窗口。我可以使用ajax发出请求并将关键代码发送到恶意站点。问题是,我无法在输入框中看到相应的字母,这意味着任何用户都会认为站点存在问题,因为他/她看不到他们正在键入的内容。@Ricardo.Iramar这似乎是Microsoft插入漏洞的方式。事件在框架集页面中处理,防止抓取输入框架页面的文本。