CSRF
XSS
CSRF
基本概念和缩写
称为跨站请求伪造 Cross-site request forgery
攻击原理
用户是网站A的注册用户,然后第一步用户名账号登陆,然后网站A下发cookie保存在用户的浏览器中,此时完成一次身份认证。
用户访问网站B,网站B下发一个引诱点击链接,链接指向网站A的某一个接口 (尤其是GET类型),当用户点击之后,那么就会访问网站A,那么网站A的接口就是上传cookie,此时网站A执行自己的接口事件。
注意:网站本身接口存在着漏洞;用户在网站登陆过,二者缺一不可。
防御措施
Token 验证 :访问网站A可以手动上传一份token,通过接口认证,
在受到csrf攻击时候 是不会自动上传token,所以添加token验证可以防止攻击。
Referer验证:页面来源认证
隐藏令牌 :将认证存进HTTP请求头中,而不是放入链接中。与token验证类似,只是使用方式有所区别。
XSS
基本概念和缩写
cross-site scripting 跨域脚本攻击
攻击原理
在合法的手段下在页面注入脚本
xss攻击不需要登陆认证,只是需要写入代码,然后执行想要的代码
防御原理
就是使得注入的脚本不能执行。
二者区别
XSS 向页面注入js运行,然后在函数体中做想要做的事情,CSRF是利用本身露洞帮你自动执行接口,CSRF依赖于用户登陆。