--- title: DDoS Distributed Denial of Service localeTitle: DDoS分布式拒绝服务 --- 拒绝服务(DOS)攻击是指攻击者试图通过使用多个虚假请求轰炸服务器并阻止实际用户访问服务来破坏服务器的服务。分布式DOS攻击是指攻击从多个位置同时发生,使得网络安全团队更难以检测和处理攻击。 分布式拒绝服务(DDoS)攻击是指通过从多个源生成的大量流量超载来使在线服务或网站不可用的尝试。 与拒绝服务(DoS)攻击不同,其中一台计算机和一台Internet连接用于使用数据包来淹没目标资源,DDoS攻击使用许多计算机和许多Internet连接,这些连接通常在全球范围内分布在所谓的僵尸网络中。 DDoS攻击通常针对的是大公司,几分钟内拒绝服务可能会导致数百万美元的损失。 有几种Ddos攻击,最好的攻击是通过检查目标的漏洞来确定的。 ### DDoS攻击的类型 DDoS攻击大致可分为三类 - 1. 基于卷的攻击 2. 协议攻击 3. 应用层攻击 ### 基于卷的攻击 基于卷的攻击包括TCP泛洪,UDP泛洪,ICMP泛洪和其他欺骗性数据包泛洪。这些也称为第3层和第4层攻击。在这里,攻击者试图使目标站点的带宽饱和。攻击幅度以每秒位数(bps)为单位。 * **UDP泛洪** - UDP泛洪用于泛洪远程主机上具有大量UDP数据包的随机端口,更具体地说是端口号53.专用防火墙可用于过滤或阻止恶意UDP数据包。 * **ICMP Flood** - 类似于UDP flood,用于泛洪具有大量ICMP Echo请求的远程主机。这种类型的攻击可以消耗传出和传入带宽,并且大量的ping请求将导致整个系统减速。 * **HTTP Flood** - 攻击者将HTTP GET和POST请求发送到大容量的目标Web服务器,服务器无法处理这些请求,导致拒绝来自合法客户端的其他连接。 * **放大攻击** - 攻击者发出一个请求,生成一个大的响应,其中包括对大型TXT记录的DNS请求和对大型文件(如图像,PDF或任何其他数据文件)的HTTP GET请求。 ### 协议攻击 协议攻击包括SYN泛洪,Ping of Death,分段数据包攻击,Smurf DDoS等。此类攻击消耗实际的服务器资源和其他资源,如防火墙和负载均衡器。攻击幅度以每秒数据包数量来衡量。 * **DNS泛滥** - DNS泛滥用于攻击基础架构和DNS应用程序,以淹没目标系统并消耗其所有可用的网络带宽。 * **SYN Flood** - 攻击者发送TCP连接请求的速度比目标计算机可以处理的速度快,从而导致网络饱和。管理员可以调整TCP堆栈以减轻SYN泛洪的影响。要减少SYN泛滥的影响,可以减少超时,直到堆栈释放分配给连接的内存,或者使用防火墙或iptables选择性地丢弃传入连接。 * **Ping of Death** - 攻击者使用简单的ping命令发送格式错误或超大的数据包。 IP允许发送65,535字节数据包,但发送大于65,535字节的ping数据包违反了Internet协议,可能导致目标系统上的内存溢出,最终导致系统崩溃。为了避免Ping of Death攻击及其变种,许多站点在其防火墙上完全阻止了ICMP ping消息。 ### 应用层攻击 应用层攻击包括Slowloris,零日DDoS攻击,针对Apache,Windows或OpenBSD漏洞的DDoS攻击等。这里的目标是使Web服务器崩溃。攻击幅度以每秒请求数来衡量。 * **应用程序攻击** - 这也称为第7层攻击,攻击者进行过多的登录,数据库查找或搜索请求以使应用程序过载。检测第7层攻击非常困难,因为它们类似于合法的网站流量。 * **Slowloris** - 攻击者向目标Web服务器发送大量HTTP标头,但从未完成请求。目标服务器保持每个这些错误连接都打开并最终溢出最大并发连接池,并导致拒绝来自合法客户端的其他连接。 * **NTP扩充** - 攻击者利用可公开访问的网络时间协议(NTP)服务器,使用用户数据报协议(UDP)流量淹没目标服务器。 * **零日DDoS攻击** - 零日漏洞是供应商以前不知道的系统或应用程序漏洞,尚未修复或修补。这些是日复一日的新型攻击,例如,利用尚未发布补丁的漏洞。 ### 如何修复DDoS攻击 根据DDoS攻击的类型,您可以应用相当多的DDoS保护选项。 您的DDoS保护从识别和关闭系统中所有可能的操作系统和应用程序级漏洞开始,关闭所有可能的端口,从系统中删除不必要的访问权限并将服务器隐藏在代理或CDN系统之后。 如果您发现DDoS的数量很小,那么您可以找到许多基于防火墙的解决方案,它们可以帮助您过滤掉基于DDoS的流量。但是如果您有大量的DDoS攻击,如千兆位甚至更多,那么您应该接受DDoS保护服务提供商的帮助,该提供商提供更全面,主动和真实的方法。 在接近并选择DDoS保护服务提供商时必须小心。有许多服务提供商想要利用您的情况。如果您通知他们您受到DDoS攻击,那么他们将开始以不合理的高成本为您提供各种服务。 我们可以为您提供一个简单而有效的解决方案,首先要搜索一个足够灵活的DNS解决方案提供商,以便为您的网站配置A和CNAME记录。其次,您需要一个能够处理大DDoS流​​量的好CDN提供商,并为您提供DDoS保护服务,作为其CDN包的一部分。 假设您的服务器IP地址是AAA.BBB.CCC.DDD。然后你应该做以下DNS配置 - * 在DNS区域文件中创建一个记录,如下所示,带有DNS标识符,例如ARECORDID,并将其与外界保密。 * 现在请求您的CDN提供商将创建的DNS标识符与URL链接,例如cdn.someotherid.domain.com。 * 您将使用CDN URL cdn.someotherid.domain.com创建两个CNAME记录,第一个指向www,第二个记录指向@,如下所示。 您可以从系统管理员那里获得帮助以了解这些要点并适当地配置DNS和CDN。最后,您将在DNS上进行以下配置。 ### 更多信息 * [了解拒绝服务攻击](https://www.us-cert.gov/ncas/tips/ST04-015) * [全球DDoS攻击的可视化](http://www.digitalattackmap.com/#anim=1&color=0&country=ALL&list=0&time=17462&view=map "全球DDoS攻击的可视化") * [关于DDoS的Kotaku文章](https://kotaku.com/how-ddos-attacks-work-and-why-theyre-so-hard-to-stop-1676445620)