一、CSRF是什么?
通过浏览器冒充用户身份向服务器发送伪造请求并成功执行。
二、攻击原理
1、用户正常登入受信任的网站A,输入账号密码登入
2、登入成功网站返回Cookie
3、用户未退出的网站,访问网站B
4、网站B接收到请求,返回恶意代码。并发出一个请求访问站点A ,此时会携带用户的cookie进行访问。
三、 CSRF的危害
CSRF工具特:
攻击时机: Cookie没有过期,
攻击前提: 了解网站接口
攻击难度:大于XSS
危害:修改密码、转账、删除数据
四、如何防护
1、referer校验
当浏览器向Web 发送请求时,header中有个referer字段表明是从哪里发出的,正常应该从本网站域名发出,登入的时候例外。在网关中防止过滤器进行校验,或者在项目中定义过滤器或拦截器,也可在业务代码中实现。
2、业务二次校验
添加验证码(短信验证码、图形验证码均可)
添加系统确认密码(如交易密码)