掌桥专利:专业的专利平台
掌桥专利
首页

基于流数据的黎曼流形结构的DDoS攻击检测方法

文献发布时间:2023-06-19 12:10:19



技术领域

本发明涉及DDoS攻击检测技术领域,具体涉及一种基于流数据的黎曼流形结构的DDoS攻击检测方法。

背景技术

近年来针对DDoS攻击检测的研究热点主要集中在机器学习领域。但是大多数机器学习方法需要大量的优质数据集作为训练数据,或使用计算难度相对较大的深度学习算法才能获得比较好的检测效果。这导致这些方法的检测成本和资源消耗过大,从而导致检测和抵御DDoS攻击的成本远高于攻击实施成本,针对DDoS攻击的检测产品价格昂贵且不易普及。

如David J等人(David J,Thomas C.DDoS attack detection using fastentropy approach on flow-based network traffic[J].Procedia Computer Science,2015,50(4):30-36.)提出了基于流分析的快速熵方法对分布式拒绝服务攻击检测的改进,采用了一种自适应阈值算法该方法在传统熵变换的基础上提高了检测效率并降低了检测成本,但该检测方法只能针对流量中的地址数量体现出的信息熵进行计算,当出现大量不同源IP地址的分布式慢速DoS攻击时,该方法的有效性值得怀疑。另外,Qin X等人(Qin X,Xu T,Wang C.DDoS Attack Detection Using Flow Entropy and Clustering Technique[C]//2015 11th International Conference on Computational Intelligence andSecurity(CIS).IEEE,2016.)通过构建不同特征的熵向量,使用聚类分析算法建模正常模式,然后检测所创建模型的偏差。该方法具备一定的准确性,但是其需要在数据规模达到6000以上时,才能有较好的准确性。计算成本和检测速率较低。同时,该方法并未提及关于特征阈值的置的理论依据。Wang等人(Wang R,Jia Z,Ju L.An Entropy-BasedDistributed DDoS Detection Mechanism in Software-Defined Networking[C]//IEEETrustcom/bigdatase/ispa.IEEE,2015.)将流数据定义为一个五元组,利用该五元组计算统计不同IP数据流出现的概率,通过该概率计算正常流量和异常流量的熵值,进而对DDoS进行检测。该方法降低了计算和检测成本,可以较为简单的部署在边界防护设备上,但是准确率较低,实用性不强。

David J等人(David J,Thomas C.Efficient DDoS Flood Attack Detectionusing Dynamic Thresholding on Flow-Based Network Traffic[J].Computers&Security,2019,82(MAY):284-295.)提出了一种基于流量特征和动态门限检测算法的分布式拒绝服务攻击统计检测方法。采用统计方法,对网络流量特征如包数量、源IP、目标IP、源协议都要考虑。该方法对DDoS特征进行了明确定义,包括大量唯一的源IP、目的地址相同(端口可不同)、大量的包、协议相同、包长度在40-60byte之间。这种定义会导致在检测混合攻击时精度降低。

Chen Y等人(Chen Y,Hwang K.Collaborative detection and filtering ofshrew DDoS attacks using spectral analysis[J].Journal of Parallel andDistributed Computing,2006,66(9):1137-1151.)提出了利用频谱分析的方法检测DDoS攻击,通过傅里叶变换得到网络数据包的谱信息,再通过分析谱密度对DDoS攻击进行识别。该方法具备较好的检测精确度,但由于该方法将数据包率作为描述traffic flow的唯一指标进行分析,需要对一定长度的数据进行检测,容易造成溢出。同时,IP欺骗对该方法的影响较大。Fouladi等人(Fouladi R F,Kayatas C E,Anarim E.Frequency based DDoSattack detection approach using naive Bayes classification[C]//39thInternational Conference on Telecommunications and Signal Processing(TSP).IEEE,2016.)对网络的流量水平进行了分析。利用离散小波变换(DWT)和离散傅里叶变换(DFT)的系数作为特征,并利用朴素贝叶斯分类器将DDoS攻击与常规流量分离开来。该方法依旧使用数据包率作为检测对象,该方法仅仅是引入了DWT作为辅助特征,并利用机器学习进行分类。但该方法的准确率还不够理想,且实验中涉及的攻击类型较少。Huang等人(Huang C,Yi P,Zou F,et al.CCID:Cross-Correlation Identity Distinction Methodfor Detecting Shrew DDoS[J].Wireless Communications and Mobile Computing,2019,2019(3-4):1-9.)通过定义正常用户和shrew DDoS攻击用户流数据信号的特征,对攻击信号进行过滤,该方法确实具备一定的过滤能力。问题是,该方法的一些特征的数学定义缺失,为何选取某些公式作为特征计算依据并未特别明确;同时,该方法无法计算准确率。Agrawal等人(Agrawal N,Tapaswi S.Detection of Low-Rate Cloud DDoS Attacks inFrequency Domain Using Fast Hartley Transform[J].Wireless PersonalCommunications,2020,112(2).)通过分析LRDDoS攻击的功率谱分布来检测LRDDoS攻击,该方法创新之处在于改用快速哈特利变换(Fast Hartley Transform,FHT)计算功率谱密度,FHT处理的是实值输入数据,降低了计算和存储复杂性。该方法的相应速度和精确度都高于已提出的一些方法,但其无法识别内部的LRDDoS攻击,且响应时间仍然超过一分钟。此外,Liu等人(Liu X,Ren J,He H,et al.Low-rate DDoS attacks detection method usingdata compression and behavior divergence measurement[J].Computers&Security,100:102107.)通过设计网络流的多维sketch结构和度量方法,提出了一种新的低速率DDoS攻击检测方法。提出了基于小波变换的改进行为发散度测量方法。并利用一种改进的加权指数移动平均法来构造正态网络的动态阈值,提高检测精确度。Rohan等人(Doshi R,Apthorpe N,Feamster N.Machine Learning DDoS Detection for Consumer Internetof Things Devices[C]//2018:29-35.)提出了一种基于机器学习的物联网(IoT)DDoS攻击检测方法。该方法通过形式化方法将数据特征分为非状态特征和状态特征,并综合两类特征进行分类。在数据流复杂的网络环境中该方法是否具备较好的可行性尚存疑问。

现有的技术存在两个比较集中的问题:1)针对待检测数据缺少严格的数学模型进行数据预处理;2)使用机器学习的检测方法往往忽略攻击本身的特点或规律,比较简单的依赖机器学习的运算能力对数据进行“暴力分类”。

