什么是拒绝服务攻击?如何进行DoS攻击
什么是拒绝服务攻击(DoS)?
DoS是一种用于拒绝合法用户访问某个资源(例如访问网站、网络、电子邮件等)或使其运行极为缓慢的攻击。DoS是Denial of Service(拒绝服务)的首字母缩写。这种类型的攻击通常通过同时向目标资源(如Web服务器)发送大量请求来实现。这会导致服务器无法响应所有请求。其效果可能是导致服务器崩溃或运行缓慢。
切断企业在互联网上的部分业务可能导致重大的业务或金钱损失。互联网和计算机网络为许多企业提供动力。一些组织,如支付网关、电子商务网站,完全依赖互联网开展业务。
在本教程中,我们将介绍什么是拒绝服务攻击,它是如何发生的,以及如何防范此类攻击。
ManageEngine EventLog Analyzer是另一个优秀的syslog服务器选择。它可以保护您组织敏感数据免受未经授权的访问、修改、安全威胁和泄露。
拒绝服务(DoS)攻击的类型
DoS攻击有两种类型;
- DoS – 这种类型的攻击由单个主机执行
- 分布式DoS – 这种类型的攻击由一系列受感染的计算机执行,这些计算机都以同一受害者为目标。它会用数据包淹没网络。
DoS攻击如何工作?
让我们看看DoS攻击是如何执行的以及使用的技术。我们将介绍五种常见的攻击类型。
Ping of Death
ping命令通常用于测试网络资源的可用性。它通过向网络资源发送小数据包来工作。Ping of Death利用了这一点,发送的数据包超过了TCP/IP允许的最大限制(65,536字节)。TCP/IP分片会将数据包分解成小块发送到服务器。由于发送的数据包比服务器能处理的要大,服务器可能会冻结、重启或崩溃。
Smurf
这种攻击类型使用大量的互联网控制消息协议(ICMP)ping流量,目标是一个互联网广播地址。回复的IP地址被欺骗为目标受害者的IP。所有回复都发送给受害者,而不是用于ping的IP。由于一个互联网广播地址最多可以支持255个主机,因此Smurf攻击会将单个ping放大了255倍。其效果是将网络减慢到无法使用的程度。
缓冲区溢出
缓冲区是RAM中的一个临时存储位置,用于保存数据,以便CPU在将其写回磁盘之前进行处理。缓冲区有大小限制。这种类型的攻击会向缓冲区加载比其容量更多的数据。这会导致缓冲区溢出并损坏其存储的数据。缓冲区溢出的一个例子是发送带有文件名为256个字符的电子邮件。
Teardrop
这种攻击类型使用更大的数据包。TCP/IP将其分解成片段,然后在接收主机上进行重组。攻击者会操纵发送的数据包,使其相互重叠。这可能导致目标受害者在尝试重组数据包时崩溃。
SYN攻击
SYN是Synchronize(同步)的缩写。这种攻击类型利用三次握手来使用TCP建立通信。SYN攻击通过向受害者发送不完整的SYN消息来工作。这会导致受害者机器分配从未使用的内存资源,并拒绝合法用户访问。
DoS攻击工具
以下是一些可用于执行DoS攻击的工具。
- Nemesy – 此工具可用于生成随机数据包。它可以在Windows上运行。此工具可以从http://packetstormsecurity.com/files/25599/nemesy13.zip.html下载。由于该程序的性质,如果您的杀毒软件,它很可能会被检测为病毒。
- Land and LaTierra – 此工具可用于IP欺骗和打开TCP连接
- Blast – 此工具可从http://www.opencomm.co.uk/products/blast/features.php下载
- Panther – 此工具可用于用UDP数据包淹没受害者的网络。
- Botnets – 这些是互联网上大量的受感染计算机,可用于执行分布式拒绝服务攻击。
另请参阅:最佳免费DDoS攻击在线工具|软件|网站
如何防止DoS攻击?
组织可以采纳以下策略来保护自己免受拒绝服务攻击。
- 诸如SYN洪水之类的攻击利用了操作系统中的漏洞。安装安全补丁可以帮助减少此类攻击的机会。
- 入侵检测系统也可用于识别甚至阻止非法活动。
- 防火墙可以通过识别攻击者的IP来阻止所有来自攻击者的流量,从而阻止简单的DoS攻击。
- 路由器可以通过访问控制列表进行配置,以限制对网络的访问并丢弃可疑的非法流量。
黑客活动:Ping of Death
我们将假设您在本练习中使用Windows。我们还将假设您至少有两台位于同一网络上的计算机。DoS攻击在您未经授权的网络上是非法的。这就是为什么您需要为本练习设置自己的网络。
在目标计算机上打开命令提示符
输入命令ipconfig。您将获得类似如下的结果
在此示例中,我们使用的是移动宽带连接详细信息。记下IP地址。注意:为了使此示例更有效,您必须使用LAN网络。
切换到您要用于攻击的计算机并打开命令提示符
我们将以无限数据包(65500)ping我们的受害者计算机
输入以下命令
ping 10.128.131.108 –t |65500
此处,
- “ping”将数据包发送给受害者
- “10.128.131.108”是受害者的IP地址
- “-t”表示数据包应持续发送直到程序停止
- “-l”指定要发送给受害者的数据负载
您将获得类似如下的结果
用数据包淹没目标计算机对受害者影响不大。为了使攻击更有效,您应该从多台计算机同时攻击目标计算机。
上述攻击可用于攻击路由器、Web服务器等。
如果您想查看攻击对目标计算机的影响,您可以打开任务管理器并查看网络活动。
- 右键单击任务栏
- 选择启动任务管理器
- 单击网络选项卡
- 您将获得类似如下的结果
如果攻击成功,您应该会看到网络活动增加。
黑客活动:发起DoS攻击
在此实际场景中,我们将使用Nemesy生成数据包并淹没目标计算机、路由器或服务器。
如上所述,Nemesy将被您的杀毒软件检测为非法程序。您将不得不为本练习禁用杀毒软件。
- 从http://packetstormsecurity.com/files/25599/nemesy13.zip.html下载Nemesy
- 解压缩并运行程序Nemesy.exe
- 您将获得以下界面
输入目标IP地址,在此示例中;我们使用了上面示例中使用的目标IP。
此处,
- 0个数据包表示无穷大。如果您不想发送无限数据包,可以将其设置为所需数量。
- size字段指定要发送的数据字节,delay字段指定时间间隔(以毫秒为单位)。
单击发送按钮
您应该能够看到以下结果
标题栏将显示发送的数据包数量。
单击halt按钮可停止程序发送数据包。
您可以监控目标计算机的任务管理器以查看网络活动。
什么是分布式拒绝服务(DDoS)攻击?
DDoS攻击是DoS攻击的升级形式,在这种攻击中,恶意流量来自多个来源——这使得仅仅通过阻止单个来源来停止攻击变得更加困难。在DDoS攻击中,多个受感染的计算机(统称为僵尸网络)被用来用流量淹没目标系统,从而造成服务拒绝。由于其分布式性质,攻击者控制了多个流量来源,因此这些攻击更难缓解。
摘要
- 拒绝服务攻击的目的是拒绝合法用户访问网络、服务器等资源。
- 有两种类型的攻击:拒绝服务和分布式拒绝服务。
- 可以使用SYN洪水、Ping of Death、Teardrop、Smurf或缓冲区溢出来执行拒绝服务攻击。
- 操作系统安全补丁、路由器配置、防火墙和入侵检测系统可用于防范拒绝服务攻击。
另请参阅:面向初学者的免费道德黑客教程:学习如何黑客[在线课程]