基于SDN架构的DDOS攻击防御网络安全系统和方法与流程

文档序号:11623649阅读:1343来源:国知局
基于SDN架构的DDOS攻击防御网络安全系统和方法与流程

本发明涉及网络安全技术领域,具体地说,是一种基于sdn架构的ddos攻击防御网络安全系统和方法。



背景技术:

dos(denialofservice,拒绝服务)攻击是指攻击者利用大量的数据“淹没”目标主机,耗尽目标主机的可用资源直至主机系统崩溃,最终导致目标主机无法为正常用户提供服务(例如web页面服务)。早期的拒绝服务攻击主要是针对处理能力比较弱的单机,如个人pc,或是窄带宽连接的网站。对拥有高带宽连接,高性能设备的服务器则影响不大,这主要是因为早期的dos攻击者往往是单兵作战,很难在短时间内单独制造出“大量”的攻击数据。但在1999年底,伴随着ddos(distributeddenialofservice,分布式拒绝服务)攻击的出现,这种高性能服务器高枕无忧的局面就再也不存在了。ddos攻击是指攻击者借助于客户/服务器技术,将多个计算机联合起来作为攻击平台,对一个或多个目标发动攻击,从而成倍上千地提高拒绝服务攻击的数量。借助数百,甚至数千台被植入攻击守护进程的攻击主机同时发起的集团作战行为,在这种几百,几千对一的较量中,网络服务提供商所面对的破坏力是空前巨大的。

一般情况下,ddos攻击会经历三个阶段,这三个阶段主要包括:

目标确认阶段,黑客会在互联网上瞄准一个公司或者大型企业网络的ip地址。这个被锁定的ip地址可能代表了企业的web服务器,dns(domainnameserver,域名服务器),网关服务器等等;

准备阶段,在这个阶段,黑客会随机性的入侵互联网上大量的没有良好防护系统的计算机。入侵的方式主要是植入病毒,被成功入侵的计算机我们常称之为傀儡机,当傀儡机的数量达到一定的程度后,这些傀儡机便成为黑客进行ddos攻击的重要手段了。大批量的傀儡机一般成为“僵尸网络”;

攻击实施阶段,黑客会将攻击命令发送到所有被入侵的计算机(也就是傀儡机)上,并命令这些计算机利用预先植入的攻击工具不断向攻击目标发送大量的数据包,造成设备上的处理进程一值被这些无关信息所占据。最后使得受害主机或者服务器消耗大量处理资源来处理这些突增的请求而无法正常响应合法用户的请求,从而造成服务器甚至整个网络的瘫痪。

截止到目前,国内外行内专家以及各大知名互联网公司已对网络中的ddos攻击检测进行了大量深入研究,并且也提出来应对ddos的解决方案,但是这些方案仍然不能很有效的防御ddos,在过去的几年里,ddos攻击的数目、大小、类型仍然呈现激增态势发展。



技术实现要素:

本发明的目的是提供一种基于sdn架构的ddos攻击防御网络安全系统和方法,解决了现有技术中存在的问题。

截止到目前,针对于sdn架构的ddos攻击的检测和防御手段还处于初级起步阶段。就现阶段而言,国内研究sdn架构下的ddos防御采用的是传统网络防御ddos类似的手段和方法,无法在sdn架构下达到防御的预期效果。本发明采用传统防御手段与sdn架构下的防御手段相结合的方式衍生出的新型防御doos的技术,旨在解决sdn架构下的ddos攻击的检测与防御,以保证整个网络的正常运行。

本发明采用的具体技术方案如下:

对于访问本sdn交换机连接的服务器的数据包,调用数据包信息提取模块,可以获得经由sdn交换机的数据包的源ip地址,目的ip地址,端口号,将信息存入到包信息数据库;调用决策处理模块,可对数据包进行识别,通过该模块查询合法ip地址数据库和非法ip地址数据库识别是该数据包的源ip地址是否存在于合法ip地址数据库和非法ip地址数据库,从而使用本模块对数据包进行处理;调用报文转发模块,对决策处理的反馈信息进行下发相应的流表进行数据包转发。

