
前言
网站通常会使用 cookie来记录用户的登录状态,但并非安全,因为 cookie被允许在第三方网站(也不仅限于第三方)发起的请求中携带,因此利用这一点可以达到
CSRF 攻击。本文不再对 CSRF 的原理作过多阐述, 点击这里了解CSRF [https://zh.wikipedia.org/wiki/跨站请求伪造] 。
如果别人问起防 CSRF 的方法有哪些,大家通常会说出:Token +
Referer,该方案在业界已经非常成熟。当一个问题有了解决办法后,就很人有人会去了解别的方案,我想听听不同的声音。
有位社会人曾经说过:有趣的灵魂万里挑一。
本文给大家介绍另一种防 CSRF 的方法。
第三方请求
开始前我们先了解一下 第三方请求 ,什么样的请求被称为第三方请求?简单来说就是在一个网页上发起一个不同源的请求,那么我们可以称为第三方请求。
在一个页面上发起一个第三方请求可以分为有 异步请求 和 同步请求:
1、 异步请求 指的是在当前页面上通过 script 、 link 、 img 、 fetch 、 XHR 等方法发起的请求,这些都不会让页面发生变化,也不会打开新的页面。