白帽子讲web安全之 浏览器安全

(一些内容属于个人理解,如有错误请不吝指正)

同源策略

概念

所谓同源,一般是指域名、协议、端口相同。一般来说,只有同源的页面可以互相读取彼此的数据,或者改变彼此在浏览器中的显示。

怎样算是同源?

借用书上的一个例子:
网页a.com通过一下代码加载b.com上的js文件:

 > \<script src = http://b.com/b.js > \</script>

对于当前的页面来说,b.js被加载到了a.com上,所以b.js的“源”就是a.com。也就是说,对于当前页面来说,页面内存放js文件的域并不重要,重要的是加载js页面所在的域。

  • 注意:
    在浏览器中,<script>、<img>、<iframe>、<link>等标签都可以跨域加载资源,不受同源策略的影响。这戏带src属性的标签每次加载时,实际上是由浏览器发起了一次GET请求。

XMLHttpRequst

XMLHttpRequst对象,通过src属性加载的资源,浏览器限制了js的权限,使其不能读、写返回的内容。
之前XMLHttpRequst不能跨域访问资源,但是后来W3C委员会制定了标准,使其可以在符合标准的情况下跨域访问。即通过目标域返回的HTTP头来授权是否允许跨域访问

浏览器插件

浏览器的一些第三方插件一般也都有自己的同源策略,以Flash为例:

  1. 通过目标网站提供的crossdomain.xml文件来判断是否允许当前“源”的Flash跨域访问目标资源
  2. 检查MIME以确认crossdomain.xml是否合法
  3. 检查crossdomain.xml是否在根目录下

浏览器沙箱(sandbox)

概念

目前泛指“沙箱”为“资源隔离模块”的代名词。

目的

一般是为了让不可信任的代码运行在和其它代码隔离的环境中,限制不可信任的代码访问隔离区之外的资源。如果一定要跨越sandbox边界,只能通过一定的数据通道,比如经过封装的API等。
而浏览器采用sandbox技术,可以避免不受信任的网页代码或者js代码危害本地桌面系统的安全。

浏览器的多进程架构

浏览器的多进程架构可以把浏览器的各个功能模块分开,避免一个进程崩溃影响所有进程。
为什么浏览器使用多进程架构?

白帽子讲web安全之 浏览器安全相关推荐

  1. 《白帽子讲Web安全》浏览器安全

    客户端脚本安全-浏览器安全 文章目录 客户端脚本安全-浏览器安全 前言 浏览器安全功能 一.同源策略(Same Origin Policy) 介绍 什么是同源策略? 什么是源? 影响源的因素 同源策略 ...

  2. 读《白帽子讲Web安全》之客户端脚本安全(一)

    2019独角兽企业重金招聘Python工程师标准>>> [第2章  浏览器安全] 1.同源策略(Same Origin Policy)是一种约定,它是浏览器最核心也最基本的安全功能. ...

  3. 读白帽子讲WEB安全,摘要

    读<白帽子讲WEB安全>摘要 文章目录 我的安全世界观 安全三要素-CIA 如何实施安全评估 白帽子兵法 客户端安全 浏览器安全 同源策略 浏览器沙箱 恶意网址拦截 高速发展的浏览器安全 ...

  4. 白帽子讲WEB安全读书笔记(慢慢更新)

    道哥写的白帽子讲WEB安全的读书笔记 文章目录 2020.3.23 ◆ 前言 ◆ 第一篇 世界观安全 1.1 Web安全简史 >> 1.1.1 中国黑客简史 >> 1.1.2 ...

  5. 在学习web安全的小白看过来,这本《白帽子讲web安全》强烈推荐,必读!(附PDF)

    Web是互联网的核心,是未来云计算和移动互联网的最佳载体,因此Web安全也是互联网公司安全业务中最重要的组成部分. 前排提醒:文末有pdf领取 下面来看看几种常见的web漏洞: 1.XSS跨站脚本攻击 ...

  6. 《白帽子讲Web安全》读后感 —— 对道哥的致敬

    <白帽子讲Web安全>读后感 --Deep Blue (一个安全小兵的感受) 这是一篇作业:这是一篇读后感:这是一篇记录安全的感悟:这是一篇对道哥的敬仰:这是我安全启蒙的钥匙...... ...

  7. 《白帽子讲Web安全 -- 纪念版 吴翰清著》读后随笔

    <白帽子讲Web安全 – 纪念版 吴翰清著> 该书大多数内容举例大多数是2010年左右的 相隔11年左右, 但是内容并没有被淘汰, 感觉很适合入门, 因为内容详细且比较基础 当然, 这只是 ...

  8. 初出牛犊的站长读《白帽子讲web安全》有感

    初出牛犊的站长读<白帽子讲web安全>有感 一.前言--一百个读者的心目中有一百个哈姆雷特 前言的作者经历,会是每个初初恋上计算机的学生碰到的事.曾记得当时候,我第一次接触病毒是在初中的科 ...

  9. 学习web安全,强烈推荐这本《白帽子讲web安全》!

    Web是互联网的核心,是未来云计算和移动互联网的最佳载体,因此Web安全也是互联网公司安全业务中最重要的组成部分. 下面来看看几种常见的web漏洞: 1.XSS跨站脚本攻击 XSS跨站脚本攻击,通常指 ...

最新文章

  1. Excel打开csv文件显示乱码问题解决方法
  2. 权限问题导致zabbix无法监控mysql
  3. 利用python实现ORM
  4. poj 1006(中国剩余定理+模板题)
  5. 层次分析法AHP - 代码注释多 - ( 数据建模 Python代码)
  6. android 推送的小图标,android - 推送通知中没有声音并且没有自定义的小图标 - 堆栈内存溢出...
  7. 冒泡排序(【CCF】NOI Online能力测试 提高组第二题)
  8. 拓端tecdat|互联网热门职位薪资对比报告
  9. shopex php5.3 无法安装,php版本导致shopex4.8.5安装的问题
  10. 永恒之塔总是服务器未响应,《剑网3》《永恒之塔》怀旧服刚开上演“冲级热”,八月怀旧游戏集体搞事...
  11. CM108AH和DP108/DP108T的区别
  12. 【蓝桥杯每日一练:蹩脚两轮车】
  13. linux脚本-z,shell脚本中的-a到-z的意思
  14. 【在线笔试题解题报告系列】Google APAC 2017 University Test Round B
  15. 我国各城市间航空班次
  16. Solve equation
  17. 和Sun一起开源(武林外传游戏外挂Java源代码) - 论坛版
  18. org.apache.tomcat.util.http.parser.Cookie.logInvalidHeader 收到包含无效cookie的cookie头(含图文)
  19. 不是维修计算机常用的工具有哪些,常用维修工具有哪些
  20. 几款实用的开源桌面软件

热门文章

  1. lab值意义_色差仪lab值含义是什么?
  2. git上传文件到gitee
  3. java通过输入的方式给int数组赋值并输出数组
  4. Linux下使用Shell脚本实现反向ssh自动交互
  5. 跨境电商淘宝详情解决方案
  6. 洛谷P2058 海港
  7. 绝对干货3000字,手把手带你用Python实现一个量化炒股策略,小白也能看得懂!...
  8. 华为虚拟服务器忘记密码,华为云服务器忘记密码了怎么办
  9. Java Semaphore实现高并发场景下的流量控制(附源码) | 实用代码架构
  10. js 重置表单 reset form