本文主要记录对于 XSS
和 CSRF
的基本概念和防御措施.
XSS
概念
Cross Site Scripting
, 跨站脚本攻击, 主要来源于HTML或JS的代码注入
XSS类型分为3种, 反射型XSS, 存储型XSS, DOM-XSS。
反射型XSS
直接将用户的输入数据展示到页面中, 后台不保存数据, 属于非持久型
XSS
存储型XSS
将用户的输入数据不经过处理直接保存到数据库中, 此时其他用户只要请求数据, 返回的都是
XSS
脚本, 属于持久型XSS
DOM-XSS
修改页面
DOM
形成XSS
防御措施
- 永远不要相信用户的输入, 对用户输入数据进行过滤
- 字符转义
- 设置
HttpOnly
防止劫取Cookie
CSRF
概念
Cross Site Request Forgery
, 跨站请求伪造, 其原理是借助受害者的cookie
来骗取服务器的信任, 发出了非用户本意的请求
防御措施
检查
HTTP Referer
字段Referer
用于表示请求来源于哪个地址, 对于非白名单内的来源地址, 都忽略请求添加
TOKEN
验证
参考
https://xwjgo.github.io/2017/10/26/XSS%E5%92%8CCSRF/
http://www.cnblogs.com/imwtr/p/4763457.html