XSS:跨站脚本攻击
就是攻击者想尽一切办法将可以执行的代码注入到网页中
1.过滤用户输入的 检查用户输入的内容中是否有非法内容。
2.CSP 建立白名单,开发者明确告诉浏览器哪些外部资源可以加载和执行。我们只需要配置规则,如何拦截是由浏览器自己实现的。我们可以通过这种方式来尽量减少 XSS 攻击
只允许加载本站资源。只允许加载 HTTPS 协议图片等等。

CSRF:跨域请求伪造
在用户不知情的情况下攻击已经登录的一个网站。
防御
1.在请求地址中添加token验证
CSRF 攻击之所以能够成功,是因为请求中所有的用户验证信息都是存在于 cookie 中,黑客可以完全伪造用户的请求。要抵御CSRF,关键在于在请求中放入黑客所不能伪造的信息。黑客无法获取token的具体值,所以无法仿造完整的请求。

2.验证码机制
3.验证 HTTP Referer 字段
在HTTP请求头中有一个字段叫Referer,它记录了请求的来源地址。 服务器需要做的是验证这个来源地址是否合法,如果是来自一些不受信任的网站,则拒绝响应。
4.在HTTP头中自定义属性并验证

CSRF
https://zhuanlan.zhihu.com/p/37293032
TOKEN
https://baijiahao.baidu.com/s?id=1608021814182894637&wfr=spider&for=pc
https://www.jianshu.com/p/a32634a5170c
https://www.jianshu.com/p/ccd41181a385
http://www.imooc.com/wenda/detail/539129