发明内容

有鉴于此,本发明提出一种基于流数据的黎曼流形结构的DDoS攻击检测方法,致力于解决以上两个问题。本发明首先对流数据进行数学建模,对高维度的、复杂的流数据特征进行预处理,最终以“做功”作为描述流数据的唯一特征;然后,使用傅里叶变换得到“做功”的频域信息以及计算“做功”的信息熵作为机器学习的输入特征。本发明方法是一种轻量级的检测方法,其用于训练的数据特征少,对DDoS攻击的检测速度快;同时,实现该方法的技术难度小,但准确率高。在测试实验时,该方法对MSSQL类型的DDoS攻击检测的准确率基本维持在99%以上,具有较好的检测性能。

具体的,本发明基于流数据的黎曼流形结构的DDoS攻击检测方法,包括:

提取流数据中的数据包个数、数据比特大小和流持续时间;

构建黎曼流形M,其中,M=(X,τ),τ={{数据包个数},{数据比特大小},{流持续时间}},X={数据包个数,数据比特大小,流持续时间};

基于黎曼流形M,计算数据流的功W:W=F·S,其中,S为检测到的流数据在黎曼流形M上产生的距离;F为流数据的作用力,

对流数据的功W做标准化处理,得到标准化处理后的流数据的功W

提取W

构建分类器,所述分类器的输入特征为W

较优的,采用

较优的,计算信息熵时,将做功大小在设定误差范围内的行为认为是相同行为。

