一种应用层DDoS攻防效用度量方法与流程

文档序号:18639173发布日期:2019-09-11 22:45阅读:243来源:国知局
一种应用层DDoS攻防效用度量方法与流程

本发明涉及网络空间安全技术领域,具体涉及一种应用层ddos攻防效用度量方法。



背景技术:

分布式拒绝服务攻击(ddos)是一种不可根治和避免的攻击手段。其中分布式拒绝服务攻击中最复杂的形式是应用层ddos攻击,应用层ddos攻击通常通过大量占用web服务器的请求队列来阻碍其对合法用户提供正常的web服务。如何从网络本身及用户的角度全面分析出攻击影响值,且在攻击发生时如何提供恰到好处的防御避免资源浪费,这是一个目前难以解决的问题。为了解决这一问题,必须在充分考虑网络系统设计阶段安全性的同时还要对其安全性进行度量和评估。但是在传统网络安全评估技术手段中,主观人为因素往往是不可避免的。当前应用层ddos攻击影响评估技术中,主要评估计算方法是通过各类观测指标的分析,来对方法中所提出的可以代表攻击影响的某个定义进行计算。当前方法中,一是定义的提出缺少与已有成熟的理论相结合的依据;二是很少得出直观结果来定量计算出攻击影响值;三是几乎没有研究对防御影响值进行分析,缺乏一定的参考价值。

例如,专利申请“一种网络安全风险评估方法”(公开号:cn107204876a,发明人:高强,黄元飞,林星辰等)采用结合入侵检测系统、漏洞检测以及第三方获取到的实时攻击事件,在静态风险评估基础上进行动态评估目标网络的安全性。这种方法建立在对目标网络进行静态风险评估,给出的静态评估结果之上。进而通过借助相应工具来分析威胁与脆弱性的信息动态变化,利用入侵检测系统和防火墙生成的告警信息作为评价系统风险状况的重要依据。该方案的评估需要静态风险评估结果的支撑,而对静态风险进行评估则会不可避免地受到主观因素影响,从而使评估结果不够完全客观。

专利申请“一种定量化的网络安全保护强度评估方法”(公开号:cn108566307a;发明人:李晓勇,郭煜)通过采集网络节点中的软件行为特征,从软件行为中随机选取部分节点的软件行为特征作为软件行为分析训练数据进行训练,从而生成网络安全分析模型。使用机器学习算法对软件行为特征库中所有节点的软件行为特征进行分析和评估,最终计算得出定量化的网络安全保护强度评估结果。但该方案在软件行为特征选取过程中,软件行为分析训练数据的选取是在软件行为数据库中随机选取的部分节点数据,因此在一定程度上软件行为特征选取不够全面,导致评估结果全面性、整体性不够严谨。

专利申请“一种基于描述逻辑的计算机网络安全评估”(公开号:cn105812381a;发明人:王涛,徐超,刘潇等)通过逻辑关系中的“概念”、“个体”和“关系”及描述逻辑推导规则来描述局域网或者其他安全系统的结构关系,以此为基础推导并量化分析目标系统的安全水平。在此基础之上,形成了安全评估公式,通过计算得出网络安全评估值。该专利申请中没有对具体量化公式给出说明,仅提出使用安全评估公式生成器生成相应公式,没有具体的数学模型支撑。

因此,目前难以评估应用层ddos攻击的影响、防御措施作用的大小。



技术实现要素:

有鉴于此,本发明提供了一种应用层ddos攻防效用度量方法,能够科学有效地计算应用层ddos攻防效用值,且充分考虑了应用、物理及网络等层面,更为全面和客观。

本发明的应用层ddos攻防效用度量方法,包括如下步骤:

步骤1,构建指标矩阵,所述指标矩阵为对角矩阵,对角线上的项分别为服务器的各指标;其中,所述指标包括应用层指标、网络流量指标以及硬件性能指标;

步骤2,采集服务器在不同攻击、防御作用下的指标值,并基于步骤1构建的指标矩阵获得服务器的状态值;其中,服务器的状态值为所述指标矩阵的行列式;

步骤3,服务器在攻击、防御作用下的状态值相比于服务器在0攻击、0防御下的状态值的变化量,即为该服务器的攻击防御作用值;攻击防御作用值沿时间的累积,即为该服务器的攻击防御效用值。

