一、CSRF
- 基本概念
- 通常称为跨站请求伪造
- 可以做什么
- 攻击者盗用了你的身份,以你的名义发送恶意请求。CSRF能够做的事情包括:以你名义发送邮件,发消息,盗取你的账号,甚至于购买商品,虚拟货币转账......造成的问题包括:个人隐私泄露以及财产安全。
- 攻击原理
要完成一次CSRF攻击必须满足两个因素
- 某个网站的存在这样的漏洞
- 用户必须登录这个网站
受害者必须依次完成两个步骤:
- 登录受信任网站A,并在本地生成Cookie。
- 在不退出A的情况下,访问危险网站B。
- 防御措施
- Token验证
- 服务器向本地存储一个token,用户点击危险链接,浏览器只会上传cookie不会上传token,这样在访问接口的时候,因为没有携带正确的token,服务器就不会通过验证。
- Referer验证
- 服务器判断用户动作的页面来源是不是本站点,如果是就执行,如果不是就拦截
- 隐藏令牌
- Token验证
二、XSS
- 概念
- 跨域脚本攻击
- 原理
- 和CSRF的区别是不需要做任何的登录认证,XSS是向页面注入js去运行,在js函数体里面去做入侵者想做的事情,CSRF是利用网站本身的漏洞去执行接口,XSS核心原理就是向页面注入脚本。
- 防御措施
三、参考文献