较优的,设定误差范围为±0.1倍的W

较优的,采用快速傅里叶变换或离散傅里叶变换的方法提取频域信息。

较优的,所述分类器采用神经网络。

较优的,攻击检测时,

(1)若5分钟内检测到的同源、目的IP的流数据不超过5条,则不对该源、目的IP的流数据进行攻击检测;超过5分钟后重新计数;

(2)若5分钟内检测到的同源、目的IP的非UDP类流数据超过5条,则计算该源、目的IP的不超过连续10条流数据的W

(3)5分钟内检测到的同源、目的IP的UDP类流数据超过10条,则计算该源、目的IP的不超过连续50条流数据的W

有益效果:

(1)在已有方法中,所有使用傅里叶变换的方法都是对网络通信中的通信信号进行检测;针对流数据进行检测的方法中,无论是使用信息熵还是基于特征的机器学习方法,缺少统一的数学建模。本发明首次构建基于流数据的黎曼流形模型并应用在DDoS攻击检测领域,为实现和验证后续计算和检测方法提供了理论依据。

(2)本发明不使用流数据本身进行计算和检测,而是在构建的基于流数据的黎曼流形模型的基础上,使用物理学理论中做功的概念描述流数据产生的影响,第一次定义了流数据在黎曼流形上的作用力概念、距离概念以及做功概念,并给出了相关的计算方式,以及做功的标准化处理。

(3)本发明首次在(2)的基础上,以流数据做功的频域信息和信息熵作为训练机器学习模型和检测DDoS攻击的特征数据,对DDoS攻击进行检测,并提出了4条检测规则。

(4)本发明方法仅需要少量流数据信息(10-50条流数据,时间跨度不超过5秒),且检测成功率基本维持在99%以上。

具体实施方式

下面结合实施例,对本发明进行详细描述。

本发明提供了一种基于流数据的黎曼流形结构的DDoS攻击检测方法,首先针对流数据中的特征进行了严格的数学定义与建模,使用代数拓扑理论构建了由流数据特征定义的黎曼流形空间,该空间也是一个严格度量空间,可以借助传统物理学“做功”理论描述数据流对网络的影响。计算数据流“做功”实际上是实现了特征数据的融合,使得多维度复杂特征可以通过一个一维标量表示。

其次,由于DDoS攻击流量会在目标路由上大量聚集,且体现出一种周期性特点。随着DDoS自动化攻击的广泛使用,虽然这使得DDoS攻击的实施更加简单且强度更强,但这也使得DDoS攻击的流数据表现出更强的重复性或周期性。这种重复性或周期性可以很好地由“做功”体现出来,进而可以通过计算“做功”的信息熵来描述重复性,并对“做功”进行傅里叶变换在频域上描述周期性。

但是这种重复性或周期性并不是严格的周期函数,而是相对正常流量数据来说的。因此,重复所表示的并非相同,而是相似,周期性同理。所以在计算信息熵的时候并非计算相等的数据的熵值,而是计算“非常相似”的数据的信息熵。通过计算流数据的频域信息和信息熵,本发明为归纳总结性的、非数学的特征数据转换为标准化的、通用的、数学的特征数据。

最后,使用机器学习中的有监督神经网络算法对正常流量和DDoS攻击流量进行分类,最终实现对DDoS攻击流量的识别。

具体地,本发明包括如下几部分:

(1)基于流数据的黎曼流形建模

首先,流数据中可以直接检测到的数据指标一般包括如下几类:

1)流数据的源/目的IP地址、协议及端口等标识性数据;

2)正反两个方向上的数据包个数;

3)正反两个方向上的数据比特大小;

4)流持续时间。

在计算过程中,标识性数据一般无法直接参与运算,但可以作为控制单元调控计算过程。计算所使用的直接检测数据仅为2)、3)、4)三种。

其次,以上三种数据指标的检测遵循如下几个规则:

1)非负性。即检测的数据只能是大于等于零的;

2)存在可数上限。由于网络带宽的限制,存在一个理论上可数的数值上限,即上确界;

