这是我参与「第四届青训营 」笔记创作活动的的第四天
假如你是一个攻击者
- XSS攻击:注入攻击
原因:太过信任于用户,不过滤用户输入,会导致数据丢失或者系统异常
恶意的脚本会被存在数据库中
*例如:
host/path/?param=*
如果用户把这里的
- 基于DOM的xss攻击
浏览器端攻击
- 基于mutation的xss攻击
- CSRF 跨站伪造请求
特点:
- 在用户不知情的前提下
- 利用用户权限(cookie)
- 构造制定HTTP请求,窃取或者修改用户信息
- Injection 注入
- DDoS攻击
短时间内,来自大量僵尸设备的请求流量,服务器不能及时完成全部请求,导致请求堆积,进而雪崩效应,无法响应新请求。
攻击特点:
-
直接访问IP
-
消耗大量带宽
假如你是一个开发者
永远不要相信用户提交的内容
假如用户一定要把输入的内容要求转化为DOM时:
这时你要请用户耗子尾汁(狗头)
不管用户输入的是字符串、svg格式、a标签等,你都要进行筛选跟转义
- CSP
- CSRF(跨站伪造)的防御
也可以设置中间件来防御CSRF
- HTTPS的一些特性
- 可靠性:加密
- 完整性:MAC验证
- 不可抵赖性:数字签名