读《白帽子讲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,有点像新冠隔离哈哈哈哈哈。

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进行处理,www.google.com\abc会被识别为正常的www.google.com/abc
如果这类“友好”的功能被和黑客利用,可能会用于绕过一些安全软件或模块。
第三章 跨站脚本攻击(XSS)
读《白帽子讲web安全》 ——笔记的更多相关文章
- 像计算机科学家一样思考Python(第2版)|百度网盘免费下载|Python新手入门资料
像计算机科学家一样思考Python(第2版)|百度网盘免费下载 提取码:01ou 内容简介 · · · · · · 本书以培养读者以计算机科学家一样的思维方式来理解Python语言编程.贯穿全书的主 ...
- 读《像计算机科学家一样思考python》——笔记
这本书,完全是入门级的,特别简单,一天多就看完. 目录: 第二章 变量.表达式和语句 第三章: 函数调用 第四章: 案例研究:接口设计 第五章 条件与递归 第六章:有返回值的函数 第七章 迭代 第八章 ...
- 像计算机科学家一样思考python-第3章 函数
在程序设计中,函数是指用于进行某种计算的一系列语句的有名称的组合.定义一个函数时,需要指定函数的名称并写下一系列程序语句.之后,就可以使用名称来“调用”这个函数 3.1函数调用 一个函数调用的例子 & ...
- 像计算机科学家一样思考python-第1章 程序之道
1.7调试 程序是很容易出错的.因为某种古怪的原因,程序错误被称为bug,而查捕bug的过程称为调试(debugging). 一个程序中可能出现3种类型的错误:语法错误.运行时错误和语义错误.对它们加 ...
- 像计算机科学家一样思考python-第4章 案例研究:接口设计
系统环境 ubuntu18 4.1turtle模块 模块一开始导入turtle模块就报错了 Python ( , ::) [GCC ] on linux Type "help", ...
- 《像计算机科学家一样思考Python》-递归
斐波那契数列 使用递归定义的最常见数学函数是 fibonacci (斐波那契数列),见其 定义 fibonacci(0) = 0 fibonacci(1) = 1 fibonacci(n) = fib ...
- 像计算机科学家一样思考python-第2章 变量、表达式和语句
感想: 1.程序出现语义错误时,画状态图是一个很好的调试办法.打印出关键变量在不同代码处理后值的变化,就能发现问题的蛛丝马迹. 2.每当学习新语言特性时,都应当在交互模式中进行尝试,并故意犯下错误,看 ...
- 《像计算机科学家一样思考Java》—— 读后总结
本书属于入门级的Java书籍,与其他的向编程思想.核心技术不同的是,这本书不是按部就班的讲解java变成知识,而是随着语言的深入慢慢增加知识点. 这本书以一个语言开发者的角度,深入浅出的讲解了Java ...
- s21day08 python笔记
s21day08 python笔记 一.现阶段所有内容回顾 以后把每天的笔记直接补充到python学习 二.进制 对于计算机而言无论是文件存储 / 网络传输输入本质上都是:二进制(0101010101 ...
- 嵩天老师的零基础Python笔记:https://www.bilibili.com/video/av13570243/?from=search&seid=15873837810484552531 中的1-14讲
#coding=gbk#嵩天老师的零基础Python笔记:https://www.bilibili.com/video/av13570243/?from=search&seid=1587383 ...
随机推荐
- PyQt(Python+Qt)学习随笔:QTreeWidgetItem项下的子项列表中增加子项的方法
老猿Python博文目录 专栏:使用PyQt开发图形界面Python应用 老猿Python博客地址 追加子项 QTreeWidgetItem类型的项构建以后,可以通过addChild(QTreeWid ...
- 【Azure Redis 缓存 Azure Cache For Redis】Azure Redis由低级别(C)升级到高级别(P)的步骤和注意事项, 及对用户现有应用的潜在影响,是否需要停机时间窗口,以及这个时间窗口需要多少的预估问题
问题描述 由于Azure Redis的性能在不同级别表现不同,当需要升级/缩放Redis的时候,从使用者的角度,需要知道有那些步骤? 注意事项? 潜在影响?停机事件窗口? 升级预估时间? 解决方案 从 ...
- JMeter断言/检查点
断言就类似LoadRunner中的检查点.对上一个请求返回的信息,获取部分字符串.图片等做判断,确保返回的信息的准确性. 右键点击"HTTP请求" -> "添加&q ...
- Scrum冲刺_Day06
一.团队展示: 1.项目:light_note备忘录 2.队名:删库跑路队 3.团队成员 队员(不分先后) 项目角色 黄敦鸿 后端工程师.测试 黄华 后端工程师.测试 黄骏鹏 后端工程师.测试 黄源钦 ...
- AcWing 400. 太鼓达人
大型补档计划 题目链接 神仙题.考虑转为图论模型. 若以 \(2 ^ k\) 个点,相互转化,很容易看出要求一个哈密尔顿环,显然对于 \(1000\) 规模的数据求不出来. 对于图论中环的算法,并且能 ...
- AcWing 309. 装饰围栏
题目链接 这道题与下一章的数位\(dp\)解题思路十分一致. 把寻找答案变成按位(并且是字典序从小到大)枚举当前这一位可以填的情况. 通过\(dp\)预处理的信息告诉我们可行性,就可以把答案紧逼到一个 ...
- mysql聚簇索引和非聚簇索引
聚簇索引 InnoDB使用的是聚簇索引 将数据与主键索引放在了一起,索引的叶子节点保存了行数据,找到了主键索引,即找到了行数据. 辅助索引记录了主键的位置,所以查询where name= xxx 时, ...
- Object not found! The requested URL was not found on this server.... 报错解决方案
服务器(centos6.5) lnmp 报错如下 Object not found! The requested URL was not found on this server. The link ...
- 面试 HTTP和HTML 浏览器
HTTP和HTML 浏览器 #说一下http和https #参考回答: https的SSL加密是在传输层实现的. (1)http和https的基本概念 http: 超文本传输协议,是互联网上应用最为广 ...
- Spark内核-任务调度机制
作者:十一喵先森 链接:https://juejin.im/post/5e1c414fe51d451cad4111d1 来源:掘金 著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注明出处. ...