新网络环境下应用层DDoS攻击的剖析与防御

  应用层DDoS攻击分析

  1.Net-DDoS攻击与App-DDoS攻击

  按攻击所针对的网络层次可以把DDoS攻击分为:网络层DDoS(Net-DDoS)攻击和App-DDoS攻击。Net-DDoS攻击主要是利用了现有低层(包括IP层和TCP层)协议的漏洞来发动攻击。典型的攻击方式是:使用伪造IP地址的攻击节点向目标主机发送大量攻击分组(TCP、 ICMP、UDP等分组),利用TCP的三次握手机制使目标服务器为维护一个非常大的半开放连接列表而消耗非常多的CPU和内存资源,最终因为堆栈溢出而导致系统崩溃无法为正常用户提供服务。

  App-DDoS攻击虽然还是利用洪水式的攻击方法,但与Net-DDoS攻击不同的是它利用了高层协议,例如HTTP。由于高层协议的多样性与复杂性,App-DDoS攻击很难被检测到,而且高层协议通常具有较强的功能,可以实现多种复杂的功能,因此App-DDoS攻击所产生的破坏力远大于传统的Net-DDoS攻击。App-DDoS攻击有以下两种攻击方式:带宽耗尽型和主机资源耗尽型。带宽耗尽型(例如HTTPFlooding)的目标是通过大量合法的HTTP请求占用目标网络的带宽,使正常用户无法进行Web访问。攻击的具体实现可以有多种不同的方式。攻击者可以通过单线程或多线程向目标 Web服务器发送大量的HTTP请求,这些请求可以随机生成也可以通过拦截用户的正常请求序列然后重放产生。请求内容可以是Web服务器上的正常页面(例如主页),也可以是重定向页面、头信息或某些错误文档,更复杂的可以是对动态内容、数据库查询的请求。攻击者甚至可以模拟搜索引擎采用递归方式,即从一个给定的HTTP链接开始,然后以递归的方式顺着指定网站上所有的链接访问,这也叫爬虫下载(spidering)。主机资源耗尽型与 HTTPFlooding不同,其目的是为了耗尽目标主机的资源(例如:CPU、存储器、Socket等)。攻击者用少量的HTTP请求促使服务器返回大文件(例如图像、视频文件等),或促使服务器运行一些复杂的脚本程序(例如复杂的数据处理、密码计算与验证等)。这种方式不需要很高的攻击速率就可以迅速耗尽主机的资源,而且更具有隐蔽性。

  与传统基于低层协议的DDoS攻击相比,App-DDoS攻击具有以下特点:

  首先,它利用了高层协议(HTTP)实现。许多基于Web的应用(例如HTTP或HTTPS)通过开放的TCP端口(如TCP端口80与443)为客户提供服务,因此低层的检测系统很难判断经过这些开放端口的用户请求是来自于正常用户还是来自于攻击者。这导致针对Web应用的App-DDoS攻击请求可以顺利穿越基于低层协议的检测系统,通过开放的TCP80端口直接到达Web服务器或网络数据库(见图1)。

  其次,由于App-DDoS攻击是以高层信息流(HTTP流)作为攻击手段,其实现是以正常TCP连接和IP分组为前提,因此形成攻击的HTTP流不具备传统DDoS攻击的标志性特征(例如:TCP半开放连接和畸形IP数据报等),而且它无法采用虚假IP地址(虚假IP地址无法建立有效的TCP连接)的方法。越来越多的主机(包括个人主机和企业大型主机)全天候地连接互联网,为这种攻击提供了有利的条件和环境。

  此外,由于高层的服务和协议差异很大,App-DDoS攻击可以有多种不同的形式,而且一个简单的HTTP请求往往可以触发服务器执行一系列复杂的操作,例如:数据库查询、密码验证等,所以通过大量傀儡机向目标发送海量分组的攻击方式并不是App-DDoS攻击的惟一选择,它可以用低速率的请求、少量的攻击节点实现传统DDoS的攻击效果,这给现有的检测带来了很大困难。2004年的蠕虫病毒“Mydoom”及其后来的变体“Mytob”就是典型的 HTTPFlooding攻击案例,而且也显示出目前DDoS攻击的发展趋势。该病毒采用了常用的Web服务器请求技术,通过模仿浏览器IE的请求文本,使Web服务器难以区分正常的和异常的HTTP请求,从而提高了攻击的破坏能力。由于所有的攻击请求都是由合法分组构成,不具备传统DDoS攻击流的特征,因此攻击请求顺利穿越所有基于IP层和TCP层的检测系统,最终导致SCO和微软等知名网站的服务器崩溃。

  2.DDoS的攻击环境

  DDoS攻击所处的背景环境可以分为:平稳背景流环境和突发流环境。平稳背景流是指那些流量随时间变化不大的网站,许多普通网站的流量都具有平稳的特性。突发流是现代网络流的一种新现象,近几年开始受到网络研究者的关注。对于Web应用来说,突发流是指海量的正常Web用户同时访问某一特殊的网站,从而导致Web服务器的访问量和相关网络的流量产生巨大的波动。典型的突发流事例包括:1998年世界杯Web网站,2000年悉尼奥运会网站,2000、2001、2002年澳大利亚网球公开赛等体育网站的访问流量随比赛日程表出现的显著波动;“911”恐怖袭击后CNN网站访问量的突增;Linux“红帽子”发布的首天,发布网站的访问量出现戏剧性的波动等。

  可以预测,随着Web应用的不断推广,平稳背景流不再是互联网流量的惟一特征,具有突发流特征的Web网站将不断地增加,例如:网上拍卖活动、视频点播、大型活动的现场直播等。而且网络技术的发展也为突发流提供了有利的条件,例如近年风靡全球的P2P就是一种具有典型突发流特性的网络。与传统的平稳数据流不同,突发流严重影响着通信网络和设备的性能,因此,如何有效处理突发流及区分隐藏于突发流中的DDoS攻击将成为网络研究中的新问题。

  3.不同DDoS攻击的检测

  根据上述分析,可以把现有的DDoS攻击划分为以下4种类别:平稳背景流下的Net-DDoS攻击;平稳背景流下的App-DDoS攻击;突发流下的Net-DDoS攻击;突发流下的App-DDoS攻击。

  平稳背景流下的Net-DDoS攻击检测是目前研究得最多、最成熟的一种,而且已经有许多有效的检测方案,这些方案主要通过TCP段或IP包的头信息实现攻击检测。例如:Cabrera等基于MIB(管理信息数据库)把ICMP、UDP和TCP的分组统计异常映射到特定的DDoS攻击,通过匹配分析实测分组属性与特定DDoS攻击的异常特征来实现检测;Jin等假定DDoS的攻击源是虚假IP地址,通过到达分组的IP地址与TTL(生存时间)来判断是否存在基于虚假IP地址的DDoS攻击。Kim等计算到达分组在给定的正常流模式下合法性的或然概率,通过或然概率检测DDoS攻击;Chen等通过检测到达分组流在频率域中特定频率点的异常实现脉冲式攻击的检测。

  平稳背景流下的App-DDoS攻击检测/防御可以有以下的方法:

  (1)请求速率/QoS控制

  Ranjan等使用统计方法判断每个HTTP会话的异常性,然后通过控制HTTP速率抵御攻击。

  (2)基于“Puzzle”的方法

  Kandula等应用基于“Puzzle”的方法实现App-DDoS攻击的检测与防御,它的主要思路是:攻击常常是由程序执行,而程序只能按预先设计的方案进行,不具有人的智能性,因此,当怀疑服务器处于攻击威胁时,可以生成一些简单的问题要求用户回答,如果返回的结果正确说明是正常用户,否则就是攻击源。

  (3)基于“进攻”的防御方法

  Walfish等认为,通过触发所有的客户(包括正常用户与攻击者)提高其请求速率可以有效排挤攻击者。其依据是攻击发生时,攻击者通常已经耗尽自身的链路带宽,而正常用户的带宽有较大的冗余,因此提高正常用户的请求速率可以有效降低攻击者对服务器入口处的带宽占有率。

  对于突发流下的Net-DDoS攻击检测可以利用正常流与异常流的特征差异实现。这是因为尽管突发流的流量很大,但是组成正常突发流的IP分组及相应的TCP连接都是正常,而用于Net-DDoS攻击的分组或连接通常都具有以下的特征:畸形结构的IP分组、不完整的TCP连接等。因此,这一特征也可以有效用于攻击的检测与过滤。

  从现有的研究看,针对突发流环境下的App-DDoS攻击检测进行研究的文献并不多见。由于突发性与大流量是突发流与App-DDoS攻击的共同特征,因此,传统用于处理DDoS攻击的请求速率/QoS控制方法并不能有效区分正常突发流用户的请求与App-DDoS攻击请求。这是由于:首先,对汇聚流进行速率监控只能起到预警的作用,无法区分出攻击请求分组,如果采用随机丢弃客户请求分组的办法缓解服务器端的Web流量有可能把正常用户的请求丢弃从而影响合法用户的访问。其次,由于App-DDoS可以采用低速的攻击方式(例如:复杂的脚本程序与数据库查询),因此速率控制不一定能保证有效,而且速率控制一般只能适用于具有平稳特性的流的检测,无法应用于突发流和App-DDoS攻击流同时发生的场景。对每个Web用户分别进行HTTP请求速率监控也不足以有效检测App-DDoS攻击,因为攻击者可以利用现有的工具对攻击流进行成形,例如:采用间歇性脉冲方式的低速率攻击,在脉冲期间采用较高的速率攻击,脉冲结束后,攻击暂停等待下一个攻击脉冲的到来,这使每个攻击节点的平均请求速率非常低,不容易被检测。再次,对现代Web服务器及网络,随着用户端带宽和Web页面复杂性的不断增长,正常用户的每次点击浏览行为有可能产生每秒几十个HTTP请求,这种速率已经与“Mydoom”的攻击速率相当。

  现有基于流特征的检测方法一般隐含假设条件:攻击流与正常流存在统计上的差异,但是这个假设并不适用于突发流环境下的App-DDoS攻击检测。由于App-DDoS攻击者可以利用HTTP仿真工具组织攻击流,使攻击流模仿正常用户的请求流特性(包括HTTP请求速率、TCP连接特性、IP分组流特性等),因此,上述基于流特性的检测方法也不适用于这一类攻击。

  Jung等使用两个属性区分DoS攻击和正常突发流:DoS攻击是由少量攻击主机急剧增长的请求率产生,而正常突发流是由客户数量的增长造成的;DoS攻击者通常是新用户,而正常突发流下的用户通常在突发流产生前都访问过该网站。因此通过约束每个访问客户机可使用的资源(如:TCP连接数、占用CPU时间、占用缓存大小及用户响应时间)及比较新客户的比率来区分DoS攻击和正常突发流。但是,对于现代网络而言,这种方法的效果并不明显。首先,Web应用的客户数量很大,因此不可能逐一确定每个客户可使用的合法资源数量,而且假设攻击由少量节点产生只能适用于传统的DoS攻击,随着网络的普及化,这种假设不适用于现代高速网络下的DDoS攻击。近期的互联网调查发现,现代的DDoS攻击通常与“僵尸网络”结合在一起,因此攻击者本身就能形成一个庞大的网络。另外,仅通过IP地址区分攻击也是不可行,因为App-DDoS攻击请求通常由病毒程序产生,而病毒程序有可能驻留在合法的客户机上。

  基于“Puzzle”的方法虽然具有检测与防御的功能,但是同样具有一些不足:需要得到客户端的支持;会干扰Web用户的正常浏览;没有办法解决攻击程序与正常用户同处于一个终端的情况;有可能导致互联网中的搜索引擎和缓存/代理等无法正常工作;由于基于“Puzzle”的方法需要耗费大量服务器的资源(CPU计算、内存等),在突发流环境下,难以实时处理海量的用户信息,而且其本身很容易成为DDoS攻击的目标。

  基于“进攻”的方法同样需要客户端的支持,而且它的另外一个假设是服务器入口处具有足够的带宽,这在实际网络中是不可能实现的。

  由此可见,单靠传统的分组特征、流特征、速率分析来检测与控制突发流环境下的App-DDoS攻击是不够的。

  4.基于访问行为的防御

  按照网络分层模型的理论,不同层次的信息流应该在对应的层次进行处理。App-DDoS是一种高层攻击行为,简单地通过判断每一个进入服务器的IP 分组、TCP连接来实现高层攻击检测显然是不够的,而孤立地判断每一个HTTP请求的正常性也不足以有效地检测App-DDoS攻击。针对App- DDoS攻击的检测系统应该建立在对应的层次才能获取足够的检测信息,并且寻找有效的观测信号来实现检测,如图2所示。

  Web挖掘的研究指出通过对Web用户的访问页面进行内容监控和分析,可以挖掘出用户的兴趣,而且其他一些研究也指出一个Web网站仅有10%的内容被客户高频访问(约90%),而且文件被访问的概率呈Zipf分布。这说明尽管访问者各不相同,但是在一定的时期内他们对给定的Web服务器的访问兴趣和访问行为是非常近似的。已有的研究也表明,对于突发流的场景,剧增的流量主要是由于用户数量的增长而产生的,不同用户的访问行为(包括用户的访问焦点、点击Web页面的次序、浏览时间间隔等)却是非常近似的,所以高层的Web用户访问行为特征可以作为App-DDoS攻击检测的有效信号。下面进一步讨论这种方法的有效性。

  用户的访问行为可以由3个因素描述:HTTP请求速率、页面阅读时间和请求对象序列(包括请求对象与各请求的先后次序)。因此,App-DDoS攻击者(或者具有一定智能的攻击程序)可以从这3个方面模仿正常用户行为:小的HTTP请求速率、大的页面浏览时间和仿真的HTTP请求序列。前两者会降低攻击效果,而且只能通过增加被感染的计算机来弥补,提高了攻击难度。仿真HTTP请求序列包括两方面内容:

  (1)仿真正常HTTP的流特征

  这可以通过HTTP模拟工具实现,通过这种方法形成的攻击流具有一般正常流的特征属性(例如:到达率、阅读时间),因此不容易被检测出来。

  (2)仿真正常用户的HTTP请求对象

  简单的方法可能有4种:随机生成、预设、在线拦截并重放请求序列或者直接操控。第一种方法是由攻击程序随机生成请求对象或者随机点击链接。由于是随机生成,所以其访问的内容与正常用户相比将不具有明确的目的性。第二种方法是由攻击程序预先设定一个攻击的HTTP请求序列,所表现出来的特征是周期性地重复浏览某些相同的页面对象。第三种方法是拦截所在客户机的请求片断然后重放,但是由于被感染的客户机不一定会访问被攻击目标的Web服务器,因此这种方法并不能达到预期的攻击效果。第四种办法是攻击者设置一个中心控制点,周期性与病毒程序通信,并发布新的HTTP攻击请求序列。但由于这种方法需要不断和控制点通信,容易暴露控制者所在位置,并且这种外部连接容易被客户机上的病毒检测系统或者防火墙所察觉和阻断。从搜集到的资料看,目前已经出现的,也是最简单有效的攻击方法是利用HTTP中的“GET/”方法直接请求网站主页。它仅需要目标网站的域名而不需要指定具体的对象文件名,因此简化了攻击程序。另外,主页一般是网站上被高频访问的页面,因此通过请求主页发动的DDoS攻击不容易被检测到。

  可见,尽管攻击者可以模仿浏览器发送HTTP请求,并通过仿真工具重新整合攻击流的流特性,使其接近客户的流特性,但是它始终无法实时、动态地跟踪和模仿正常用户的访问行为,因为只有Web服务器记录了所有访问者的访问记录,而这些分析结果是攻击者无法获取的。

  基于用户行为的App-DDoS攻击检测方法如图3所示。首先,利用大量正常用户的历史访问记录建立用户的Web访问轮廓(profile),现有的Web挖掘技术可以实现这一功能。其次,利用建立的Web访问轮廓比较待测量用户访问行为的偏离程度,按照偏离程度的大小对不同Web用户的请求进行排队,偏离程度小的优先得到服务器的响应,偏离程度大的在资源紧张时将被丢弃。考虑到App-DDoS攻击是建立在正常TCP连接的基础上,单纯通过高层丢弃或过滤攻击请求并不能有效地根治App-DDoS攻击,因为被攻击者操控的傀儡节点会继续不断地向目标服务器发出攻击请求,这些攻击请求会促使服务器与傀儡节点继续建立新的TCP连接,从而耗费服务器资源。所以,对于这种持续不断的TCP连接请求,可以粗略判断为由攻击程序自动产生,因而较为彻底地抵御这种攻击的方法就是在高层进行检测过滤的基础上,进一步在传输层阻塞傀儡节点的TCP连接请求或隔离来自该IP地址的分组。由于App-DDoS攻击只能使用真实的IP地址,这种阻塞方法可以起到明显的抵御作用。

  5.结束语

  本文剖析了应用层DDoS攻击的原理,分析了现有的DDoS攻击检测方法在处理突发流环境下的App-DDoS攻击上的不足,从用户访问行为的角度提出了一种有效检测突发流下App-DDoS攻击的方法。该方法与传统针对Net-DDoS攻击的方案分属不同的网络层次,因此,可以作为现有DDoS防御体系的必要补充,在高层为Web服务器提供安全保障。利用不同的协议,基于应用层的DDoS攻击并不局限于暴力的洪水式攻击,可以有多种不同的表现形式,例如:Web蠕虫的传播、针对FTP服务器的攻击、针对无线传感器的攻击及在具有显著突发流特性的P2P网络中的入侵与攻击行为等。因此,对于 App-DDoS攻击检测来说,本文的研究仅是一个开始,许多问题还需要进一步的探讨。

  内容转自ddos攻击器 www.fkddos.com

