浅谈CSRF跨域攻击

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/yyy72999/article/details/80319546

CSRF(Cross Site Request Forgery)

  1. 跨站请求伪造。在用户不知情的情况下以用户的名义向有CSRF漏洞的网站发起攻击,有很大的危害性。
  2. 预防:在header中添加一个随机token,和cookie中的csrftoken进行比较,如果不相同,则表示该请求是CSRF攻击。
  3. 原理:网站可以伪造header中的东西,但不能读cookie中的数据,而token是个随机数,所以伪造的token很难跟cookie中的csrftoken保持一致。 ###body 里面的csrf值 必须和cookie里面的值相等,这样才认为是合法的,

    没有用csrf之前:

    • 请求一个转账安全的转账页面 -> 登陆账号 -> 登陆成功 -> 设置cookie -> 转账成功 -> 未退出;
    • 请求一个危险的图片网站 -> 每一次刷新 -> 危险网站页面会隐藏一个htmliframe表单 ,action请求到 转账页面地址 -> 转账目标用户为自己 -> 这样每一次刷新 都会隐匿式的提交到转账页面
    • 属于危险网站借用用户的cookie去访问未退出的转账页面

防范原理:

  • 不登陆或者退出
  • 在表单页面添加一个随机的token然后每一次请求页面都会在 cookie中添加 一个随机token对比
  • HTTP 头中加Refere字段
  • 在 HTTP 头中自定义属性并验证

猜你喜欢

转载自blog.csdn.net/yyy72999/article/details/80319546