aws-doc/课程/第三阶段-安全与身份/第22天-WAF与Shield防御攻击.md
2026-05-08 10:24:39 +08:00

157 lines
5.2 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 第22天WAF 与 Shield——防御网络攻击
## 今天你将学到什么
今天学习如何保护你的网站免受攻击。WAF 防御应用层攻击SQL 注入、XSSShield 防御 DDoS 攻击(用海量流量压垮你的服务器)。
---
## 常见的网络攻击类型
### 攻击一SQL 注入
**原理**:黑客在输入框里输入特殊的数据库命令,欺骗你的程序执行恶意操作。
**举例**:登录页面的用户名输入框,黑客输入:
```
admin' OR '1'='1
```
如果你的程序没有防护,这可能让黑客绕过密码验证直接登录。
### 攻击二XSS跨站脚本攻击
**原理**:黑客在网页中注入恶意脚本,当其他用户浏览这个页面时,脚本会在他们的浏览器中执行。
**举例**:在评论区输入一段恶意代码,其他用户看到这条评论时,代码自动执行,偷走他们的登录信息。
### 攻击三DDoS分布式拒绝服务攻击
**原理**:黑客控制成千上万台电脑(僵尸网络),同时向你的服务器发送海量请求,把服务器压垮。
**类比**:想象有人雇了 10 万人同时打你公司的客服电话,正常客户永远打不进来。
**真实案例**2016 年,针对 DNS 服务商 Dyn 的 DDoS 攻击导致 Twitter、Netflix、GitHub 等大量网站瘫痪数小时。
---
## AWS WAFWeb Application Firewall
WAF 是"Web 应用防火墙",检查每一个到达你网站的请求,阻止恶意请求。
### WAF 放在哪里
WAF 部署在流量入口处:
```
用户请求 → CloudFront / ALB → WAF 检查 → 通过 → 你的服务器
→ 阻止 → 返回 403 错误
```
### WAF 能防什么
| 攻击类型 | WAF 怎么防 |
|----------|-----------|
| SQL 注入 | 检测请求中的 SQL 关键字和特殊字符 |
| XSS | 检测请求中的脚本标签和恶意代码 |
| 恶意爬虫 | 识别非人类的访问模式 |
| 暴力破解 | 限制同一 IP 的请求频率 |
| 已知恶意 IP | 维护黑名单,直接拦截 |
### AWS 托管规则(开箱即用)
AWS 提供了预置的规则集,你不需要自己写规则:
| 规则集 | 防护内容 |
|--------|----------|
| 核心规则集 | OWASP Top 10 常见攻击 |
| SQL 注入规则 | 各种 SQL 注入变体 |
| 已知恶意输入 | 已知的攻击模式 |
| 机器人控制 | 恶意爬虫和自动化工具 |
**使用方式**:在 WAF 控制台勾选你需要的规则集,几分钟就能启用防护。
### 自定义规则
你也可以写自己的规则:
- 屏蔽特定国家的访问
- 限制同一 IP 每分钟最多 100 次请求
- 阻止请求体超过 10KB 的请求
- 只允许特定的 IP 地址访问管理后台
---
## AWS ShieldDDoS 防护)
### Shield Standard免费自动启用
- 所有 AWS 账户自动拥有
- 防护常见的网络层 DDoS 攻击
- 不需要任何配置
- 覆盖SYN Flood、UDP 反射、DNS 放大等
**你什么都不用做,它已经在保护你了。**
### Shield Advanced付费$3,000/月)
- 更高级的 DDoS 防护
- 24/7 专家团队支持DDoS 响应团队)
- 实时攻击可视化
- **成本保护**:如果 DDoS 攻击导致你的 AWS 费用暴涨(比如 Auto Scaling 加了很多机器AWS 帮你承担这部分费用
**适合**:金融、电商、游戏等高价值目标。学习阶段不需要。
---
## GuardDuty——智能威胁检测
GuardDuty 是 AWS 的"安全摄像头",持续监控你的账户活动,发现异常行为。
**它监控什么**
- 网络流量模式(有没有和恶意 IP 通信)
- API 调用行为(有没有异常的操作)
- DNS 查询(有没有连接恶意域名)
**它能发现什么**
- 有人从异常的国家登录了你的账户
- 某台 EC2 实例在挖矿CPU 异常高 + 连接矿池地址)
- 有人在尝试暴力破解你的 SSH 密码
- S3 桶被异常大量下载(可能是数据泄露)
**使用方式**一键启用不需要安装任何东西。GuardDuty 自动分析日志和流量,发现威胁后通知你。
---
## 安全服务选择指南
| 我想防护... | 用什么服务 |
|------------|-----------|
| SQL 注入、XSS 等 Web 攻击 | WAF |
| DDoS 攻击 | ShieldStandard 免费自动启用) |
| 账户异常行为(被盗用、挖矿) | GuardDuty |
| 软件漏洞 | Inspector |
| S3 中的敏感数据泄露 | Macie |
| 统一安全视图 | Security Hub |
---
## 今天的小测验
1. SQL 注入攻击的原理是什么WAF 怎么防护它?
2. DDoS 攻击的目的是什么?它和普通黑客攻击有什么区别?
3. Shield Standard 和 Shield Advanced 的区别是什么?学习阶段需要 Advanced 吗?
4. GuardDuty 能发现哪些类型的安全威胁?
---
## 延伸阅读
- [AWS WAF 开发者指南](https://docs.aws.amazon.com/waf/latest/developerguide/)
- [AWS Shield 文档](https://docs.aws.amazon.com/waf/latest/developerguide/shield-chapter.html)
- [GuardDuty 用户指南](https://docs.aws.amazon.com/guardduty/latest/ug/)
- [OWASP Top 10 安全风险](https://owasp.org/www-project-top-ten/)
---
## 明天预告
明天学习 CloudTrail——AWS 的"监控录像",记录你账户中的每一个操作。谁在什么时候做了什么,一清二楚。这是安全审计和故障排查的基础。