时间: 2024-12-23 04:23:36

新网络环境下应用层DDoS攻击的剖析与防御的相关文章

安恒信息安全专家刘志乐:复杂网络环境下的大数据安全态势感知

一年一度的阿里安全峰会创立于 2014 年,今年已是第三届,于7月13-14日在北京国家会议中心举办.峰会旨在促进亚太区信息安全行业发展,为本地区信息安全组织.信息安全专业人士和决策者搭建一个信息交流展示平台,探讨当前安全行业的最佳实践.热点议题.信息安全人才培养.新 兴技术与发展趋势等.2016 阿里安全峰会设立12个分论坛,数十家领军企业参与.国内外顶级安全专家演讲,在电商金融安全,移动安全,威胁情报,人才培养,电子取证等热门安全行业问题进行深入探讨与交流,除此之外大会前一天还进行了顶级电商

Linux网络环境下如何玩转GMail信箱

博客(Blog).维基(Wiki).播客(Podcast).RSS阅读改变了人们对传统门户网站的依赖,那么从Gmail开始,人们将改变传统电子邮件应用的体验.上世纪末第一代互联网兴起的时候,当时大家所申请的免费信箱大部分都是2M左右的.那个时候很多网民的网络带宽从14.4K的拨号调制解调器到56K不等,但现在512KB以上的宽带的普及率已经相当高了.随着现在带宽的不断提升,存储成本的持续下降,用户在线时间的延长,电子邮件作为最核心的互联网应用,必然需要转变以适应今天的网络环境.终于2004年4月