进一步地,如果数据包的ip地址不存在于合法ip地址数据库和非法ip地址数据库,通过调用报文转发模块将数据包交由清洗服务器进行细粒度ddos攻击检测。

对于由sdn交换机发往清洗服务器的数据包,调用数据包解包模块进行数据包解包和数据包分类,主要分为tcp数据包和非tcp数据包两大类,若数据包为非tcp数据包,用特征匹配检测模块进行检测处理;该数据包为tcp数据包,调用相似系数检测模块进行检测处理;调用全局流量统计模块,当全局流量的阈值达到γ时,对包做丢弃处理来防止网络瘫痪或者清洗服务器资源占用过多而导致的崩溃等情况。

进一步地,通过数据包的分类检测处理后,调用数据包封包模块,将处理后的信息封装在数据包首部将其转发给sdn交换机。

该安全系统采用双重ddos攻击检测法对进入到sdn交换机的数据包做初步ddos检测,调用数据包信息提取模块,获得经由sdn交换机的数据包的关键信息,并存入数据库,调用决策处理模块,对数据包进行识别,针对不同的数据包作出不同的处理,调用报文转发模块,对决策处理的反馈信息进行下发相应的流表进行数据包转发;由sdn交换机发往清洗服务器的数据包做细粒度ddos检测,调用数据包解包模块进行数据包解包和数据包分类,若数据包为非tcp数据包,用特征匹配检测模块进行检测处理,调用相似系数检测模块对tcp数据包进行检测处理,调用全局流量统计模块,防止网络瘫痪或者清洗服务器资源占用过多而导致的崩溃等情况,调用数据包封包模块,将处理后的信息封装在数据包首部将其转发给sdn交换机,对数据包信息进行提取,并保存于数据库,对数据包进行有效识别,判断数据包的来源,并根据源地址已经数据库中的记录信息决定数据包的流向。

当数据包进入到sdn交换机中,调用数据包信息提取模块,提取数据包的源ip地址、目的ip地址、端口号首部信息,对从数据包提取的信息进行处理,若数据包的源ip地址为清洗服务器的ip地址,对数据包进行解包,提取数据包里的随机数si,校验值check,根据随机数si向包信息数据库查询原数据包的源ip地址,对check的值进行检查,若check=1,表示该数据包为合法数据包,使用流表将源ip地址更改为查询到的原数据包的ip地址,通过流表的作用将数据包按正常路径转发给请求的目标服务器,将源ip地址存入到合法ip地址数据库,若check=0,表示该数据包为ddos攻击包,将源ip地址存入到非法ip地址数据库,并通过流表将数据包作丢弃处理,若数据包的源ip地址不是清洗服务器的ip地址,进一步进行查询合法ip地址数据库,若ip地址存在于合法ip地址数据库中,则按照正常路径转发给请求的目标服务器,若ip地址不存在于合法ip地址数据库中,则继续查询非法ip地址数据库,若源ip地址存在于非法ip地址数据库中,通过流表将数据包作丢弃处理;若源ip地址不存在于非法ip地址数据库,则收集数据包的首部信息,将其存入到包信息数据库,交换机利用算法产生的随机数si封装到数据包首部,通过流表将数据包的目的地址改为清洗服务器的ip地址,调用报文转发模块,通过设置流表将数据包转发给清洗服务器进行第二重的ddos检测处理,进入清洗服务器后,调用数据包解包模块,分离出随机数si以及按协议封包的数据包,该数据包由服务器作分类处理,该数据包为非tcp数据包,调用特征匹配检测模块进行检测处理,该数据包为tcp数据包,调用相似系数检测模块进行检测处理,通过相似系数来计算两个数据流的相似程度,从而判定是否属于ddos攻击,当判定发生了ddos攻击,调用全局流量统计模块,当全局流量的阈值达到γ时,对包做丢弃处理来防止网络瘫痪或者是清洗服务器崩溃情况。

