CSRF 攻击是什么?如何防范?

1. 什么是 CSRF 攻击

跨站请求伪造,利用用户在特定网站上的登录状态。诱导用户在不知情的情况下执行攻击者预定的一些操作。

简单来说,就是攻击者通过受害者浏览器发送一个恶意请求到已经登录的网站。由于浏览器会自动携带这个网站的 cookie 认证信息。网站误认为请求是用户自己发起的。从而执行恶意的操作。比如转账、修改密码、发布内容等。这个就是 CSRF 攻击。

2. 如何防范?

2.1 使用 token

在表单或 ajax 请求中加入一次性 token,服务器在接受请求后,除了验证 cookie 外,还会验证这个 token 是否有效和未被使用过。

2.2 验证 referer

服务端验证请求头中的 referer 字段,referer 字段代表请求发送的站点。

2.3 二次确认

对于敏感操作,要求用户二次确认。比如转账,可以让用户在转账前,再次输入密码或验证码确认。

2.4 使用安全矿建或库

像 VUE 或 React 等都是内置了防止这种攻击的机制。我们需要充分利用它的这个安全特性。

2.5 限制 API 访问接口

对于 API 接口使用 API 密钥,对请求进行一些合法性的管理,确保接口调用来至授权的这个地址。

相关推荐
Lsx_2 分钟前
微信支付接入全流程:JSAPI支付、小程序支付与H5支付
前端·javascript·全栈
斌糖雪梨7 分钟前
registerListeners(); 方法详解
网络·网络协议·rpc
OpenTiny社区19 分钟前
React 正式登场!GenUI SDK v1.4.0 三框架渲染、出码与 Agent 生态重磅升级~
前端·ai编程
Jtti23 分钟前
香港服务器CPU不高但用户请求排队的原因有哪些?
运维·服务器·网络
试图让你心动29 分钟前
【无标题】
前端·javascript·vue.js
Hilaku31 分钟前
为什么每个前端都应该拥有一个自己的独立博客?
前端·javascript·程序员
燕落南枝35 分钟前
CSS 后代选择器与子代选择器:从入门到实战
前端·css
Amos_Web38 分钟前
Rspack 源码解析(二十八):HtmlRspackPlugin 如何把模板变成带资源标签的最终产物
前端
马可家的菠萝40 分钟前
个人知识库怎么建?从一个正在学的技术主题开始
前端·笔记·知识管理·个人知识库
几何心凉41 分钟前
端到端具身交互智能正式上线:让 AI 通过屏幕和机器人,真正走进现实世界
前端·人工智能·实时互动·机器人·交互