WHID注入器:在无线环境下实现HID攻击的最新利器

本文讲的是WHID注入器:在无线环境下实现HID攻击的最新利器, 自从我开始研究Teensy系列开发板的设备以来,就一直面临着如何在恰当的时候提供某种有效载荷.HID全称为Human Interface Device,即与用户进行交互的设备,例如键盘.鼠标与游戏杆等,不过HID设备并不一定要有人机接口,只要符合HID规则的设备都是HID设备.刚开始,我通过使用一些极客所推荐的光敏电阻和DIP开关技巧来实现其中的一些载荷.DIP开关是一种微型的多路拨码开关,常用于参数设置,可以多路组合使用.不过,

基于资源编排在经典网络环境下快速部署高可用的Dubbox服务(Redis版)

本文将介绍在经典网络环境下,基于资源编排快速部署高可用Dubbox服务的过程.做这件事情的意义在于:提供给开发者一套高可用的Dubbox服务框架,节约开发人员部署Dubbox服务的时间,并降低了部署Dubbox过程中出错的风险. ROS阿里云资源编排(Resource Orchestration)是一种简单易用的云计算资源管理和自动化运维服务.用户通过模板描述多个云计算资源的依赖关系.配置等,并自动完成所有资源的创建和配置,以达到自动化部署.运维等目的.编排模板同时也是一种标准化的资源和应用交付