上述提取数据包里的随机数si为32位,由程序随机产生,每一个数据包对应一个随机数,用于标识数据包,确保数据包的唯一性,校验值check值由清洗服务器进行设置,其值为0或1。

当调用特征匹配检测模块进行检测处理时,特征匹配检测技术采用如下方法:通过实际的业务流量设置一个时间间隔ts,该时间间隔在已经时间区间内固定,当每经过该时间间隔后,便对数据包进行分析,当数据包的分析时间不在ts的时间内,则认为该数据包为合法数据包;当数据包的分析时间在ts的时间内,则判定该数据包为ddos攻击数据包。

本发明的有益效果是通过双重ddos攻击检测法对访问目标服务器的数据包进行细粒度、多方位的检测,第一重检测过滤是sdn交换机的包过滤,将清洗服务器以及处理过的数据包通过数据库进行记录,当新的数据包通过sdn交换机时,查询相应的数据库便可直接滤出一部分ddos攻击包,不仅减轻了清洗服务器的压力,还提高了检测数据包的效率,第二重ddos检测更加细粒度,从而高效、准确的达到了防护ddos攻击的目的。

附图说明

图1是ddos攻击采用的硬件设备示意图。

图2是sdn交换机模功能模块图。

图3是sdn交换机数据包处理流程图。

图4是sdn交换机ddos检测处理流程图。

图5是清洗服务器功能模块图。

图6是相似系数检测算法流程图。

具体实施方式

为了加深对本发明的理解,下面将结合附图和实施例对本发明做进一步详细描述,该实施例仅用于解释本发明,并不对本发明的保护范围构成限定。

如图2和图5,一种基于sdn架构的ddos攻击防御网络安全系统,包括sdn交换机和清洗服务器,所述sdn交换机包括数据包信息提取模块、决策处理模块、报文转发模块和包信息数据库、合法ip地址数据库、非法ip地址数据库,所述清洗服务器包括数据包解包模块、特征匹配模块、相似系数检测模块和全局流量统计模块、数据包封包处理模块。

如图3、图4和图6所示,终端计算机向目标服务器发出数据请求,数据包进入到sdn交换机中;调用数据包信息提取模块,提取数据包的源ip地址、目的ip地址、端口号等首部信息;对从数据包提取的信息进行处理:

①若数据包的源ip地址为清洗服务器的ip地址,对数据包进行解包,提取数据包里的随机数si(随机数为32位,由程序随机产生,每一个数据包对应一个随机数,用于标识数据包,确保数据包的唯一性),校验值check(check值由清洗服务器进行设置,其值为可为0和1),根据随机数si向包信息数据库查询原数据包的源ip地址,对check的值进行检查,若check=1,表示该数据包为合法数据包,使用流表将源ip地址(清洗服务器的ip地址)更改为查询到的原数据包的ip地址,通过流表的作用将数据包按正常路径转发给请求的目标服务器,将源ip地址存入到合法ip地址数据库,若check=0,表示该数据包为ddos攻击包,将源ip地址存入到非法ip地址数据库,并通过流表将数据包作丢弃处理;

②若数据包的源ip地址不是清洗服务器的ip地址,进一步进行查询合法ip地址数据库,若ip地址存在于合法ip地址数据库中,则按照正常路径转发给请求的目标服务器,若ip地址不存在于合法ip地址数据库中,则继续查询非法ip地址数据库,若源ip地址存在于非法ip地址数据库中,通过流表将数据包作丢弃处理;若源ip地址不存在于非法ip地址数据库,则收集数据包的首部信息,例如源ip地址、目的ip地址等,将其存入到包信息数据库。

