XSS
- cross site script 跨站脚本攻击
- 手段:黑客将JS代码插入到网页内容中,渲染时执行JS代码
- 预防:特殊字符替换(前端或者后端)
演示
预防
替换尖括号:
Vue React 不用担心XSS攻击,除非在vue中使用v-html在react中使用 dangerouslySetInnerHtml
CSRF
- Cross Site Request Forgery 跨站请求伪造
- 手段:黑客诱导用户去访问另一个网站的接口,伪造请求
- 预防:严格控制跨域 + 验证码机制
CSRF详细过程
- 用户登录了A网站,有了cookie
- 黑客诱导用户到B网站,并发起了A网站的请求
- A网站的API发现有cookie,认为是用户自己操作的
CSRF预防手段
- 严格的跨域请求控制,如判断referrer(请求来源)
- 为cookie设置SameSite,禁止跨域传递cookie
- 关键接口使用短信验证码
点击劫持
- click jacking
- 手段:诱导界面上蒙一个透明的iframe,诱导用户点击
- 预防:让iframe不能跨域加载
点击劫持预防
DDoS
- Distribute denial-of-service 分布式拒绝服务
- 手段:分布式的、大规模的流量访问,使服务器瘫痪
- 预防:软件层不好做,需要硬件预防(如阿里云WAF)
SQL注入
- 手段:黑客提交内容时写入SQL语句,破坏数据库
- 预防:处理输入的内容,替换特殊字符
前端攻击
- XSS
- CSRF
- 点击劫持
- DDoS
- SQL注入