Facebook经验:如何保证不同网络环境下的应用体验

Facebook分享了关于移动应用适配方面的演讲,High Scalability在相关演讲的基础上进行了整理.如何保证移动应用在不同的网络环境.不同的屏幕上都有良好的用户体验一直是个难题,而Facebook有遍及全球的用户,他们一直致力于提高用户体验,在大会上,Facebook重点从团队.技术方面分享了他们的经验. 一开始,Facebook的应用只针对拥有高配置设备的用户,在低配置设备上,应用体验非常糟糕.而根据调查显示,很多Facebook用户使用的手机都是在2011年左右生产.双核心.内存

“飞音网络电话”在国内率先支持WiFi无线网络环境下手机直拨通话

从业界渠道获悉,国内率先支持在WiFi无线网络环境下进行手机直拨通话的手机电话软件客户端"飞音网络电话",正在面向全体互联网用户推出主题为<给力特惠欢乐送>的限时大规模用户感恩回馈,这是"飞音网络电话"首度推出包含有两大实惠型大额免费话费回馈的感恩限时特惠.据了解"飞音网络电话"的<给力特惠欢乐送>有两大亮点:一是用户进行话费充值时可获与充值金额等值的免费话费赠送,相当于可以把"飞音网络电话"原本0.0

新媒体环境下的品牌营销尝试