较佳的,所述步骤1中,选取如下6个指标:网络每秒吞吐量大小、tcp段个数、ip数据报个数、访问失败率、平均响应时间以及cpu占用率。

较佳的,所述步骤3中,服务器的攻击防御作用值选取攻击防御作用时间段内服务器的攻击防御作用值的平均值。

较佳的,应用层ddos的攻击作用值为服务器在受攻击时的状态值与正常运行时的状态值的比值;服务器对应用层ddos的防御作用值为相同攻击状态下服务器的添加防御措施前后的状态值之差与服务器正常运行时的状态值的比值。

有益效果:

(1)本发明基于传统社会学、工程学对行为以及效用的定义,对网络中攻防行为及效用进行了分析与定义,然后将网络系统的逻辑拓扑结构映射到多维仿射空间,且网络节点的性能指标即对应着多维仿射空间的维度,并对多维欧氏空间中多维超平行体与网络节点状态之间的映射关系进行了证明;由此提出了新的网络节点的状态值的计算方式,即网络节点状态值为对应的多维超平行体体积,从而能够科学有效地量化网络节点状态;同时,在指标的选取上,全面整体的考虑应用层ddos攻防作用对服务器安全的影响,包括应用、物理、网络等层面,能够更加客观全面的对应用层ddos攻防作用进行考量。

(2)提出了从攻击作用的角度来分析每一种攻击类型、攻击规模、攻击强度的组合会对目标系统造成多大的影响,可以定量分析出各类攻击的优势及缺陷,如攻击所需资源、随着攻击规模的累加,攻击作用会提高多少等因素。相对于现有应用层ddos攻防影响计算方法,攻击作用可以更为具体且实用地为攻击的威胁性提供客观参考依据。从某些角度来说,攻击作用的计算具有一定的实际意义。

(3)从网络底层的角度来分析防御作用的大小,当前研究领域很少从防御作用的角度来对网络系统安全进行评估。本计算方法可以通过攻击作用计算结果与阈值的对比,定量计算出防御作用的大小,提供了一个更为直观的防御功能参考值。也从防御功能的质量角度分析了防御功能的抗毁性,通过本计算方法可以计算出每一类防御功能可以抵御多大规模的攻击强度,为防御建设提供重要依据。

(4)从效用层面解释了应用层ddos攻防影响值,提出了以时间为上下限,使用平均攻击作用以及与防御的对比结果来分别得出攻防效用。此方法较传统方法更强调数学模型的重要性,选取了攻击持续时间为攻击的起点与终点。计算得各个时刻的攻击作用之后求出平均攻击作用,通过平均攻击作用的提出,在其合理性的基础上,不光可以直观地表示出本次攻击作用的大小,而且大大简化了效用的计算过程。通过效用的计算,可以更为合理且准确直观地描述一次应用层ddos攻击发生之后,攻击作用和防御措施分别对网络系统所造成的影响值。

附图说明

图1为网络状态值示意图。

图2为攻防作用计算示意图。

图3为本发明攻防效用度量流程图。

具体实施方式

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

本发明提供了一种应用层ddos攻防效用度量方法,以传统社会学、工程学对行为以及效用的定义为基础,通过分析网络中攻防行为的特点,提出应用层ddos攻防效用等相关定义并分析其性质;然后通过证明欧氏空间与网络逻辑拓扑之间的映射关系,利用n维欧氏空间中n维超平行体来描述网络节点状态,计算n维超平行体体积大小用于估算网络节点的状态值,并提出度量指标选取方法、提出应用层ddos攻防效用相关计算方法,得出应用层ddos攻防作用以及攻防效用;最后利用模拟实验验证了本发明方法的可行性及准确性。

(一)攻防效用相关定义

本发明从社会学角度和工程学角度,对网络攻防效用进行分析定义:从社会学角度分析了行为的定义,从工程学角度分析了效用的定义。具体如下:本发明根据传统的社会学对行为的定义,对网络中攻防行为做出如下定义:从网络的对象及其之间的互相联系来说,攻击行为或者防御行为指的是攻击手段或者防御手段在网络中引发的一系列状态变换,由攻击过程的发生导致的网络状态的变化可以描述为攻击行为;由防御手段引起的攻击效果削弱从而导致网络状态的变化可以定义为防御行为。结合工程学理论,对于网络中攻防行为的作用,本发明做出如下定义:攻防行为作用指的是攻击和防御行为在网络系统内部通过一系列动作使网络系统内部发生变化的原因,通过行为作用使网络状态发生了改变。对于攻防效用,本发明做如下定义:效用是一个表征系统或方案性能的基本度量指标,指一种行为作用到某一空间中,在一定范围内,行为作用到客体上的作用累积量。

