一个计算机技术爱好者与学习者

0%

Web安全之防御DDoS

1. DDoS简介

DDoS(Distributed Denial of Service) 是一种攻击方式,中文翻译为分布式拒绝服务。
DDoS攻击通过利用大量的计算机或设备向目标网络或服务器发送海量的请求,以消耗其带宽、处理器或存储等资源,从而使其无法正常服务。

相关文档:

2. 常见防御方法

  • 增加带宽:扩大带宽是一种最常见的DDoS攻击防御方法。增加带宽可以分摊攻击流量,从而减轻攻击对服务器的影响。
  • 安装防火墙:防火墙可以监控和控制网络流量,过滤掉异常流量和攻击流量。防火墙可以根据一些策略进行配置,例如限制IP地址和端口号。
  • CDN加速:CDN(内容分发网络)可以将静态和动态内容缓存到全球各地的节点上,使用户能够更快地访问网站内容。CDN可以防止DDoS攻击,因为攻击者无法攻击所有节点。
  • 防DDoS设备:防DDoS设备可以在攻击开始时自动检测并过滤攻击流量。这些设备可以使用各种算法进行攻击检测和流量分析,并对攻击流量进行过滤和阻止。
  • 使用云服务:云服务提供商可以使用多个数据中心和高度可用的服务来防止DDoS攻击。通过使用云服务,网站管理员可以更好地分摊攻击流量,同时提高网站的可用性和稳定性。

3. 选择防御方法

  • 增加带宽:不合适。LB本身就没有带宽限制。
  • 安装防火墙:不合适。腾讯云WAF太贵(3880元/月 - 28880元/月),防止DDoS服务还要单独购买(10万元/年 - 300万元/年);自己搭建DDoS防火墙,需要专职的安全人员开发,成本更高。
  • CDN加速:备选。配置简单,价格合适(还有免费版)。
  • 防DDoS设备:不合适。价格昂贵(上百万一台)。
  • 使用云服务:不合适。没有必要提供那么强的负载能力。

综上,选择CDN加速进行DDoS防护,是最优选。

4. CDN调研

4.1. Cloudflare CDN

4.1.1. Cloudflare CDN防护原理

Cloudflare CDN加速防御DDoS攻击的基本原理:

  1. 分布式架构:Cloudflare使用分布式的CDN架构,在全球各地部署了大量的数据中心和服务器节点。这些节点可以缓存和分发网站的静态内容和动态内容,并提供基于云端的防御和安全服务。
  2. 基于行为的分析:Cloudflare使用基于行为的分析技术,对访问网站的流量进行实时分析和识别。当检测到异常的访问行为时,例如大量请求来自同一IP地址或同一地区的访问等,Cloudflare会自动封锁这些IP地址或地区的流量,以减轻DDoS攻击的影响。
  3. 基于IP地址的访问控制:Cloudflare可以通过设置IP白名单和黑名单,限制访问网站的IP地址范围。这可以帮助阻止一些恶意IP地址和流量,以保护网站的安全性和稳定性。
  4. 流量限制:Cloudflare可以限制访问网站的流量速率和数量,以避免过度的流量消耗和服务器崩溃。当检测到DDoS攻击的流量时,Cloudflare会自动限制流量速率和数量,以减轻攻击的影响。
  5. DDoS防火墙:Cloudflare还提供了一些高级防御和防护功能,例如Web应用程序防火墙(WAF)和SSL证书等。WAF可以识别和阻止一些常见的攻击和漏洞,例如SQL注入、XSS等。SSL证书可以为网站提供HTTPS加密和身份认证功能,以保护用户的隐私和安全。

使用Cloudflare CDN之后,通过dig还能找到真实后端服务器吗?
使用Cloudflare CDN加速后,通过dig命令(或其他查询DNS记录的工具)查询域名解析结果,通常只能查到Cloudflare的DNS记录,而无法直接查到真实的后端服务器。这是因为Cloudflare CDN使用了反向代理和缓存技术,将网站的内容缓存在Cloudflare的边缘节点上,并使用Cloudflare的IP地址作为前端入口,而后端的真实服务器地址通常不会暴露在外部。

4.1.2. Cloudflare CDN注意事项

使用Cloudflare的CDN加速,可以实现防护DDoS。

Cloudflare收费标准:

  • 免费版:支持DNS解析、DDoS防护、CDN、SSL证书,足够我们使用了。
  • 付费Pro版:25刀/月
  • 付费Business版:250刀/月
  • 付费Enterprise版:250刀+/月