新媒体环境下的品牌营销之路,简言之就是"专注才能赢".我先把新媒体环境下的品牌营销之路拆解为三个阶段. 品牌营销的三个阶段 首先,我们认为一个商业的媒介品牌,在投放广告,进行各种营销活动的过程中,如何体现其商业价值呢?主要是通过三个阶段体现:第一个阶段是注意力营销.在互联网领域这可能是被提及最多.最为人广知的一个营销层次.此时的重点是通过很多手段吸引网民来访问,参与各种各样的活动,并形成强大的关注度.其实任何一个媒体在具有覆盖面的基础上,都可以把企业的一些信息传播给广泛的客户. 第二阶

新互联网环境下,交换友情链接注意事项

百度现在出的一系列政策,自绿萝算法后又有了外链判断.原创火星计划.石榴算法.这一些列接踵而来的措施,让很多站长措手不及,不知何去何从.尽管这些政策多少限制了站长的一些行动,但是我们也不可能因噎废食,而杜绝一切的优化手段.对于友情链接现在很多人都望而却步.但是合理的友情链接对网站还是有很大的帮助的,所以我们最需要了解的是,新互联网环境下,交换友情链接我们改注意哪些. 第一,网站在未收录或者收录页面少时不可交换友情链接. 在网站收录少或者未收录的情况下,如果连接友情链接极可能被百度视为作弊.对于这样

新网络概念下的企业品牌网络营销

中介交易 http://www.aliyun.com/zixun/aggregation/6858.html">SEO诊断 淘宝客 云主机 技术大厅 手机进入了3G时代,网络也正在2.0的时代热火的向前发展,作为新时代的企业,在新网络概念下,做企业品牌网络营销就显得更重要. 现在很多的企业做品牌,都忽视了网络营销,他们有的只是把网络推广看成是企业营销过程中的一小部分,而花费了大量的资金.精力去做诸如电视广告.现场活动等营销,往往是投入大量的资金换来了微小的品牌效应.我们今天给大家说的就是如