CSRF

# 什么是CSRF

摘自百度百科: 跨站请求伪造(英语:Cross-site request forgery),也被称为 one-click attack 或者 session riding,通常缩写为 CSRF 或者 XSRF, 是一种挟制用户在当前已登录的Web应用程序上执行非本意的操作的攻击方法。跟跨网站脚本(XSS)相比,XSS 利用的是用户对指定网站的信任,CSRF 利用的是网站对用户网页浏览器的信任。

# 防范

  • GET请求不对数据进行修改
  • 不让第三方网站访问到用户的cookie, 设置SameSite
res.cookie('rememberme', '1', 
  {
    expires: new Date(Date.now() + 900000),
    httpOnly: true,
    sameSite: "Strict"
  });
1
2
3
4
5
6
  • 检验HTTP请求头Referer字段
  • 请求时附带验证信息,比如验证码或者Token
上次更新: 2020-03-05 12:24:53