交换机利用特殊的算法产生的随机数si封装到数据包首部(将随机数si也存于数据库的对应条目中),通过流表将数据包的目的地址改为清洗服务器的ip地址,调用报文转发模块,通过设置流表将数据包转发给清洗服务器进行第二重的ddos检测处理。

进入清洗服务器后,调用数据包解包模块,分离出随机数si以及按协议封包的数据包,该数据包由服务器作分类处理:

①该数据包为非tcp数据包,调用特征匹配检测模块进行检测处理;

特征匹配检测技术叙述如下:

通过实际的业务流量设置一个时间间隔ts,该时间间隔在已经时间区间内固定,当每经过该时间间隔后,便对数据包进行分析,需要说明的是,ts是一个随网络状况变化的值,当清洗服务器单位时间内接受到德数据包过多时(未达到阈值γ),ts值则变大,那么对数据包的分析就越加详尽;若经过一段时间后,网络流量恢复正常时,ts值便恢复到初始值。当数据包的分析时间不在ts的时间内,则认为该数据包为合法数据包。当数据包的分析时间在ts的时间内,则分析一下数值:

r1=pa/ts(该公式用于检测ddos中的低速率的持续攻击);

r2=pd/ts(该公式用于检测ddos中的泛洪攻击);

r3=pa/po(该公式用于检测ddos中的smurf攻击);

其中,pa表示ts时间间隔内清洗服务器收到的数据包总量,pd表示ts时间间隔内清洗服务器收到的来自不同源ip地址的数据包总量,po表示服务器鉴定为合法数据包的总量。

利用统计学思想,可以确定r1,r2,r3的阈值r1,r2,r3。通过得到的阈值进行比较,如果r1<r1,r2<r2,r3<r3,则认为该数据包为合法数据包。若未被认定为合法数据包,则进行b步骤。

b.对于未被认定为合法数据包,增大ts,并验证如下规则:

该包为icmprequestpackage;

该包的源地址与清洗服务器负责的目的服务器的ip地址相同;

该包的源ip地址的主机在同一时间内发包次数过多;

满足其中之一的则判定为ddos攻击数据包。

②该数据包为tcp数据包,调用相似系数检测模块进行检测处理;

相似系数检测技术如下:

每隔一段时间,清洗服务器便会进行一次数据采集,利用公式:

其中ne[xi]表示清洗服务器接受的数据包总数,ne[yi]表示清洗服务器判定为合法数据包的总数。

当r趋向于0时,表示网络未出现拥塞,当r趋向于1时表示网络发生拥塞;

b.当网络发生拥塞时,计算相似系数:

c.通过相似系数来计算两个数据流的相似程度,从而判定是否属于ddos攻击:

其中p(is=1)表示数据流的相似程度,是所有的相似系数的均值,当is的值为1时,便可认为是发生了ddos攻击。

调用全局流量统计模块,当全局流量的阈值达到γ时,对包做丢弃处理来防止网络瘫痪或者是清洗服务器崩溃等情况。

阈值γ设置过程如下:

一般的网络流量呈现正态分布特性,因此可以任意选取一个时间段,假设该时间段的相关系数的均值为e,方差为,标准差,门限系数为,则阈值为:

数据包分流检测完毕后,对数据包做封装处理,将数据包的源ip地址变为目的ip地址,将数据包的目的ip地址变为源ip地址,

当清洗服务器判定该包为合法数据包,则在头部重新封装随机数si并封装1bit的check字段(此时check=1),

当清洗服务器判定该包为非法数据包,则在头部重新封装随机数si并封装1bit的check字段(此时check=0)。

以上显示和描述了本发明的基本原理、主要特征及优点。本行业的技术人员应该了解,本发明不受上述实施例的限制,上述实施例和说明书中描述的只是说明本发明的原理,在不脱离本发明精神和范围的前提下,本发明还会有各种变化和改进,这些变化和改进都落入要求保护的本发明范围内。本发明要求保护范围由所附的权利要求书及其等效物界定。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1