温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

前端知识 |前端安全之CSRF

发布时间:2020-06-30 09:40:42 来源:网络 阅读:513 作者:海说软件 栏目:web开发

CSRF/XSRF(Cross-Site Request Forgery),即跨站请求伪造,也被称为“One Click Attack”或者Session Riding。基本原理是通过伪装来自受信任用户的请求来利用受信任的网站。
前端知识 |前端安全之CSRF
×××原理:
如图所示,用户首先访问网站A,通过登录身份验证成功,网站A下发cookie保存在用户的浏览器中。用户又去访问了网站B,网站B在下发用户页面的时候会有一个引诱点击,这个引诱点击一般是一个链接,这个链接一般指向网站A的一个存在漏洞的API接口,尤其这个API接口是GET类型。当用户禁不住诱惑点击了这个引诱点击,这个点击就访问到了A网站,此时浏览器就会自动上传cookie,此时网站A对cookie进行确认,发现是合法用户,此时就会执行这个API的动作(以前微博就出现过CSRF×××,出问题的接口导致很多情况多了很多关注)。

总结
CSRF能造成×××的原理:
用户登录过网站A。
网站A中某一个接口存在着这种漏洞。这两条件缺一不可。

防御措施

1.Token验证
×××原理中访问漏洞接口的时候浏览器只上传了cookie,没有手动的上传一个token。这个token是用户登录注册甚至只是访问网站A,服务器会自动向用户本地存储一个token,在用户访问各个接口的时候,如果没带这个token,服务器就不会通过验证。所以当用户点击引诱链接,这个链接只会自动携带cookie,但是不会自动携带token,这样就能避免×××。

2.Referer验证
Referer,即页面来源。服务器通过判断页面来源是不是自己站点的页面来源,如果是就执行接口动作,如果不是一律拦截。这样也能避免×××。

3.隐藏令牌
类似于Token验证,原理是把token放在HTTP头的自定义属性中,而不是把信息放在链接上,增加了隐蔽性。本质上和Token验证没什么区别,只是用法上的一些区别。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI