CSRF的攻防

https://portswigger.net/web-security/csrf
CSRF存在的情况:

  • 存在一个关键动作(转账、改密码、改邮箱等敏感的增删改查操作)
  • 应用对用户鉴权身份认证是基于session cookie的(浏览器会自动将相应域的cookie带上去访问相关请求,如果是特定请求头比如HTTP basic认证或者特殊token请求头认证,则浏览器不会自动带上)
  • 攻击者可以知道完成请求所需的所有参数

CSRF防御

CSRF token

在对应敏感操作的页面里生成CSRF token,这个token要跟session相关,而不是全局的那种(这种情况,攻击者可以先用自己的帐号登录获取这个token之后,再将这个token构造到特意表单里去,绕过防御)。

验证Referer

Referer请求头是一种HTTP请求头,用于表示在发起某个请求前所在的页面。当用户点击链接,或者提交表单时,由浏览器自动带上。

发布了601 篇原创文章 · 获赞 101 · 访问量 100万+

猜你喜欢

转载自blog.csdn.net/caiqiiqi/article/details/103776229