3)所有的可检测数据的值都是可数可列的。由于流数据有严格的规格限制(如包个数为正整数,数据大小为byte,时间大小有限),所以所有的可检测数据都具备可数基,满足第二可数公理。

第三,检测数据构成一个黎曼流形。

由于数据包个数、数据比特大小和流持续时间之间并没有固定的关联关系,即互不依赖,则有集族(collection)τ={{数据包个数},{数据比特大小},{流持续时间}}可以表示检测数据的结构。该结构是集合(set)X={数据包个数,数据比特大小,流持续时间}的一个拓扑结构,X与τ构成一个拓扑空间,记为(X,τ)。

由于集合(set)X中的元素之间互不影响,可以描述为:对任意元素x∈X有邻域U,任意y∈X,y≠x有邻域V,U与V不相交,即

进一步的,由于数据包个数的计数单位为个,取值为正整数;数据比特大小单位为比特,理论的取值范围为有理数;流持续时间的单位根据检测方法的不同可分为秒、毫秒甚至微秒等,取值范围为某区间内小数点后固定位数(根据单位不同)的有理数。则数据包个数、数据比特大小和流持续时间的坐标结构虽然不同,但都在实数域内,分别是三个一维欧几里得空间的子集(subset of

(2)黎曼流形上的做功计算

检测数据构成的黎曼流形上存在距离和角度的概念,这是讨论其物理概念的基础。由于检测数据是在“一定时间内”发生的“数量的变化”,则可以利用物理学概念中的“距离”和“作用力”描述检测数据的变化。用一个标量表示距离和作用力的综合表现,就是物理学中的“做功”。

每个流数据的检测都是独立的,因为每个流数据都是独立传输的。所以每个检测的流数据的做功都可以定义为:

流数据做功定义:在流数据检测时间(t

W=F·S (1)

由于检测是一次性完成的,所以默认检测期间发生的是匀变速运动。

其中S是检测到的流数据在黎曼流形M上产生的距离,该距离由于满足欧几里得度量其计算公式为欧几里得距离计算公式:

本发明中x

F是流数据作用力大小,作用力的定义是:

流数据作用力F定义:单位时间(秒)内,数据指标的改变量。根据初速度为零的匀变速运动计算公式:

忽略不计质量m有F=a,则:

最后,由于流数据存在理论上限,即网络带宽的限制,所以流数据做功理论上存在最大值。为了方便记录和后续计算,对流数据做功做标准化处理:

(3)提取流数据做功的频域信息与信息熵

提取标准化处理后的流数据做功W

做功频域信息计算公式是将快速傅里叶计算公式的自变量改为做功W,e的部分没有改变。

同时,还要计算标准化处理后的流数据做功W

其中,公式(8)中的对数是以2为底的对数。

(4)构建分类器

采用机器学习的方式,利用分类器进行攻击检测。其中,计算出的流数据做功的频域信息和信息熵作为分类器的分类特征,输入分类器后,由分类器给出攻击或非攻击的检测结果。本实施例中,分类器采用神经网络。

利用样本集对构建的分类器进行训练;利用训练好的分类器完成DDoS攻击检测。

此外,本实施例还给出了本发明所提出的检测方法的详细规则:

1)5分钟内检测到的同源、目的IP的流数据不超过5条,则不对该源、目的IP的流数据进行异常检测。超过5分钟后重新计数。

2)5分钟内检测到的同源、目的IP的非UDP类流数据超过5条,则计算该源、目的IP的不超过连续10条流数据的W

3)5分钟内检测到的同源、目的IP的UDP类流数据超过10条,则计算该源、目的IP的不超过连续50条流数据的W

表1给出了本发明方法对各种DDoS攻击的检测性能,可以看出本发明的检测成功率基本维持在99%以上。

表1

综上所述,以上仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

相关技术
  • 基于流数据的黎曼流形结构的DDoS攻击检测方法
  • 基于流数据的黎曼流形结构的DDoS攻击检测方法
技术分类

06120113192353