(二)网络逻辑拓扑与n维仿射空间的映射关系证明

计算机网络的拓扑结构指网络中计算机设备与传输介质形成的节点与线的物理结构。其中节点主要分为转换节点和访问节点,传输介质即通信链路;每一种网络结构都由各节点及其通信链路组成。网络拓扑包括物理拓扑结构和逻辑拓扑结构,常见的网络逻辑拓扑结构有:星型结构、总线型结构、环形结构、树形结构、网状型结构等。

网络逻辑拓扑结构可以映射到仿射空间:

根据对象集合a(网络系统中各设备节点的集合)的元素之间的链路关系,可以将集合a中的元素映射至向量空间v中。

该映射把a中任意一对有序点p、q映射为v中一个向量并满足如下条件:

(1)

(2)存在唯一的点q∈a,使得

(3)

因此,集合a,即网络系统中的节点的集合就可以映射为一个仿射空间。

根据(一)中本发明对攻防行为、作用及功效的定义,对网络系统中的攻防行为过程进行分析可以知道,在一个网络逻辑拓扑结构中,各个节点设备均可以看作网络空间中的独立子空间,根据节点设备正常运行状态以及攻击行为发生之后的各个指标值的采集,每一个指标均为一个维度,通过指标维度,可以得出各个指标值在子空间中n维坐标系中的方向是互相垂直的,由此可得各个指标值所对应的向量在仿射空间中是线性无关。因此可以推论出基于网络逻辑拓扑结构所建立的网络场景,可以描述为n维仿射空间,特定网络行为的场景即为一个n维仿射空间的子空间。由于仿射空间是欧氏空间的仿射特性的推广,因此,网络中各节点可看成是一个n维欧氏空间。

(三)证明n维超平行体与网络状态之间的映射关系

一个网络拓扑结构中的某个节点在攻击/防御行为发生的过程中,该节点的各个指标项会发生变化,而指标维度对应着仿射空间的维度,即设备的一个指标项对应着n维欧氏空间中的一条向量,n个指标可刻画为欧氏空间中n个线性无关的向量。根据n维超平行体定义的描述,可以证明这些指标向量集合就是由这些指标向量张成的一个n维超平行体,也就是网络空间中的节点在欧氏空间中的几何形态,从而得出该几何体可以用于描述网络节点状态。从网络拓扑结构的物理意义来看,在一个网络中攻防行为的发生必然导致网络节点的各个指标项发生变化,而一个网络节点在攻防行为发生的过程中,由于该节点各个指标项之间不会产生依赖关系,其变化均由攻防作用决定,因此各个指标项之间可以看作是相互独立的,且映射至n维空间中其指标向量变化方向不一致,所以将网络节点中指标变化映射至节点对应的n维欧氏空间中可得出各个指标是欧氏空间中的n个线性无关的向量,由此可证明网络场景可以映射为n维超平行体。

(四)度量指标选取方法

由于应用层ddos攻击通常通过大量占用web服务器的请求队列来阻碍其对合法用户提供正常的web服务,因此,可以通过计算服务器在攻击防御发生前后的状态变化,来衡量应用层ddos的攻防效用。由此,在指标的选取上,本发明充分考虑了应用、物理和网络三个层面来反映服务器受攻击的影响,选取网络流量相关指标,如网络每秒吞吐量大小、tcp段个数、ip数据报个数等;硬件性能指标,如cpu占用率、内存使用率等;应用层指标,如平均响应时间、访问失败率等。本发明不限于上述指标,只要能充分体现服务器的安全状态、使用性能等即可。本实施例中,优选如下六个指标进行度量:网络每秒吞吐量大小、tcp段个数、ip数据报个数、访问失败率、平均响应时间、cpu占用率。以上六个指标项,可以综合全面地描述应用层ddos攻击,并考虑了网络层面以及硬件层面的影响,能够更为完善地用于分析ddos攻击影响值,且后续计算量小。

(五)应用层ddos攻防效用相关计算方法与数学建模

(1)网络状态值计算方法与数学建模

网络状态值计算方法思路如图1所示。

