第 2 章 浏览器安全
2.1 同源策略
同源策略( Same Origin Policy )是一种约定,它是浏览器最核心也最基本的安全功能,如果缺少了同源策略,则浏览器的正常功能可能都会受到影响。可以说 Web 是构建在同源策略的基础之上的,浏览器只是针对同源策略的一种实现。
浏览器的同源策略,限制了来自不同源的“ document ”或脚本,对当前“ document ”读取或设置某些属性。
在浏览器中,<script>
、<img>
、<iframe>
、<link>
等标签都可以跨域加载资源,而不受同源策略的限制。这些带“ src ” 属性的标签每次加载时,实际上是由浏览器发起了一次 GET 请求。不同于 XMLHttpRequest 的时,通过 src 属性加载的资源,浏览器限制了 JavaScript 的权限,使其不能读、写返回的内容。
XMLHttpRequest 跨域访问需要通过目标域返回的 Http 头来授权是否允许跨域访问。
2.2 浏览器沙箱
网页中插入一段恶意代码,利用浏览器漏洞执行任意代码的攻击方式,在黑客圈子里被形象地称为“挂马”。