CSRF漏洞

原理

攻击者使用用户的身份执行用户未授权的操作,攻击者以你的名义执行了操作,达到了攻击者的目的,这对浏览器来说是合法的但你不知道,大多数情况下是用户在浏览器保持登录的状态下被攻击者诱使点击了恶意链接从而被攻击者窃取了身份

危害

以受害者的名义发邮件、消息,获取用户信息,盗取用户帐密,甚至冒充用户身份购买商品,转账等

csrf漏洞挖掘

1.抓包,如果没有referer字段和cookie,那么大概率有csrf漏洞

2.如果请求包里有referer,去掉referer字段后再次发送,如果数据包还有效大概率存在csrf漏洞

3.工具扫描,如CSRFTESTER,CSRF REQUEST BULIDER等

利用

目前admin用户余额70299
hacker余额300
在这里插入图片描述
在这里插入图片描述
此时admin用户在保持登录的状态下点击了恶意链接,并且被诱惑点击了屠龙宝刀
在这里插入图片描述在这里插入图片描述
此时hacker账户多了100,admin少了100,在admin用户不知情的情况下完成了转账
在这里插入图片描述

在这里插入图片描述

防御

1.添加验证码

1.验证 http referer字段,根据 HTTP 协议,在 HTTP 头中有一个字段叫Referer,它记录了该 HTTP 请求的来源地址,因此,要防御 CSRF 攻击,银行网站只需要对于每一个转账请求验证其 Referer 值,如果是以 bank.example 开头的域名,则说明该请求是来自银行网站自己的请求,是合法的。如果 Referer 是其他网站的话,则有可能是黑客的 CSRF 攻击,拒绝该请求。

2.在请求中添加token并验证,可以在 HTTP 请求中以参数的形式加入一个随机产生的 token,并在服务器端建立一个拦截器来验证这token,如果请求中没有 token 或者 token 内容不正确,则认为可能是 CSRF 攻击而拒绝该请求。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值