DDoS攻击的工具介绍
1.低轨道离子加农炮(LOIC)
1.1 什么是低轨道离子加农炮(LOIC)?
低轨道离子加农炮是通常用于发起DoS和DDoS攻击的工具。它最初是由Praetox Technology作为网络压力测试应用程序而开发的,但此后成为开源软件,现在主要被用于恶意目的。它以非常易于使用且易于获取的特性而闻名,并且因为被黑客组织Anonymous的成员以及4Chan论坛的用户使用而臭名昭彰。
通过使用该工具,几乎毫无技术知识的用户都可以发起DDoS攻击。它可以从很多来源下载,并使用简单的点击界面,此外,用户甚至可以使用称为JS LOIC的JavaScript版本和称为“低轨道Web加农炮”的Web版本从Web浏览器发起攻击。
1.2 LOIC的工作原理
它的工作原理是向目标服务器发送大量TCP、UDP 或HTTP 数据包以中断服务。一名攻击者使用LOIC无法产生足够的垃圾流量来严重影响目标;严重的攻击需要成千上万的用户协调,对同一目标同时发起攻击。为了使协同攻击更容易,用户可以使用IRC聊天频道来运行LOIC的“Hivemind”(蜂群思维)版本,该版本允许一个“主”用户控制多台联网的“从”计算机,从而创建一个自愿的僵尸网络。这是一种热门做法,因为从属设备的所有者可以声称自己是非自愿僵尸网络的无辜受害者。
LOIC Hivemind在2008年被Anonymous用来攻击Church of Scientology网站,以回应该教会为撤下YouTube视频采取的法律手段。LOIC还在2010年出现了一次著名用例,当时Visa和MasterCard 冻结了付给WikiLeaks的款项,因此WikiLeaks的支持者攻击了这两家信用卡公司的网站。
1.3 如何停止LOIC攻击?
使用本地防火墙可以防护小型LOIC HTTP攻击,方法是让服务器管理员查看日志并标识攻击者的IP并丢弃他们的请求。但是,这种策略无法抵御数百甚至数千个攻击者协同发起的大规模攻击。本地防火墙也无法防范TCP或UDP洪水,后者甚至可以瞄准并破坏防火墙。Web应用程序防火墙 (WAF) 可以提供针对HTTP洪水的强大保护,而专用的DDoS保护可以阻止TCP和UDP攻击。
幸运的是,使用LOIC的攻击者很容易被发现;LOIC不能通过代理使用,因此攻击者的IP地址对目标可见。许多国家(包括美国、英国、西班牙和土耳其)都对使用LOIC的攻击者采取了法律行动。
2.高轨道离子加农炮(HOIC)
2.1 什么是高轨道离子加农炮(HOIC)?
高轨道离子加农炮是一种用于发起DoS 和DDoS攻击的热门工具,目的是用Web流量充塞受害者的网络,并关闭网站或服务。它是由黑客主义者组织Anonymous开发的易于获取的开源软件,是名为低轨道离子加农炮的较旧DDoS工具的后续工具(均以科幻视频游戏武器命名)。虽然大多数恶意软件工具都需要较高水平的技术技能,但是HOIC提供简单而用户友好的界面,仅需单击按钮即可开启。
尽管HOIC被用于许多恶意和非法攻击,但它仍然可以通过合法途径获取,因为HOIC带有合法测试工具,可供希望在自己的网络上实施“压力测试”的用户使用。
2.2 HOIC的工作原理
HOIC通过应用程序层HTTP洪水DDoS攻击产生效果,用HTTP “GET”和“POST”请求充斥受害者的服务器,使服务器的请求容量超负荷。对于高级攻击,可以使用自定义脚本一次针瞄准受害者站点的多个子域。HOIC还可以同时瞄准多达256个站点,使用户可以协调并发攻击。这种让多个攻击者同时针对许多不同页面和域的“散弹枪方法”会使防护和检测工作更具挑战性。
内置的增强脚本还可以帮助攻击者避开检测。除增强脚本外,许多HOIC用户还使用瑞典代理来掩盖其位置(据信,他们选择瑞典是因为该国实行严格的互联网隐私法)。
使用HOIC发起严重攻击需要某种协调,因为它需要大约50个用户同时对同一目标发起攻击。2012年,Anonymous证明了HOIC的有效性 - 该组织成功地攻击了几家大型唱片公司、RIAA以及FBI。这是历史上最大的DDoS攻击之一,估计需要 27,000 台计算机同时使用 HOIC。
2.3 什么可以阻止HOIC攻击?
防护HOIC HTTP洪水攻击的策略有好几种。IP信誉筛选(IPRF)是可根据已知恶意IP 地址的数据库检查传入IP地址并将其流量保持在网络之外的一种预防措施。Web应用程序防火墙(WAF)可以设置速率限制规则,这些规则将丢弃来自发出可疑数量请求的IP地址的流量。还有一些测试Web客户端是否合法的方法,例如captcha 验证,以及一种更为复杂的方法 - 要求Web浏览器解出一个简单的数学问题而不中断用户体验。
大多数DDoS防护产品和服务都应包括针对HOIC攻击的防护。包括WAF的全面DDoS保护计划(例如由Cloudflare 提供的)可对第 7 层攻击(例如由HOIC发起的攻击)提供强大的防御能力。
3.死亡之子(R.U.D.Y.)
3.1 什么是R.U.D.Y.攻击?
“死神之子”又称R.U.D.Y.,是一种拒绝服务攻击工具,旨在通过以惊人的缓慢速度提交表单数据来使Web服务器保持捆绑状态。R.U.D.Y.漏洞利用属于低速缓慢攻击,因为它着重于创建少量持续请求、而不是通过大量快速请求使服务器不堪重负。成功的R.U.D.Y. 攻击将导致受害者的源站无法用于正常流量。
R.U.D.Y.软件包括一个用户友好的点击界面,因此攻击者只需将工具指向带有漏洞的目标即可。任何接受表单输入的Web服务都容易受到R.U.D.Y.攻击,因为该工具通过嗅探表单字段并利用表单提交过程来运转。
3.2 R.U.D.Y.攻击的工作原理
R.U.D.Y.攻击可分为以下步骤:
1.R.U.D.Y.工具对受害人的应用程序进行抓取以查找表单字段。
2.找到表单后,该工具将创建一个HTTP POST请求以模仿正常的表单提交。该POST请求包含一个标头*,警告服务器其将提交非常长的内容。
3.然后,该工具通过将表单数据分解为小至每个1字节的数据包,以10秒钟左右的随机间隔将这些数据包发送到服务器,从而拉长提交表单数据的过程。
4.工具持续无限期提交数据。Web服务器将保持连接打开以接受数据包,因为攻击行为与连接速度较慢的用户提交表单数据的行为类似。在这个时候,Web服务器处理正常流量的能力就会受损。
R.U.D.Y.工具可以同时创建多个针对一个Web服务器的慢速请求。由于Web服务器一次能够处理的连接数量有限,因此R.U.D.Y.攻击有可能占用所有可用的连接,这意味着试图访问Web服务器的任何正常用户都将被拒绝服务。R.U.D.Y.甚至可以通过计算机网络同时进行攻击,导致具有大量可用连接的强大Web服务器下线,这被称为分布式拒绝服务(DDoS)攻击。
*HTTP标头是随HTTP请求或响应一起发送的键/值对,它们提供重要信息,例如正在使用的 HTTP 版本、内容所用的语言、要传递的内容量等等。
3.3 如何阻止R.U.D.Y.攻击
因为慢速和低速攻击比传统的拒绝服务攻击要巧妙得多,因此很难检测到,但是可以采取保护措施来防止。一种预防措施是在Web服务器上设置更严格的连接超时间隔,也就是说最慢的连接将被切断。但该解决方案具有副作用:服务器可能对Internet连接速度较慢的合法用户拒绝服务。或者可以采用反向代理解决方案,如CloudFlare的DDoS 防护,筛选 R.U.D.Y.攻击等低速缓慢攻击流量,但不会使合法用户断开。
4.Slowloris DDoS
4.1 什么是Slowloris DDoS攻击?
Slowloris是一种拒绝服务攻击程序,使攻击者能够通过在攻击者与目标之间打开并维持许多同时的HTTP连接来压垮目标服务器。
4.2 Slowloris 攻击如何工作?
Slowloris是应用程序层攻击,通过利用部分HTTP请求来运作。该攻击通过打开与目标 Web服务器的多个连接,然后使这些连接保持打开状态尽可能久的时间来起作用。
Slowloris不是一种攻击类别,而是一种特定的攻击工具,旨在让一台计算机在不占用大量带宽的情况下使服务器宕机。与消耗带宽的基于反射的DDoS攻击(如NTP 放大)不同,这种类型的攻击使用很少量的带宽,旨在利用看似比正常速度慢的、模拟正常流量的请求来消耗服务器资源。它可以归入称为“慢速”攻击的攻击类别。目标服务器可用于处理并发连接的线程数量有限。每个服务器线程试图保持活跃,并等待慢速请求完成,而这永远不会发生。服务器超过最大可能连接数时,不再应答各个增加的连接,造成拒绝服务。
Slowloris攻击分为4个步骤:
1.攻击者首先通过发送多个部分HTTP请求标头来打开与目标服务器的多个连接。
2.目标为每个传入请求打开一个线程,目的是在连接完成后关闭该线程。为提高效率,如果连接花费时间太长,服务器将使非常长的连接超时,从而为下一请求释放线程。
3.为了防止目标使连接超时,攻击者会定期向目标发送部分请求标头,以使请求保持活动状态。本质上说:“我还在这里!我很慢,请等我。”
4.目标服务器在等待请求终止时永远无法释放任何打开的部分连接。一旦所有可用线程都被使用,服务器将无法响应来自常规流量的其他请求,从而导致拒绝服务。
Slowloris背后的关键是它能够以很少带宽消耗引起很大麻烦。
4.3 如何缓解Slowloris攻击?
对于易受Slowloris攻击的Web服务器,有一些方法可以减轻某些影响。易受攻击的服务器的缓解措施可以分为3大类:
1.增加服务器可用性 - 增加服务器在任何时间允许的最大客户端数量,这将增加攻击者使服务器过载前必须建立的连接数。实际上,无论增加多少,攻击者都可以扩展攻击数量以攻克服务器容量。
2.限制传入请求的速率 - 基于某些使用因素限制访问,这将有助于缓解Slowloris 攻击。限制单个IP地址允许建立的最大连接数,限制慢速传输速度,以及限制客户端允许保持连接的最长时间,这些技巧都是限制慢速攻击的有效方法。
3.基于云的保护 - 使用可充当反向代理的服务,保护源站服务器。