免费版和付费Pro版,添加站点时,最后一步会提示修改NS地址,也就是说该域名所有的解析都要托管到Cloudflare,这就很不友好了。
对于付费Business版和Enterprise版,如果不想修改NS地址,那么建议使用Partial (CNAME) setup,配置方法参考《Cloudflare配置概述》
对于免费版和付费Pro版,如果不想修改NS地址,那么建议使用Cloudflare for SaaS,不过这种配置方式可能会被拦截,页面出现 警方提示疑似诈骗 联系电话:0592-96110

参考文档:

4.2. 腾讯云CDN

收费方式:按访问次数和流量收费
是否防DDoS:想要防DDoS,需额外购买SCDN(最基础套餐3800元/月,支持20个域名,10Gbps防护)

结论:可防DDoS,价格不合适

参考文档:

4.3. 阿里云CDN

收费方式:按流量计费
是否防DDoS:想要防DDoS,需额外购买边缘DDoS(6万块10个域名/每月)

结论:可防DDoS,价格不合适

参考文档:

4.4. AWS CDN

收费方式:每月免费1TB流量,1千万请求,超出部分收费
是否防DDoS:防DDoS

结论:可防DDoS,备选

参考文档:

4.5. Azure CDN

收费方式:按流量、请求量和规则数量收费(较贵)
是否防DDoS:防DDoS

结论:可防DDoS,价格不合适

参考文档

5. 小结

综上,从价格方面考虑,最合适的选择是Cloudflare CDN,其次是AWS CDN。

6. 扩展阅读

6.1. 腾讯云防护产品

6.1.1. 腾讯云CLB

腾讯云CLB依靠大禹分布式防御系统能够防御绝大多数网络攻击(例如 DDoS、Web 入侵),针对流量攻击实现秒级清洗,极大避免 IP 被封、带宽被占满等情况发生。CLB 自带的 synproxy 防攻击机制,避免了大禹系统生效之前后端 CVM 被攻击压垮,保护数据更安全稳定。
CLB 对每个租户的流量进行严格隔离,提供主动 DDoS 防护能力,公网 CLB 默认支持 DDoS 基础防护。CLB 还支持 DDoS 高防包、DDoS 高防 IP、Web 应用防火墙 等多种安全产品,保障业务安全性。

价格:免费

6.1.2. 腾讯云WAF

腾讯云 Web 应用防火墙(Web Application Firewall,WAF)是一款基于 AI 的一站式 Web 业务运营风险防护方案。通过 AI+规则双引擎识别恶意流量,保护网站安全,提高 Web 站点的安全性和可靠性。通过 BOT 行为分析,防御恶意访问行为,保护网站核心业务安全和数据安全。
腾讯云 WAF 提供两种类型的云上 WAF,SaaS 型 WAF 和负载均衡型 WAF,两种 WAF 提供的安全防护能力基本相同,接入方式不同。

  • SaaS 型 WAF 通过 DNS 解析,将域名解析到 WAF 集群提供的 CNAME 地址上,通过 WAF 配置源站服务器 IP,实现域名恶意流量清洗和过滤,将正常流量回源到源站,保护网站安全。
  • 负载均衡型 WAF 通过和腾讯云负载均衡集群进行联动,将负载均衡的 HTTP/HTTPS 流量镜像到 WAF 集群,WAF 进行旁路威胁检测和清洗,将用户请求的可信状态同步到负载均衡集群进行威胁拦截或放行,实现网站安全防护。

腾讯云 WAF 可以有效防御 SQL 注入、XSS 跨站脚本、木马上传、非授权访问等 OWASP 攻击。此外还可以有效过滤 CC 攻击、提供 0day 漏洞补丁、防止网页篡改等,通过多种手段全方位保护网站的系统以及业务安全。

价格:3880元/月 - 28880元/月

6.1.3. DDoS防护

DDoS 基础防护是腾讯云免费为云服务器(Cloud Virtual Machine,CVM)、负载均衡(Cloud Load Balancer,CLB)等资源提供的基础 DDoS 防护能力,满足日常安全运营需求。普通用户默认可享受不超过2Gbps防护,VIP 用户 可享受不超过10Gbps防护,境外地区可享受不超过2Gbps防护。腾讯云会根据用户的安全信誉状态,动态调整封堵阈值。安全信誉状态与历史攻击情况、云上基础资源信息等相关。安全信誉过低会影响用户的免费防护能力,直到后续安全信誉恢复。DDoS 基础防护默认开启,实时监控网络流量,发现攻击立即清洗,为腾讯云上公网 IP 秒级开启防护。

除了基础防护,用户还可以按需选购轻量版高防包、DDoS 高防包、DDoS 高防 IP(中国大陆)、DDoS 高防 IP(境外)、DDoS 高防 IP(境外企业版)。

付费版价格:10万元/年 - 300万元/年