加载中...

| 类型 | Web 安全漏洞与攻击方式 |
| 英文全称 | Cross-Site Request Forgery |
| 常见缩写 | CSRF、XSRF |
| 别名 | One-click attack、Session riding |
| 主要影响 | 已登录用户的状态变更操作 |
跨站请求伪造(CSRF)是一种诱使已登录用户的浏览器向目标网站发送非本人意愿请求,从而借用其身份执行操作的 Web 安全攻击。
用户登录网站后,浏览器通常会在后续请求中自动携带 Cookie 等身份凭据。攻击者可通过恶意网页、链接或表单构造请求;如果目标网站只验证登录状态,而没有确认请求是否由用户主动发起,就可能接受该请求。
CSRF 常被称为 one-click attack 或 session riding。它通常用于修改账户资料、绑定联系方式、提交交易或更改安全设置。受同源策略限制,攻击页面一般无法直接读取目标网站的响应,但这并不妨碍其触发具有副作用的操作。
网站应为改变状态的请求加入不可预测并与会话绑定的 CSRF Token,同时校验 Origin 或 Referer。Cookie 可设置合适的 SameSite 属性,敏感操作还可要求重新验证密码或进行多因素认证。开发者不应使用 GET 请求执行删除、转账等状态变更,也不能把验证码或跨域限制当作唯一防线。
问:使用 HTTPS 能防止 CSRF 吗?答:不能。HTTPS 可保护传输过程,但无法判断请求是否符合用户真实意愿。
问:前后端分离应用也会受到影响吗?答:可能会。如果认证信息通过 Cookie 自动发送,仍需采取 Token、SameSite 和来源校验等措施。
问:CSRF Token 为什么有效?答:攻击者通常无法读取目标站点页面中的随机令牌,因此难以构造能通过服务器校验的请求。

| 类型 | Web 安全漏洞与攻击方式 |
| 英文全称 | Cross-Site Request Forgery |
| 常见缩写 | CSRF、XSRF |
| 别名 | One-click attack、Session riding |
| 主要影响 | 已登录用户的状态变更操作 |
登录 后参与讨论
暂无讨论,来发表第一条评论吧