Web安全—跨站请求伪造攻击(CSRF)

  • Post author:
  • Post category:其他




CSRF(Cross-site request forgery)跨站请求伪造


提要

:CSRF(Cross-site request forgery)跨站请求伪造属于客户端攻击,一句话可以总结为:

攻击者盗用了用户的身份信息,以用户的名义发送恶意请求,对服务器来说这个请求是用户发起的,但却完成了攻击者所期望的一个操作。



原理讲解:


在这里插入图片描述


第一步

:用户通过浏览器登陆访问目标网站A,网站A会返回给浏览器用户的认证信息(cookie或sessionid),此时对于网站A,用户的请求都是合法的


第二步

:在网站A不退出,浏览器不关闭的情况下(目的是保证认证信息不失效),用户点击了黑客构造的恶意链接(恶意链接的内容是去访问网站A,对网站A产生影响)


第三步

:网站A响应执行黑客构造的恶意链接,攻击发生(因为此时恶意链接带了用户的认证信息,所以网站A认为恶意链接是合法的)

在这里插入图片描述


利用条件:


1,已登陆系统,用户访问URL,已存在的网站中允许用户跳转(认证信息不失效)

2,欺骗用户访问URL


漏洞危害



修改用户信息:用户头像,发货地址,添加账号,删除账号等


CSRF防护手段



1,设置随机Token进行验证

2,验证HTTP请求的Referer字段

3,设置验证码

4,限制请求方法最好为POST请求

5,当用户发送重要的请求需要输入登陆原始密码

CSRF通过和XSS漏洞一起结合使用,XSS可以进行cookie窃取和session劫持,从而为CSRF获取到认证信息。



版权声明:本文为weixin_44431280原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。