本发明将网络中的各设备节点看作是网络空间中的各独立子空间,将设备指标作为子空间的维度,映射至n维空间中,各个指标均对应空间中的向量,节点指标的数值变化也就意味着对应向量的长度会发生变化。由前文可知,网络节点指标向量可以映射为n维欧氏空间中的n维超平行体,通过这个几何模型(n维超平行体)可以描述网络节点的状态,利用n维超平行体体积可以直观地描述网络节点的当前状态值。

网络状态值的具体计算步骤如下:

第一步,构建n维矩阵。根据指标的选取,假设选取了n个指标,这n个指标分别为m1、m2、m3、……、mn。根据前文的论证,网络节点中每一个指标均为n维欧氏空间v中的线性无关的向量。因此,n个指标可以映射至n维空间中的向量维度,以本实施例优选的6个指标为例,该6个指标可映射至六维空间中的向量维度,其向量分别表示为:

因此,这6条向量组成的6维矩阵可以表示为一个对角矩阵,即:

第二步,计算6维欧氏空间中超平行体体积大小。由以上6条向量在6维欧氏空间中所构成的超平行体的体积v(m1,m2,…,m6)为:

v(m1,m2,...m6)=v(m1,m2,...m5)·h6(3)

其中h6是m6关于向量m1,m2,…m5所生成的子空间的正交分量的长,且v1(α)=|α|,α=m1,m2,...m6。经证明可知:其中g(m1,m2,…m6)为格拉姆行列式,d是(m1,m2,…m6)在v的某一组标准正交基下坐标的行列式。

由此可得,在某一时刻t下的网络状态值即为第一步中所得对角矩阵m的行列式。设网络状态值为st,其具体计算方法为:

st=|m|(4)

第三步,计算攻击发生过程中网络状态的算术平均值。为避免可能某一状态的偶然性,取一段时间的节点状态的算术平均值表示网络节点在这段时间的安全状态。网络节点在攻防作用共同作用持续时间ti,i=(1,2,…,m)内,每一时刻下的网络状态值分别为因此网络状态的算术平均值为:

例1.设在无攻击状态下所采集网络节点的6项指标网络吞吐量速率、tcp数据段传输速率、ip数据报传输速率、平均流量到达时间、cpu占用率、事务失败率大小分别为1个/秒、2个/秒、3个/秒、1秒、1%、1%,其中平均流量到达时间以及事务失败率为平均值。计算网络节点在当前时刻的状态值s。

由式(1)、式(2)得,当前指标可构成对角矩阵m如下:

由式(3)、式(4)得,当前网络逻辑拓扑所映射的6维超平行体体积大小,也就是网络节点的状态值s=|m|=6。

(2)攻防作用计算方法与数学建模

测量攻击作用大小的方法如图2所示。

基于网络节点受到的攻击行为以及所采用的防御行为都会使得网络节点的状态值发生变化,则可以利用网络节点状态值的变化量,描述网络节点的攻防作用及效用。将网络节点受到的攻击强度预设为1、防御基础预设为0,通过计算攻击作用造成网络节点状态值的变化率来得出当前攻击方法以及攻击强度下的攻击作用。在设定网络节点初始值为0的情况下,即在没有添加任何防御措施的情况下,攻击作用=网络节点状态值,利用此思想可以推论出防御措施作用的大小计算方法。基于攻防行为的可变性这一特征,为保证攻防作用计算结果的普适性,应通过判断对每一时刻攻击作用大小分析出攻击强度发生变化之后,选取攻击强度一定的时间段来得出平均攻击作用,以此来消除攻击作用的峰值以及最低值,达到可以全面描述攻击作用的目的。

在时间跨度不变的前提下,攻击作用与防御作用的计算大致路线如表1所示。表1中列出了攻击作用在时间跨度一定的情况下,攻击强度的变化带来的攻击作用的变化值,以及防御作用由防御措施的累加所引起的变化量。为了更方便且明确地说明攻击防御作用随着攻击强度以及防御强度的累加的变化量,表中数据均为抽象值,不代表具体攻击强度与防御强度。

表1攻防作用大小模拟计算表

根据状态值计算模型建立,采用通过对服务器性能数据记录、网络分析、应用程序服务等相关指标分析,选取其中数据波动最为平稳且相对符合正常用户合法访问行为轨迹的1-5小时时间内的节点状态值作为阈值的阈值选取方法,选取一段网络正常运行状态并计算得出其状态值s0。当攻击作用发生后,网络状态值发生的变化量大小可用攻击作用描述。也就是网络受到攻击后,网络状态值的变化与阈值比较之后的变化程度。

