IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 网络协议 -> 浏览器默认设置SameSite属性的作用 -> 正文阅读

[网络协议]浏览器默认设置SameSite属性的作用

浏览器默认设置SameSite属性的作用


前言

Google 在2020年2月4号发布的 Chrome 80 版本中默认屏蔽所有第三方 Cookie,即默认为所有 Cookie 加上 SameSite=Lax 属性,并且拒绝非Secure的Cookie设为 SameSite=None;SameSite的作用就是防止跨域传送cookie,从而防止 CSRF 攻击和用户追踪。


一、CSRF 攻击是什么

CSRF(Cross-site request forgery),中文名称:跨站请求伪造

CSRF攻击往往通过盗取你的 Cookie 信息,而Cookie 往往用来存储用户的身份信息,在盗取完你的 Cookie 信息后;恶意网站可以设法伪造带有正确 Cookie 的 HTTP 请求,这就是 CSRF 攻击。

简单来说就是:攻击者盗用了你的身份,以你的名义发送恶意请求。

一个典型的CSRF攻击有着如下的流程:

  1. 当你(受害者)登陆了某个网站AAA.com,验证身份通过后,服务器发来了一个Cookie以确定受害者的身份;于是受害者在本地生成了Cookie。
  2. 在这之后,受害者在未登出AAA.com的情况下,又访问了另一个危险网站BBB.com
  3. BBB.com此时会想要访问AAA.com,于是发送请求,进行想要进行的操作。此时的浏览器会默认携带AAA.com的Cookie。
  4. AAA.com接收到请求后,对请求进行验证,通过其请求中携带AAA.com的Cookie确认是你的身份凭证,误以为是受害者发送的请求。于是就接受了该请求进行相应操作
  5. 至此,CSRF攻击完成,攻击者在受害者不知情的情况下,冒充受害者,让AAA.com执行了自己定义的操作。

CSRF能够做的事情包括:以你名义发送邮件,发消息,盗取你的账号,甚至于购买商品,虚拟货币转账…造成的问题包括:个人隐私泄露以及财产安全。


二、SameSite 属性

为了防止CSRF这种攻击行为,在chrome80版本以后默认把cookie的SameSite属性设置为Lax,以此来对第三方cookie做一些限制,这样就能大大地降低被CSRF攻击的风险了。

通过设置Cookie 的SameSite属性用来限制第三方 Cookie,从而减少安全风险。

SameSite可以设置三个值。

  • Strict
  • Lax
  • None
  1. Strict
    Strict最为严格,完全禁止第三方 Cookie,跨站点时,任何情况下都不会发送 Cookie。换言之,只有当前网页的 URL 与请求目标一致,才会带上 Cookie。

  2. Lax
    Lax规则稍稍放宽,大多数情况也是不发送第三方 Cookie,但是导航到目标网址的 Get 请求除外。

  3. None
    Chrome 计划将Lax变为默认设置。这时,网站可以选择显式关闭SameSite属性,将其设为None。
    不过,前提是必须同时设置Secure属性(Cookie 只能通过 HTTPS 协议发送),否则无效。

代码如下(示例):

下面的设置无效。

Set-Cookie: widget_session=abc123; SameSite=None

下面的设置有效。

Set-Cookie: widget_session=abc123; SameSite=None; Secure

参考文献:

  1. 阮一峰的《Cookie 的 SameSite 属性》。
  2. gjt19970425的《浏览器的SameSite策略
  3. hyddd的《浅谈CSRF攻击方式
本文简单介绍为何chrome要做此次SameSite默认策略的升级,然后简单介绍了CSRF攻击与SameSite对应的三个属性
  网络协议 最新文章
使用Easyswoole 搭建简单的Websoket服务
常见的数据通信方式有哪些?
Openssl 1024bit RSA算法---公私钥获取和处
HTTPS协议的密钥交换流程
《小白WEB安全入门》03. 漏洞篇
HttpRunner4.x 安装与使用
2021-07-04
手写RPC学习笔记
K8S高可用版本部署
mySQL计算IP地址范围
上一篇文章      下一篇文章      查看所有文章
加:2022-02-01 20:56:37  更:2022-02-01 20:58:02 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/26 10:41:07-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码