拒绝服务 (DoS) 攻击:它是什么以及如何防止它

您是否曾经感到网络速度异常缓慢或某个网站意外不可用?有可能正在进行拒绝服务攻击。(Denial of Service attack)您可能熟悉“拒绝服务(Denial of Service)”这个术语,但实际上,很难区分真正的攻击和正常的网络活动。拒绝服务(或 DoS)(Denial of Service (or DoS))攻击,顾名思义,与拒绝服务直接相关,尤其是互联网(Internet)

DoS攻击是一种吞噬用户资源并使网络瘫痪,从而阻止合法用户访问任何网站的攻击。DoS攻击一直是并且仍然是最复杂的攻击之一,没有潜在的预防策略。在这篇文章中,我们将阐明什么是DoS攻击以及如何更好地防止它以及在您知道自己受到攻击时该怎么做。

什么是DoS(DoS)拒绝服务(Denial)攻击(Service Attack)

DoS攻击中,具有恶意意图的攻击者会阻止用户访问服务。他通过针对您的计算机及其网络连接或您尝试使用的网站的计算机和网络来做到这一点。因此,他可以阻止您访问您的电子邮件或在线帐户。

想象一种情况,您正尝试登录您的网上银行(Internet Banking)帐户进行在线交易活动。然而,尽管看起来很奇怪,尽管您拥有快速的互联网连接,但您仍被拒绝访问银行的网站。现在可能有两种可能性 - 您的互联网服务提供商已关闭或您受到DoS攻击!

DoS攻击中,攻击者向相关网站的主服务器发送大量多余的请求,这基本上会使其过载并在保留容量之前阻止任何进一步的请求。这会导致对本网站传入的合法请求的拒绝,因此,您是受害者( you’re the victim)

但是,攻击方式可能会根据攻击者的动机而有所不同,但这是发起DoS攻击的最常见方式。其他攻击方式可能包括阻止特定人员访问某个网站,在服务器端阻塞两台机器之间的连接,从而中断服务等。

一些攻击者还对另一种DoS攻击采取行动——电子邮件轰炸(Email bombing),其中大量垃圾邮件被生成并涌入一个人的收件箱(Inbox),从而阻止对邮件服务器的任何进一步请求。这可能会广泛发生,即使是在您的雇主提供给您的电子邮件帐户上,更不用说雅虎、Outlook 等(Yahoo, Outlook, etc)公共邮件服务了。由于分配的存储配额将被填满,您甚至可能无法再接收任何合法电子邮件。由于他们的野心多种多样,攻击者的动机可能从“只是为了好玩”到财务上的成功再到报复。

相关(Related):浏览器卡在访问(Checking Your Browser Before Accessing)消息之前检查您的浏览器。

DoS 攻击的类型

根据攻击的性质和意图,有几种类型的程序可用于在您的网络上发起DoS攻击。请注意以下最常用的DoS攻击:

1] SYN洪水

SYN Flood过度利用了打开TCP连接的标准方法。当客户端想要打开与服务器开放端口的TCP连接时,它会发送一个SYN数据包。服务器接收数据包,对其进行处理,然后发回一个SYN-ACK数据包,其中包含存储在传输控制块 (TCB)(Transmission Control Block (TCB))表中的源客户端信息。在正常情况下,客户端会发回一个确认服务器响应的ACK数据包,从而打开TCP连接。然而,在潜在的SYN 洪水攻击下(SYN flood attack),攻击者使用模仿 IP 地址发出大量连接请求,目标机器将其视为合法请求。随后,它忙于处理其中的每一个,并尝试为所有这些恶意请求打开连接。

DoS 或拒绝服务攻击

在正常情况下,客户端会发回一个确认服务器响应的ACK数据包,从而打开TCP连接。然而,在潜在的SYN洪水攻击下,攻击者使用模仿 IP 地址发出大量连接请求,目标计算机将其视为合法请求。随后,它忙于处理其中的每一个,并尝试为所有这些恶意请求打开连接。这导致服务器继续等待每个实际上从未到达的连接请求的ACK数据包。(ACK)这些请求很快填满了服务器的TCB表之前,它可以使任何连接超时,因此任何进一步的合法连接请求都被推入等待队列。

