关于网络异常流量清洗系统的若干思考
随着网络技术和网络经济的发展,网络的重要性日益突出。与此同时,网络中存在的安全漏洞也在相应的增加,网络安全问题所造成的影响也越来越大,另一方面给企业和社会的影响带来了恶劣影响。据显示,DDoS攻击中,90%以上属于TCP协议栈攻击),因此在当前大流量、分布广、隐蔽性强的DDoS攻击环境下,如何有效防范DDos攻击对维护当前网络稳定性与安全性具有重要意义。而伴随着计算机的不断普及与应用,在大规模DDoS网络流量下,传统防范技术对服务器的防范能力已不再奏效。
企业传统的DDoS攻击防御方式往往只能被动的不计成本的采用不断提升服务器性能和带宽的方式来保障自己企业的正常业务所需要的资源。随着DDoS攻击的规模不断增大,攻击手段不断智能化,这种通过预留资源的方式防御DDoS攻击的效果日益不明显。因此,专业的DDoS攻击防御方案对现今的企业核心网络业务保障来说显得尤为重要。
从城域网中接入的用户角度来看,在面临大量DDoS攻击的情况下,企业需要升级当前DDoS攻击防御系统,然而DDoS攻击自身的复杂性导致了企业难以独立完成对DDoS的防御;从运营商的角度来说,通过对城域网中大量的DDoS流量的过滤,可以有效减少城域网自身的负载,为城域网的业务提供有效的保障,同时也能够促进自身的发展;综上所述,在城域网侧为企业客户开展流量清洗实现对DDoS攻击的防御,可以同时满足运营商和大客户的双重需要,已经成为目前运营商的必然需求。
自1999年8月第一起DDoS攻击发生以来,人们就对DDoS攻击及其对策展开了深入的研究。1999年11月,CERT/CC发表的Distributed-Systems Intruder Tools Workshop报告中,最早全面阐述了DDoS攻击的原理,并针对系统管理员、ISP、以及事件响应小组,从预防、检测、响应三方面依次给出了即时、短期、长期的解决方案。随后,SANS和Cisco Systerms等几个著名的安全组织、公司,也针对DDoS攻击的防御提出了见解。华盛顿大学的Dave Dittrich在Distributed Denial of Service(DDoS)Attacks/tools提出了最新的DDoS攻击及防御的研究资料。在攻击工具研究方面,许多DDoS攻击工具(如: Trinoo、 TFN、Stacheldraht、TFN2K、Shaft、 Mstream 等)被详细地分析。一方面为防御DDoS攻击提供重要参考,另一方面攻击者利用相关信息进一步改进攻击工具。Mixter在Tribe Flood Network 3000中对DDoS攻击工具进行了理论性的评价,并给出了网络入侵检测规则。
在防御研究方面,人们从攻击前防御、攻击期间防范和攻击后防御等方面对DDoS防御措施进行了深入研究,研究的方向主要体现在攻击中的检测与过滤技术以及攻击后的攻击源追踪技术。Farguson和Senie基于DDoS攻击伪造源IP地址的特性,提出了入口报文过滤技术。该技术从理论来说,能够有效杜绝DDoS攻击,然而就实现而言,部署难度大不易实施。Park和Lee提出的基于路由报文过滤机制。该技术使用BGP信息来识别伪造源IP地址的报文。实验表明,如果采用此方案有效防范DDoS攻击,就需要在18%的Internet核心路由器上部署该机制,同样,该方案的部署仍然困难。
目前,研究主要通过在受害者和ISP网络上游部署检测与过滤机制,进行攻击报文过滤。其弊端在于,当大规模的DDoS攻击发生时,该机制的防范效率明显降低。Bellovin在Internet Draft:ICMP Traceback Messages中提议,利用路由器向目的IP发送ICMP Traceback Messages重建攻击流的路径。Barros基于Bellovin的方案进行了改进,以适用于反射式DDoS攻击。
2000年,Burch 和Cheswick提出通过报文记载其路由信息。路由器在报文头部(随机或确定)写入地址信息,接收方根据此报文构建路由路径。Savage等深入的研究了概率性报文标记机制,并提出地址信息标记方法。随后,Song 和Perrig提出了更为精简的报文标记算法,该算法的路径恢复更加快捷。Snoren 等提出基于Hash的IP Traceback技术,该技术利用源路径重构攻击流路径。当DDoS攻击存在大量攻击源时,IP Traceback技术追踪攻击源的效率会明显下降。在DDoS预防、攻击缓解和攻击流偏转、以及攻击记录的分析等方面,不少研究集中于网络和主机DDoS攻击下的可存活性研究以及构建DDoS攻击容忍网络。从国内外对DDoS研究的现状来看,在大规模DDoS攻击的情况下,很多DDoS防范技术的防御能力效率显著下降,攻击者通过对攻击工具的改进,很容易向目标机器发起DDoS攻击,因此DDoS防范措施还需要进一步改进。
随着计算机的不断普及与应用,在大规模DDoS网络流量下,传统防范技术对服务器的防范能力已不再奏效。基于此种情况本文提出了流量清洗的方法来防范SYN Flood攻击。大量攻击者通过占用带宽和抢占资源方式致使目标服务器发生拒绝服务,进而影响了运营商和企业的正常业务。
针对SYN Flood攻击隐蔽性强、规模大等特点,本文提出了流量清洗防范的思想。流量清洗防范采用层次过滤的方式,将网络总流量区分可信源流量、不可信源流量和未知源流量,并根据网络状态进行具体处理。基于用户需求,将流量清洗系统划分为功能模块和公共模块。功能模块包括统计分析模块、流牵引模块、清洗平台和半连接处理,公共模块包括特征库模块和总连接计数模块。统计分析模块进行黑名单和白名单匹配,完成对网络流量的初步过滤;流牵引模块通过设置SYN速率限值,判断是否需要对异常流量二次过滤;半连接处理接收清洗平台处理结果,建立生成动态列表信息,并更新特征库参数;总连接计数模块处理IN方向和OUT方向的报文,完成特征库全连接总数的更新。
流量清洗系统基于需求设计实现后,对网络流量进行了层次过滤。从验证结果来看,系统对攻击者识别的准确率提高,同时也增强了对SYN Flood攻击的处理与防御能力。
为了提高企业或运营商在遭受大量DDoS攻击时对DDoS的防御能力,流量清洗系统欲采用网络流量层次性过滤的思想,通过对整体流量进行区分处理。对设备接收的流量区分为可信源流量、未知源流量和不可信源流量,并针对三种流量依次诵过系统相关模块进行初步讨滤、二次过滤、cookie验证和建立动杰名单等外理。流量清洗系统根据用户需求将整体系统划分四个主要模块(包括统计分析模块、流牵引模块、清洗平台和半连接处理)和二个公共模块(总连接计数和特征库模块)。以下模块为论文所涉及的主要工作:
在统计分析模块中将对流量进行初步过滤。对IN方向的流量,通过黑、白名单匹配,放行可信源流量。根据当前网络状态,对未知源和不可信源流量,判断是否需要对报文做丢包处理。
在流牵引模块中,将对进入设备的流量进行二次过滤。通过设置SYN限值判断是否对未知源流量和不可信源流量进行清洗处理。
在半连接处理中,将通过接收清洗平台处理结果,生成动态列表信息,包括动态白名单列表和动态黑名单列表,并更新特征库相应参数信息。
总连接计数模块的处理主要集中报文的IN方向和OUT方向,根据接收报文类型进行相关处理,并完成对特征库中全连接总数的更新。
流量清洗系统划分为功能模块和公共模块。功能模块包括统计分析模块、流牵引模块、清洗平台和半连接处理,公共模块包括特征库模块和总连接计数模块。
统计分析模块从特征库中获取黑、白名单列表信息,完成刘流量区分,并依据网络状态对总体流量进行初步过滤。
流牵引模块在统计分析模块处理的基础上,对网络流量进行第二次过滤。通过设置SYN限值,判断是否需要对未知源流量和不可信源流量做清洗处理。
半连接处理通过接收清洗平台的处理结果,生成动态列表信息,包括动态白名单列表和动态黑名单列表,并更新特征库相应参数。
总连接计数模块的处理主要集中报文的IN方向和OUT方向,通过对总连接计数模块的处理完成特征库中全连接总数的更新。