SYN Flood 与 UDP Flood 是两类最常见的网络层(L3/L4)DDoS 攻击,它们以耗尽目标资源为目的,导致服务不可用。本文基于 AWS 官方文档,先明确清洗方案的边界——哪些攻击可自动缓解、哪些需要人工介入,再给出具体的防御策略与操作步骤。
攻击原理与检测边界
SYN Flood 利用 TCP 三次握手缺陷,发送大量伪造源地址的 SYN 请求,使服务器半连接队列耗尽;UDP Flood 则通过向随机端口发送大量 UDP 包,消耗带宽或触发目标主机的协议栈处理开销。AWS Shield 可检测并缓解已知及零日攻击向量,但检测与缓解的覆盖范围取决于您使用的服务层级。
清洗方案:AWS Shield Standard 与 Advanced
AWS 提供两种防护层级:Shield Standard 自动启用,为所有 AWS 资源提供基础保护;Shield Advanced 为付费服务,提供增强检测和 DDoS 成本保护。对于 L3/L4 攻击,AWS 会自动缓解,但 L7 攻击默认不自动干预,以避免误伤合法流量。
Shield Standard 的自动清洗
Shield Standard 自动缓解网络和传输层攻击,无需额外配置。它通过流量监控和异常检测,在 AWS 网络边缘丢弃恶意流量。对于大多数中小型攻击,Standard 足以应对,但防护容量有限。
Shield Advanced 的增强能力
若您保护 Amazon EC2 实例,Shield Advanced 在攻击期间会自动将 VPC 网络 ACL 部署到 AWS 网络边界,从而提供更大规模的防护能力。这意味着更复杂的攻击可被吸收,但需要您提前规划网络架构,确保网络 ACL 规则正确。
分层防御:从边界到应用
单一防护层不足以应对所有攻击。建议结合 AWS WAF、CloudFront 和 Route 53 构建纵深防御。对于 L3/L4 攻击,依赖 Shield 自动清洗;对于 L7 攻击,使用 WAF 规则和速率限制。注意,任何防护都可能影响合法流量,需权衡安全性与可用性。
配置网络 ACL 的注意事项
Shield Advanced 自动部署网络 ACL 时,需确保您的 ACL 规则不会阻断合法流量。例如,若您有自定义规则拒绝特定端口,可能误伤正常请求。建议定期审查 ACL,并在非攻击期间测试规则。
事件响应流程
AWS 对 L3/L4 攻击自动缓解,但 L7 攻击需要您主动响应。首先,通过 CloudWatch 告警检测异常;然后,分析攻击模式,使用 WAF 规则或托管规则组进行缓解。若攻击规模超出预期,可联系 AWS Support 获取帮助。
失败条件与常见误区
常见误区包括:依赖单一防护层、忽略 L7 攻击、未配置告警。失败条件包括:网络 ACL 配置错误、WAF 规则过严导致误杀、攻击流量超过防护容量。务必进行压测,并监控防护效果。
参考资料
延伸阅读
