这是我参与「第四届青训营 」笔记创作活动的第3天
XSS 跨站脚本攻击(Cross-Site Scripting)
在开发维护的页面中,攻击者通过方式植入恶意脚本,比如script标签,当用户访问页面时,恶意脚本被执行,可能导致用户隐私泄露,甚至将用户机器当作挖矿的机器。
XSS主要利用了
- 开发者盲目信用用户的提交内容
- 将用户输入的String直接转换为DOM
XSS的特点
- 通常难以从UI感知(暗地里执行脚本)
- 窃取用户信息(cookie/token)
- 绘制UI(例如弹窗),诱骗用户点击/填写表单
XSS攻击分类
- 存储型XSS攻击
- 反射型XSS攻击
- 基于DOM的XSS攻击
- 基于mutation的XSS攻击
\
跨站伪造请求CSRF
最常见的CSRF攻击,GET请求
- 链接点击,完成攻击
- 图片被加载,完成攻击
也不止于GET,POST请求,其他请求也只需要构造一个表单即可
注入攻击(Injection)
SQL注入攻击
CLI
修改nginx网站代理,转发大流量,ddos攻击第三方..
SSRF 服务端攻击
DoS 服务拒绝
攻击者通过某种方式(构造特定请求),导致服务器资源被显著消耗,来不及响应更多请求,导致请求被积压,进而引发雪崩效应。
基于正则表达式的DoS
攻击者传入正则贪婪匹配 容易发生回溯行为的字符串,导致服务器响应时间上升,吞吐量严重降低,进而引发雪崩。
DDoS
短时间内,构造来着大量僵尸设备的请求流量,服务器不能及时完成所有请求,导致请求积压,进而雪崩,无法响应新请求。
经典的洪水攻击,TCP握手中,攻击方不返回第三次ACK,握手无法完成,连接数不能被释放,很快服务器会达到最大连接数,无法处理新请求。
基于传输层的中间人攻击
小结
稍微整理了一下课上提到的Web安全的攻击类型以及具体的攻击方式,之前只了解了解的XSS攻击、CSRF攻击的原理,而没有深入地了解过实际有可能会遇见的攻击场景,确实学到了很多,下一篇会将对应的防御方法也再整理一遍,好好地复习一遍。