阅读(Read)什么是赎金拒绝服务(What is Ransom Denial of Service)

2] HTTP洪水

这最常用于攻击 Web 服务和应用程序。这种攻击并没有过多强调高速网络流量,而是发出一个完整且看似有效的HTTP POST 请求(HTTP POST requests)。专门为耗尽目标服务器的资源而设计的,攻击者会发出许多这样的请求,以确保目标服务器在忙于处理虚假请求时不会拉过进一步的合法请求。然而如此简单,但很难将这些HTTP请求与有效请求区分开来,因为Header的内容在这两种情况下似乎都是可接受的。

3]分布式拒绝(Distributed Denial)服务攻击(Service Attack)DDoS

 

分布式拒绝服务(Distributed Denial of Service)DDoS攻击就像这个团伙中的装饰人员。DDoS比普通DoS攻击要复杂得多,它通过不止一台计算机在目标机器上生成流量。攻击者同时控制多台受感染的计算机和其他设备,并分配使目标服务器充满流量的任务,从而严重消耗其资源和带宽。如果存在挥之不去的安全问题,攻击者还可以使用您的计算机对另一台计算机发起攻击。

现在,很明显,与DoS相比, (DoS)DDoS 攻击(DDoS attack)可以更加有效和真实 。一些可以轻松处理多个连接的网站可以通过同时发送大量垃圾邮件请求来轻松关闭。僵尸网络(Botnets)用于招募各种易受攻击的设备,这些设备的安全性可能会受到威胁,方法是向其中注入病毒并将其注册为僵尸军队(Zombie army),攻击者可以控制这些设备并将其用于DDoS攻击。因此(Hence),作为普通的计算机用户,您需要注意系统中和系统周围的安全漏洞,否则您可能最终会做某人的肮脏工作而永远不会知道它。

DoS 攻击预防

DoS攻击无法预先确定。您无法阻止成为DoS攻击的受害者。没有很多有效的方法。但是,您可以减少成为此类攻击的一部分的可能性,因为您的计算机可用于攻击另一台计算机。请注意以下要点,这些要点可以帮助您获得对您有利的机会。

  1. 如果尚未完成,请将防病毒(antivirus)程序和防火墙(firewall)部署到您的网络中。这有助于将带宽使用限制为仅经过身份验证的用户。
  2. 服务器配置(Server configuration)可以帮助减少被攻击的可能性。如果您是某家公司的网络管理员,请查看您的网络配置并强化防火墙策略以阻止未经身份验证的用户访问服务器资源。
  3. 一些第三方服务提供针对(third-party services)DoS攻击的指导和保护。这些可能很昂贵但也很有效。如果您有资金在您的网络中部署此类服务,那么最好开始。

DoS 攻击通常针对高知名度的组织(high-profile organizations),例如银行和金融部门的公司、贸易和商业存根等。人们应该充分意识到并保持警惕,以防止任何潜在的攻击。虽然这些攻击与机密信息的盗窃没有直接关系,但它可能会花费受害者大量的时间和金钱来解决这个问题。

有用的链接:(Useful links:)

  • 防止拒绝(Denial)服务(MSDN)攻击(Service Attacks)– MSDN
  • DoS/Denial服务攻击(Service Attacks)的最佳实践– MSDN
  • 了解拒绝服务攻击(Denial-of-Service Attacks)US-Cert.go v
  • 保护Office 365 免受拒绝(Against Denial)服务攻击 - 阅读(Service Attacks – Read)Microsoft的更多信息
  • 图片来源维基百科。



About the author

我是一名硬件工程师,专门从事iPhone、iPad等苹果产品的设计和开发。我在 iOS 和边缘设备以及 Git 和 Swift 等软件开发工具方面都有经验。我在这两个领域的技能使我对 Apple 设备操作系统 (OS) 如何与应用程序和数据源进行交互有了深刻的理解。此外,我在 Git 方面的经验使我能够处理代码版本控制系统,这有助于在开发软件时提高效率和生产力。



Related posts