web安全——CSRF攻击

CSRF(Cross—Site Request Forgery)跨站点请求伪造,主要是利用浏览器端未过期的cookie信息伪造身份通过服务器的身份验证。

一、示例

现在有一个存在CSRF漏洞的网站A,攻击者的网站B,用户User

  1. 用户打开浏览器访问网站A,登录用户密码;
  2. 网站A返回用户的cookie信息,保存到用户浏览器;
  3. 用户未退出网站A之前,打开一个Tab页面,访问攻击者网站B;
  4. 攻击者返回一段代码,这段代码将会在用户浏览器自动执行并向刚刚的网站A发起一个请求;
  5. 由于浏览器请求会自动携带上cookie,A网站直接使用cookie通过身份验证,攻击者完成身份伪造。
二、防御
  1. 验证 referrer(同源策略)
    (1)原理: referrer 字段记录的是请求是从哪个网站发送来的,由浏览器生成,新版浏览器一般无法自己伪造。攻击者只能在他自己的网站里边发起请求,浏览器自动带上的referrer是攻击者的网址。服务器只要检测referer是不是自己信任的网站即可。
    (2)缺陷:
    a. 部分旧版浏览器发现其referrer可以被篡改
    b. 用户可能由于维护隐私要求浏览器不自动携带referrer字段,这可能会导致一些合法用户的合法请求被服务器拒绝
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值