拒绝服务 DDoS 攻击
想象一个场景,您正在访问一些网站,其中一个网站似乎有点慢。您可能会责怪他们的服务器来提高他们的可扩展性,因为他们可能会在他们的网站上遇到大量用户流量。大多数网站已经事先考虑到了这个问题。很有可能,他们可能是所谓的 DDoS 攻击(分布式拒绝服务攻击)的受害者。参考 - 拒绝服务和预防
在 DDoS 攻击中,攻击者试图通过引导来自多个终端系统的持续且巨大的流量来使特定服务不可用。由于这种巨大的流量,网络资源被用于服务那些虚假终端系统的请求,使得合法用户无法访问自己/她自己的资源。
DDoS 攻击的类型 –
DDoS 攻击可分为三大类:
- 应用层攻击——
这些攻击集中在攻击 OSI 模型的第 7 层,在该层中生成网页以响应最终用户发起的请求。对于客户端而言,生成请求不会占用任何繁重的负载,并且可以轻松地向服务器生成多个请求。另一方面,响应请求对服务器来说需要相当大的负载,因为它必须构建所有页面,计算任何查询并根据请求从数据库加载结果。
示例: HTTP Flood 攻击和对 DNS 服务的攻击。 - 协议攻击——
它们也被称为状态耗尽攻击。这些攻击主要针对协议栈第 3 层和第 4 层中的漏洞。这些类型的攻击会消耗服务、防火墙和负载平衡器等资源。
示例: SYN Flood 攻击和 Ping of Death。 - 体积攻击——
容量攻击侧重于消耗网络带宽并通过放大或僵尸网络使其饱和,以阻碍其对用户的可用性。它们很容易通过将大量流量引导到目标服务器来生成。
示例: NTP 放大、DNS 放大、UDP Flood 攻击和 TCP Flood 攻击。
常见的 DDoS 攻击 –
- SYN 洪水攻击 –
SYN 洪水攻击的工作方式与顽皮的孩子不断按门铃(请求)并逃跑的方式类似。里面的老人出来,打开门,没有看到任何人(没有反应)。最终,在这种情况频繁发生后,老人精疲力尽,甚至连真正的人都不会回答。 SYN 攻击通过发送带有欺骗性 IP 地址的 SYN 消息来利用 TCP 握手。受害服务器继续响应,但未收到最终确认。
- HTTP 洪水攻击 –
在 HTTP Flood 攻击中,针对目标服务器同时生成多个 HTTP 请求。这会导致该服务器的网络资源耗尽,从而无法满足实际用户的请求。 HTTP Flood 攻击的变体是——HTTP GET 攻击和 HTTP POST 攻击。
- DNS 放大 –
假设你打电话给必胜客,让他们给你回电话,并告诉他们所有的比萨饼组合以及配料和甜点。你用非常小的输入生成了一个很大的输出。但是,问题是你给他们的号码不是你的。同样,DNS 放大通过从欺骗性 IP 地址请求 DNS 服务器并构建您的请求来工作,以便 DNS 服务器向目标受害者响应大量数据。
DDoS 缓解 –
防止 DDoS 攻击比 DoS 攻击更难,因为流量来自多个来源,并且很难将恶意主机与非恶意主机分开。一些可以使用的缓解技术是:
- 黑洞路由 –
在黑洞路由中,网络流量被定向到“黑洞”。在这种情况下,恶意流量和非恶意流量都会在黑洞中丢失。当服务器遭受 DDoS 攻击并且所有流量都被转移以维护网络时,此对策很有用。 - 速率限制
速率限制涉及控制网络接口发送或接收的流量速率。它可以有效地减少网络爬虫的速度以及蛮力登录工作。但是,仅仅限制速率不太可能防止复合 DDoS 攻击。 - 黑名单/白名单 –
黑名单是阻止列表中提到的 IP 地址、URL、域名等并允许来自所有其他来源的流量的机制。另一方面,白名单是指允许列表中提到的所有IP地址、URL、域名等,并拒绝所有其他来源访问网络资源的机制。