同源策略
协议、域名、端口需一致
XSS
定义
中文跨站脚本攻击,本质是代码注入,即没有过滤恶意代码
分类
- 反射型(不持久)
url链接被服务器反射到浏览器渲染
- 存储型(持久型)
在留言中比较典型,会存储在服务器中
- 基于dom型
- 基于浏览器型
防范
- 对用户的输入与url进行过滤和转译、html标签
- cookie设置http-only以避免cookie劫持的危险
- node可使用js-xss
CSRF
定义
跨站请求伪造
防范
- 服务器服务端去做验证处理
- 验证Referer
- 重要操作验证码、加强与用户交互
- 自定义属性验证,比如token验证
- 阻止不明外域的访问
- 同源检测
- Samesite Cookie
- 提交时要求附加本域才能获取的信息
- CSRF Token
- 双重Cookie验证
- 避免get方法修改操作
SQL注入
利用现有应用程序,可以将恶意的SQL命令注入到后台数据库引擎中并执行。也可以通过在Web表单中输入恶意SQL语句得到一个存在安全漏洞的网站上的数据库,而不是按照设计者意图去执行SQL语句
防范
- 杜绝用户提交的参数入库并且执行
- 在代码层,不准出现sql语句
- 在web输入参数处,对所有的参数做sql转义
- 上线测试,需要使用sql自动注入工具进行所有的页面sql注入测试