DoS/DDoS 是如何工作的?

信息安全 网络 攻击 ddos 拒绝服务
2021-08-30 00:32:29

在过去的几天里,人们经常会看到匿名和 LulzSec 针对不同平台(如 Sony 或 HBGary 等)的攻击。例如,昨天他们对soca.gov.ukjhw.gov.cn进行了 DDoS 攻击。我的问题是:这是如何工作的?

由于 PSN 是一个有很多共同流量的大型网络,我想知道他们的攻击必须有多大的力量。他们只是使用自己的机器和服务器吗?为什么没有人知道他们是谁,数据包必须来自某个地方?还是他们首先征服了很多公共机器(那些不参与这些组织的人在他们的 PC 上安装了任何类型的恶意软件)并让这些机器完成工作?

那么攻击本身呢?它总是一样的,比如 ping 洪水,还是取决于目标本身,在目标机器上搜索非常昂贵的反应?

谁能向从未参与过 DoS/DDoS 的人解释这些技术?

提前致谢!

免责声明:我不想做任何 DoS/DDoS,但我想了解 Anonymous 或 LulzSec 或其他任何人是如何做到的,并了解他们的能力。

3个回答

Anonymous 试图通过在他们的计算机上安装一个工具来说服人们支持他们的 DDoS 行动它有一个僵尸网络模式,允许领导人定义所有溺水者的目标。换句话说:Anonymous 使用社会工程而不是技术漏洞来分发他们的僵尸网络客户端。

该工具只会生成大量直接请求,因此 IP 地址将显示在目标的日志文件中。已经有相当数量的逮捕的人据媒体报道,欧洲的一些国家参加了攻击:如英格兰西班牙法国荷兰土耳其这是值得注意的,因为与美国相比,逮捕在欧洲通常很少受到媒体关注。

一般来说,DOS漏洞大致有两种:

  • 网络连接或防火墙可能太小而无法处理数据包的数量
  • 应用程序可能需要太多资源来处理特定请求。

简单的洪水

第一种类型是通过发送过多数据来利用的,例如使用僵尸网络。有时 IP 欺骗被用来向大量无辜的第三方发送小请求,这些第三方将返回更大的答案。一个常用的例子是 DNS 查询

DoS 漏洞

第二种更复杂。它利用了特定的弱点。

例如,在网络层,攻击者可能会发送大量“建立连接的请求”(TCP SYN Flood),但从未完成握手。这会导致目标分配大量内存来存储这些连接以备不时之需。使用SYN cookie是一种对策。

应用层,通常有一些操作占用的资源比平均水平要多得多。例如,网络服务器经过优化以提供静态内容,它们可以为许多人快速完成这项工作。但是与静态页面相比,网站可能具有相当慢的搜索功能。如果只有少数人不时使用搜索功能,这完全没问题。但是攻击者可以特别针对它。

另一个通常很慢的操作是登录,因为它们需要许多数据库操作:计算最近从同一 IP 地址登录失败的次数,计算用户名最近失败的登录次数,验证用户名和密码,检查帐户禁止状态。

作为对策,应用程序可能支持重负载模式,该模式禁用资源密集型操作。这方面的一个著名例子是早期的维基百科,尽管由于突然流行,高负载是由普通用户造成的。

PS:请注意,您的两个示例,Sony 和 HBGary,受到针对性攻击的损害最大,而不是洪水。目前尚不清楚这些攻击是否由核心匿名组织发起。

我想了解 Anonymous 或 LulzSec 或其他任何人如何做到这一点,并了解他们的力量。

我认为他们真正的力量是基于恐惧。

在德国下萨克森州,匿名访问政府网站现已被阻止。根据法律,可以匿名使用在线服务。但法律继续说“在技术上可行和可行的范围内”。政府声称他们保护自己的愿望更为重要,并指出公民无权要求访问国家的互联网服务。(来源:Heise,德语)

有关网络泛洪 DDoS的更多技术细节

如其他答案中所述,通常使用“僵尸网络”来进行 DDoS 攻击。让我们看看这个:

许多最终用户系统被感染并(与其正常功能平行)成为“僵尸网络”的一部分。它们由“机器人代理”控制,而“机器人代理”又由机器人主机控制。您可能会获得多个级别的控制,但这一切都会导致任何类型的系统都可以将命令传递给“机器人士兵”。流行的方法包括 IRC、twitter 或公共网站。机器人主人和控制机器人的人都连接到约定的指挥中心(例如,“秘密”IRC 频道)。那里的攻击者发出命令,例如目标、数据包类型、流量等,然后攻击开始。每个终端系统都会产生一个数据包流,这些数据包加起来会削弱受害者。更糟糕的是,受害者本身无法控制这个流量。

在许多情况下,哪些是真正的攻击计算机并不明显。攻击数据包可能已被“欺骗”(即专门构造为显示与其真实不同的源 IP)。他们可以这样做,因为这是一种单向攻击,不需要任何答案——建立连接。

另一种可以隐藏来源的方法是“反射”攻击。在这种情况下,攻击者向公共服务器发送合法请求(如 DNS 查询、BGP 数据包,甚至是 Web 请求)。但是,请求的返回地址是受害者之一。公共服务器将他们的合法答案返回给受害者,然而受害者一开始并没有要求他们。

数据包的类型和它们的速率可以根据攻击者的需要而变化。这种变化可能会使上游提供商的攻击流量过滤进一步复杂化,并且需要不断调整配置。

由于攻击具有如此分布式的性质,因此无法在源头上做太多事情。仍然有一些 ISP 采用预防措施,例如 (a) 断开/限制产生异常大量流量的系统 (b) 阻止源地址错误的数据包。

在 Anonymous 的情况下,整个过程是自愿进行的:有一个名为“Low Orbit Ion Cannon”(科幻参考)的公共工具,用于在高流量下测试公共站点。在其最新版本中,它允许远程控制本地流量生成器。承诺帮助匿名安装它的人,并将“钥匙”交给该组以按照决定使用。如果我理解正确,LOIC 不会使用地址欺骗,因此会识别和逮捕攻击者。

最简单的方法是使用僵尸网络(您可以在此处查看 Wikipedia 定义

这是一个机器网络,您可以控制所有机器一次向目标发送数据包。一次使用 100,000 台机器会产生大量流量,而一些僵尸网络的规模远不止于此!

如果攻击者使用的攻击类型在目标上需要比源更多的资源,则攻击者会产生更大的影响。

并回答您的具体情况:

  • 对于大多数最终用户来说,好的僵尸网络并不明显——互联网的普通人群不是很精通安全/技术,因此破坏他们的 PC 并不难。

  • 攻击类型因目标而异。Ping 泛洪不像其他一些泛洪那样可能,例如 SYN 泛洪。