您的位置:首页 > 其它

[web安全] 浏览器安全

2015-06-26 14:17 169 查看
一、同源策略

浏览器的同源策略,限制了来自不同源的“document”或脚本,对当前“document”读取或设置某些属性。

所谓同源是指,域名,协议,端口相同。

存放JavaScript文件的域并不重要,重要的是加载JavaScript页面所在的域是什么。例如

a.com通过以下代码:<script src=http://b.com/b.js ></script>

加载了b.com上的b.js,但是b.js是运行在a.com页面中的,因此对于当前打开的页面(a.com页面)来说,b.js的Origin就应该是a.com而非b.com

在浏览器中,<script>,<img>,<iframe>,<link>等标签都可以跨域加载资源,而不受同源策略的限制。这些带“src”属性的标签每次加载时,实际上是由浏览器发起一次get请求。

补充:跨域资源共享的方式

一般受到同源策略的影响,跨域资源共享会受到制约。

单向跨域:

1.JSONP (JSON with Padding)

是一个简单高效的跨域方式,HTML中的script标签可以加载并执行其他域的javascript,于是我们可以通过script标记来动态加载其他域的资源。

2.window.name

双向跨域:

3.Cross Frame

是FIM的一个变种,它借助了一个空白的iframe

二、浏览器沙箱

在网页中插入一段恶意代码,利用浏览器漏洞执行任意代码的攻击方式,在黑客圈子里被形象地称为“挂马”。

Sandbox即沙箱,计算机技术发展到今天,Sandbox已经成为泛指“资源隔离类模块”的代名词。Sandbox的设计目的一般是为了让不可信任的代码运行在一定的环境中,限制不可信任的代码访问隔离区之外的资源。如果一定要跨越Sandbox边界产生数据交换,则只能通过指定的数据通道,比如经过封装的API来完成,在这些API中会严格检查请求的合法性。

三、恶意网址拦截

“挂马”攻击在实施时会在一个正常的网页中通过<script>或者<iframe>等标签加载一个恶意网址。各个浏览器的拦截恶意网址的功能都是基于“黑名单”的。

恶意网址拦截的工作原理很简单,一般都是浏览器周期性地从服务器端获取一份最新的恶意网址黑名单,如果用户上网时访问的网址存在于此黑名单中,浏览器就会弹出一个警告页面。

常见的恶意网址分为两类:一类是挂马网站,这些网站通常包含有恶意的脚本如JavaScript或Flash,通过利用浏览器的漏洞(包括一些插件、控件漏洞)执行shellcode,在用户电脑中植入木马;另一类是钓鱼网站,通过模仿知名网站的相似页面来欺骗用户。

PhishTank是互联网上免费提供恶意网址黑名单的组织之一。

除了恶意网址黑名单拦截功能外,主流浏览器都开始支持EV SSL证书(Extended Validation SSL Certificate),以增强对安全网站的识别,对抗钓鱼网站。

四、高速发展的浏览器安全

微软率先在IE8中推出了XSS Filter功能,用以对抗反射型XSS。当用户访问的URL中包含了XSS攻击的脚本时,IE就会修改其中的关键字符使得攻击无法成功完成,并对用户弹出提示框。

在Firefox4中推出了Content Security Policy(CSP),其做法是由服务器端返回一个HTTP头,并在其中描述页面应该遵守的安全策略。类似X-Content-Security-Policy:[POLICY]
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: