浏览器5-浏览器安全简单了解
简介
一、同源策略
同源策略:url协议、域名、端口相同,就是同源。默认两个不同的源之间不能操作dom和访问资源
1.dom层面,不能互相访问,postmessage跨文档消息机制
2.数据层面,cookie,localstorage不能互相读取,
3.网络层面,不能跨域请求,跨域资源共享策略
二、安全问题
1. xss攻击,恶意脚本攻击
类型
1.存储型,在提交表单时把脚本提交,服务端保存在数据库,当返回给前端再使用时就会执行脚本
2.反射型,提交表单,服务端不保存,处理后即返回。提交脚本也就会返回脚本
3.页面劫持,本地抓包等方式,不经过服务端直接控制页面
方案
1.服务端对脚本过滤
2.csp策略:资源黑白名单,禁止加载哪些脚本,禁止向第三方域提交数据
3.设置cookie时加上httponly,则cookie无法通过脚本document.cookie读取
2. csrf攻击,跨站请求伪造
类型
1.img标签的src是一个请求,而不是图片资源。
2.点一个链接,自动发起请求
解决
1.设置cookie的samesite属性值是strict,在第三方域下请求本域时就不会带上有这个属性值的cookie,可以防止第三方域提交
2.服务器通过referer、origin判断请求来源
3.csrf token,通过前后端约定的特殊token,不存放在cookie中来判断是否安全
三、其他(未深入)
1.浏览器多进程结构,把渲染进程放到安全沙箱
2.https在tcp连接前引入安全层(让黑客在你电脑上安装了根证书,https也会变得不安全了!)