读《白帽子讲web安全》 ——笔记

第二章 浏览器安全 什么是同源策略?

同源策略,它是由Netscape提出的一个著名的安全策略。

现在所有支持JavaScript 的浏览器都会dao使用这个策略。

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

当一个浏览器的两个tab页中分别打开来 百度和谷歌的页面。

当浏览器的百度tab页执行一个脚本的时候会检查这个脚本是属于哪个页面的。

即检查是否同源,只有和百度同源的脚本才会被执行。

如果非同源,那么在请求数据时,浏览器会在控制台中报一个异常,提示拒绝访问。

同源策略的作用:

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

浏览器提出“Origin(源)”这一概念,来防止浏览器的页面行为发生混乱,不同源的对象无法互相干扰。

当a.com通过代码<script src=http://b.com/b.js ></script>加载了b.com上的b.js,但是由于b.js运行在a.com页面中,所以b.js的源就是a.com而非b.com(对当前页面而言)

当带“src”属性的标签需要跨站加载时,浏览器会发起一次GET请求。浏览器会限制其js的权限,使其不能读or写返回的内容。

如果XMLHttpRequest能跨域访问资源,则会导致敏感数据泄露,从而发生安全问题。

XMLHttpRequest跨域访问标准:通过目标域返回的HTTP头来授权是否允许。 方案安全基础:JS无法控制HTTP头。

浏览器沙箱(Sandbox):

Sandbox设计目的:为了让不可信任的代码运行在一定的环境中,限制不可信任的代码访问隔离区之外的资源。emmmmm,有点像新冠隔离哈哈哈哈哈。

读《白帽子讲web安全》 ——笔记

 

Google Chrome 的 Sandbox架构

多进程架构最明显的好处就是在浏览器发生崩溃时,多进程浏览器只会崩溃当前Tab页,对其他页面没有影响

2.3恶意网址拦截

对处于“黑名单”的恶意网址进行拦截。常见的恶意网站:一类是挂马网站(这类网站通常包含恶意的脚本如JS或Flash,通过利用浏览器漏洞来执行shellcode,在电脑中植入木马);另一类钓鱼网站(通过模仿知名网站的相似页面来欺骗用户)。

主流浏览器开始支持EV SSL证书,以增强对安全网站的识别。

2.4高速发展的浏览器安全

今天浏览器仍在不断更新,微软在IE8中推出的XSS Filter功能,可以修改XSS攻击的脚本中的关键字,使其攻击无效,并对用户弹出提示框。

使用CSP的方法如下,插入一个HTTP返回头:

X-Content-Security-Policy:policy

其中policy的描述很灵活,比如:

X-Content-Security-Policy:allow 'self' *.mydomain.com

这样浏览器将信任来自mydomain.com及其子域下的内容。

随着浏览器的发展,客户的浏览体验也越来越好,但随之而来的是许多看似“友好”的功能可能会导致一些安全隐患

例如许多浏览器地址栏会对畸形的URL进行处理,\abc会被识别为正常的

如果这类“友好”的功能被和黑客利用,可能会用于绕过一些安全软件或模块。

第三章 跨站脚本攻击(XSS)

 

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wsswyf.html