1.攻击作用计算模型

设当攻击强度为x时,在时刻t1上,网络状态值为s1。则在每一个时刻的攻击作用计算方法为:

平均攻击作用力的计算方法为:

例2.设在正常运行状态下所采集网络节点的6项指标网络吞吐量速率、tcp数据段传输速率、ip数据报传输速率、平均流量到达时间、cpu占用率、事务失败率大小分别为1个/秒、2个/秒、3个/秒、1秒、1%、1%,以上均为平均值。攻击发生时,各项指标值在攻击过程中平均大小分别为10个/秒、20个/秒、30个/秒、10秒、10%、10%,计算此次平均攻击作用大小。

例中所给出均为平均值,因此可直接计算平均网络状态值。由公式1、公式2、公式5得,在正常运行状态下平均网络状态值sn为

在攻击发生过程中平均网络状态值sa为

根据公式7可得,在此次攻击发生过程中,平均攻击作用大小的值为

2.防御作用计算模型

设在攻击强度为x时,系统内不添加任何防御措施的状态下,网络状态值为s1,则在t1时刻攻击作用可根据公式6设为若在此时向系统内添加了防御措施d之后,网络状态值为s1′,攻击作用变化为攻击作用变化量记为根据公式6推论,则在t1时刻防御作用的计算方法为:

其中平均防御作用力的计算方法为:

例3.在上述例2中数据基础之上,针对目标网络节点配置某种防御技术之后各项指标值在攻击过程中平均大小分别为5个/秒、10个/秒、15个/秒、5秒、5%、5%。计算此防御作用大小(结果精确至小数点后两位)。

由公式1、公式2、公式5得,在配置防御之后平均网络状态值sd为

由公式8及例2中计算结果得,此攻防对抗过程中平均防御作用大小

(3)攻防效用计算方法及数学建模

作用效用值可以说明在攻击持续时间内,攻击作用对网络节点攻击的总量以及防御作用在攻防对抗时间内起到的总防御能力。在一次应用层ddos攻击中,攻击方的攻击流量在正常情况下不会是恒定不变的,网络中流量的影响受到各种因素的制约。因此攻击作用的表示可以得出在某一时间点上的攻击大小,但是并不能反映整个攻击过程中攻击所造成的影响。在阈值的研究基础上,攻击发生之后可以得出每一时刻中攻击作用的大小,这时攻击效用则可以说明次攻击类型在整个攻击发生过程中所造成的影响值,也就是说,效用是作用之和,是攻击作用随着时间变化的累积量。设攻击作用大小为f,在阈值设定与选取时,攻击作用为0,则攻击效用也为0。若攻击发生时,设t1时刻攻击作用为f1,t2时刻攻击作用为f2,tn时刻攻击作用为tn。基于阈值的设定,则攻击效用e的计算方法为

攻防效用值代表着攻防作用的累积量,因为在攻防过程中,攻击者与防御手段所起的作用在实际操作中是不可能恒定不变的。因此在评估过程中,需要得出两种作用在整个过程中的效用值,即效用值可以说明攻防作用在攻防过程中的总效果量。

根据公式7及公式9所得计算结果,设在攻击持续时间t内,攻击强度为x、防御强度为y,平均攻击作用力记为平均防御作用力为则攻击效用ea以及防御效用ed的计算方法分别为:

根据攻防效用值的计算结果可以得出防御措施可以抵御多少当前攻击类型的攻击效果,以此可提出防御效率的概念。根据公式10,在防御为0时,可以得出在一定时间t内,攻击效用值为ea。当前系统设置加入防御措施之后,攻击效用为ea′。则防御效率de的计算方法为:

例4.以例3中假设数据为基础,设攻防对抗持续时间为60秒,计算此过程中攻防效用ea与ed各自大小以及防御效率de。

根据公式11、12得,在攻防对抗过程中,攻防效用各自的大小分别为:

防御效率de大小为:

综上,本发明通过性能监控、流量统计、数据包的截取等数据采集方法,得到一系列特定指标项之后,用这些指标数据的组合来进行各个网络节点状态的定量描述,从而计算得出各个网络节点在攻击发生时的状态。根据网络节点状态的变化,可以分析计算出当前攻防作用的大小,从而得出攻防效用值,具体流程图如图3所示。

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

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