很多人在学习csrf的时候,书本和文章上都会写到,在a站点面嵌入一个b站点的链接,那么浏览器在请求b页面的资源时会自动带上b的cookie。

不过我觉得这些文章的内容已经有些过时了,近期在解决内部的一个csrf问题时,发现当前浏览器已经默认启用了cookie中的samesite保护机制,这种跨域的csrf想利用已经很难了。

简单来说就是服务端在返回set-cookie时,可以加上一个samesite属性,这个属性有三个值:lax/strict/none

lax:跨域的请求不会带上cookie,不过如果是从a站点跳转到b站点,这个时候会带上b的cookie。

strict:只要是跨域的请求都不会带上目标站点的cookie。

none:不做限制,但是必须配合secure属性使用,否则不生效。

这里需要注意的是,如果在set-cookie时没有设置samesite,那么默认就会采用lax方案。

参考链接:SameSite cookies - HTTP | MDN

csrf 与 samesite相关推荐

  1. CSRF(Cross-Site Request Forgery) 跨站请求伪造

    一.什么是跨站请求伪造 1. 什么是跨站请求伪造 定义: 跨站点请求伪造(也称为CSRF)是一种Web安全漏洞,允许攻击者诱使用户执行他们不打算执行的操作.它允许攻击者部分绕过同源策略. 危害: 在受 ...

  2. csrf验证问题 -- 不同域名下Iframe嵌套Cookie失效导致csrf验证失败

    问题原因 Cookie:SameSite Chrome 51 开始,浏览器的 Cookie 新增加了一个SameSite属性,主要用于防止CSRF攻击和用户追踪. cookie的SameSite属性用 ...

  3. 史上最全面、最详细的Cookie总结

    1. Cookie 产生的背景 我们都知道,HTTP 协议是无状态的,服务器无法知道两个请求是否来自同一个浏览器,也不知道用户上一次做了什么,每次请求都是完全相互独立,这严重阻碍了交互式 Web 应用 ...

  4. Palo Alto Networks WAF简介

    Palo Alto帕罗奥图市位于加利福尼亚州旧金山湾区,是一个Charter City,类似我国的自治区.该市拥有居民7万多人,也是全美生活成本最高的城市之一. 著名的斯坦福大学坐落于此,居民平均受教 ...

  5. SameSite Cookie,防止 CSRF 攻击

    因为 HTTP 协议是无状态的,所以很久以前的网站是没有登录这个概念的,直到网景发明 cookie 以后,网站才开始利用 cookie 记录用户的登录状态.cookie 是个好东西,但它很不安全,其中 ...

  6. 前端安全之CSRF攻击

    个人博客 文章目录 注意点 几种常见的 CSRF 攻击: 1. GET 类型的 CSRF 攻击 2. POST 类型的 CSRF 攻击 3. 链接类型的 CSRF CSRF 特点 防护策略 同源检测 ...

  7. 带你刷burpsuite官方网络安全学院靶场(练兵场)之客户端漏洞——跨站请求伪造(CSRF)专题

    介绍 PortSwigger是信息安全从业者必备工具burpsuite的发行商,作为网络空间安全的领导者,他们为信息安全初学者提供了一个在线的网络安全学院(也称练兵场),在讲解相关漏洞的同时还配套了相 ...

  8. 跨站点请求伪造(CSRF)总结和防御

    什么是CRSF 构建一个地址,比如说是删除某个博客网站博客的链接,然后诱使已经登录过该网站的用户点击恶意链接,可能会导致用户通过自己的手将曾经发布在该网站的博客在不知情的情况下删除了.这种构建恶意链接 ...

  9. ASP.NET Core Cookie SameSite

    在较多的项目中,Cookie 是比较常用的一种状态保持的选择.比如常见的例子:用户登录成功后,服务器通过 set-cookie 将会话Id设置到当前域下,前端在调用后端接口时,会自动将同域下的 Coo ...

  10. 同源策略为什么可以防csrf_Spring Security 如何预防CSRF跨域攻击?

    序言 前面我们学习了 spring security 与 springmvc 的整合入门教程. spring secutity整合springboot入门 spring security 使用 mav ...

最新文章

  1. 再见,FastJson...
  2. 程序员 35 岁就该退休了吗?
  3. 面试这么多人,发现越是没本事的人,自尊心越强
  4. 学霸孩子必备的三种思维,编程思维的速成方法
  5. 解析html语言的软件,小程序解析html标签 div-Go语言中文社区
  6. 一个http-request的源码及改进
  7. 编码方式_【每日一题】| 常见的编码方式之栅栏密码
  8. Winrunner与QTP
  9. Java关于延迟加载的一些应用最佳实践
  10. php 判断是否为安卓,通过http user-agent判断是否为手机浏览器
  11. 有向图的强连通分量--Tarjan算法---代码分析
  12. 2016.8.7 UnicodeEncodeError 同时遍历多个list
  13. win7计算机自动关机设置在哪里设置方法,win7怎么设置自动关机【详细步骤】
  14. 南京邮电大学电工电子基础B实验二(电气参数测量和伏安特性)
  15. 微信小程序地图插件系列(一):微信小程序使用高德地图(不定期更新)
  16. Ubuntu 无法连接网络
  17. Java接口实现打印机
  18. CornerNet Guassian radius高斯半径的确定-数学公式详解
  19. Debian安装中文输入法
  20. 这届90后女博士,对30岁不屑一顾

热门文章

  1. ckpt2npy和npy2ckpt转换
  2. 怎样了解存在---辩证唯物主义认识论
  3. 马克思对“货币之谜”的 历史唯物主义解答
  4. 安卓设备如何ROOT?玩转ROOT,让你的安卓手机更强更好用
  5. 机器学习方向上还有没有创新点呢?
  6. 电脑被流氓软件入侵?教你彻底清除
  7. 计算机导师问读研计划和后续计划,考研面试,问“研究生时期的规划”怎么回答急...
  8. 数据分析报告怎么写?这5个步骤你必须了解
  9. QT使用PaddleOCR和百度OCR进行文字识别
  10. matlab PID学习