一种面向云计算环境的认知入侵检测方法与流程

文档序号:11590183阅读:225来源:国知局
一种面向云计算环境的认知入侵检测方法与流程

本发明属于云计算领域,具体的是一种面向云计算环境的认知入侵检测方法。



背景技术:

云计算已经成为当前it界关注的热点话题,但云计算的发展也面临许多关键性问题,而安全问题首当其冲,并且随着云计算的不断普及,其重要性呈现逐步上升趋势,已成为制约云计算发展的核心因素。云安全的挑战体现在3个方面:(1)数据安全,包含数据加密解密、访问控制、传输安全等;(2)服务安全,包含服务器安全、安全单点登录、身份认证、信任模型等;(3)安全监控体系,用来防御和阻止恶意入侵行为,保障所有用户的数据与隐私安全,是云安全至关重要的一环。

传统的被动式防御方法不能及时判断并阻止网络攻击,缺乏识别已知或未知的安全攻击的认知能力,不具备实时性、智能性已经不能满足云计算的环境。因此,云计算环境下需要更加主动的,先验的认知入侵检测方法,以达到快速识别、预警与防护云计算环境下的安全攻击。

现有技术中文献一(申请号:201510870283.x)提供了一种基于云计算的入侵检测方法,将入侵检测功能从传统的主机端转移到云端,在云端以服务形式提供。其核心入侵检测分析服务置于云端,通过云服务商专业的网络安全团队对其进行更新维护。简化了主机端的复杂性,降低了维护成本。其主要过程如图1所示。该文献是针对互联网入侵检测的一个基础性专利,对于入侵检测系统而言,基于云计算环境的入侵检测系统使系统拥有了云数据库的数据集中和共享的优点。该技术的不足是:(1)未对入侵检测引擎,入侵检测比对规则库,智能异常检测作出具体阐述;(2)对于比较得到的可能的未知类入侵行为没有识别能力,没有给出相应的解决方案,简单作为新的入侵行为,不具备对未知攻击的认知能力。

文献二(申请号:201610049716.x)提供了一种云计算环境中的自主分析入侵检测方法,利用改进的bp神经网络训练入侵检测器实时对经过预处理的网络流量异常的数据包进行检测,随后对异常数据进行识别,将得到的未知入侵行为进行特征提取以下次识别出新类型的入侵行为,提出了自主分析与检测的思路,扩展率高。其主要过程如图2所示。该文献是针对互联网入侵检测的一个较为前沿的专利,对于入侵检测系统而言,基于云计算环境且能检测已知和未知类型入侵行为并及时反馈,补充云数据库,使系统检测和防御功能得到改善。该技术的不足是:未知入侵行为的特征值提取方法还有很大改进空间,来提高系统的速度和安全性。



技术实现要素:

针对传统入侵检测系统(intrusiondetectionsystem)模型的被动式防御策略不能及时判断并阻止已知或未知的安全攻击,系统的危险系数较大等问题,提出了一种面向云计算的具有认知能力的入侵检测系统,具体方案如下:一种面向云计算环境的认知入侵检测方法,包括如下步骤:

步骤1,云计算环境中数据预处理单元接收到流量异常的数据包,对数据包中的数据进行规则化预处理,从而获取包含有特征向量的数据包文件,并把预处理后的数据包分别发到数据库和数据包检测单元中;

步骤2,所述数据库接收并存储带有特征向量数据的数据包文件,并根据存入的数据包建立日志记录;

步骤3,建立认知规则库,认知规则库中包含有已知入侵行为特征数据;

步骤3,数据包检测单元根据已经建立起来的认知规则库中的信息进行规则匹配,若发现符合的匹配规则,则向入侵检测引擎单元报警,入侵检测引擎单元根据收到的报警信息向事件处理单元发送指令,事件处理单元收到指令后进行发出警报以及切断网络;

步骤4,如果数据包检测单元没有发现符合的匹配规则,则表示无法识别该数据包中的攻击种类,则由数据库将该数据包的信息传给云推理学习模块做入侵可能性进行评估;

步骤5,建立云规则,在无网络连接时,云认知推理机以数据库中存储的特征向量数据为训练样本建立起云规则数据库;

步骤6,判断无法识别的攻击种类,网络连接时,云认知推理机接收无法识别攻击种类的数据包的特征向量数据,云认知推理机采用基于遗传算法的特征向量提取算法对征向量数据进行优化选择获得最优选的入侵特征向量,该入侵特征向量和建立的运管站数据库比对,激活多条定性云规则,通过云认知推理机进行不确定性推理,确定入侵种类,并把结果发送至入侵检测引擎单元;

步骤7,所述入侵特征向量发送至原云规则化数据库中修正、更新成为型的云规则化数据库。

步骤8,所述入侵特征向量发送至统计分析单元中,统计分析单元根据入侵特征向量的日志记录判断是否构成网络入侵,把判断的结果发至入侵检测引擎单元和事件处理单元,同时把该入侵特征向量的数据信息发送至认知规则库中进行更新;

步骤9,所述入侵检测引擎单元接收来自云认知推理机的推理结果和来自统计分析单元的判断结果,向事件处理单元发送指令;

步骤10,所述事件处理单元收到来自入侵检测引擎单元和统计分析单元的指令后进行发出警报以及切断网络。

进一步所述步骤6中的基于遗传算法的特征向量提取算法的具体步骤如下:

1)设定进化代数g=0,生成包含n个个体的初始化群体p(g);

2)在该群体中对每个个体估值,计算各自适应度f(x);

3)根据个体适应度f(x),从p(g)中选择两个个体作为父代(适应度值越大,选中的机会越大),根据交叉概率,让选出的两个个体进行交叉产生新的后代(如果交叉概率为0,即不进行交叉,则后代就是父代的完全复制),再根据变异概率,新生后代在各自基因座产生变异;重复上述步骤,产生新个体,将最后生成的个体形成新的群体p(g+1);

4)将新产生的群体p(g+1)作为后续进化操作所需的群体,令进化代数g=g+1;

5)若终止条件满足,则算法结束,返回在当前群体中最好的个体,即最优解

6)若终止条件不满足,则跳至步骤2)继续该遗传算法。

进一步所述步骤6中所述的不确定性推理具体步骤如下:

step1,经过数据预处理后的一组未知入侵特征向量(x1,x2…xn),每个xi根据3en原则:|ex-xi|<3en激活规则;

step2,每条被激活规则对应正向云发生器推理输出云滴(dropxi,yi);

step3,逆向云发生器在云滴drop(x1,y1),…(xn,yn)的基础上得到虚拟云的数值特征:exij,enij,heij;

step4,再将xi代入虚拟云中得到它的确定度;

step5,对每个xi重复step2-5过程,分别得到对应的确定度;

step6,依据最大确定度原则确定入侵类型。

更进一步所述步骤8中统计分析处理单元通过在任意给定的时刻,对n个变量值进行测量,推理判断系统是否有入侵发生,每个ni(i=1,2,···,n)变量表示系统不同方面的特征,包含syn数据包数目、用户登录失败次数、cpu使用率及网络流量等,mi(i=1,2,···,n)是正常情况下该数据的期望值预测,在t时刻定义的检测函数为:

其中,λi>0体现了重要程度的权值,即敏感程度,f(t)越小,通信过程越接近正常情况,当f(t)超过预先设定的阀值后,就认为网络入侵发生了。

和现有技术相比较本发明中云认知推理学习模块采用遗传算法对特征向量进行优化,使所需的训练时间和监测时间比其他方法短,其次,实时在线的检测能力较强,最后,在云计算的环境中充分利用云计算进行大规模并行计算和大数据量处理的能力,使运算能力大大加强,使系统更加安全高效。

附图说明

图1为文献一的基于云计算的入侵检测方法流程图;

图2为文献二云计算环境中的自主分析入侵检测方法流程图;

图3为面向云计算的认知入侵检测方法流程图;

图4为基于遗传算法获取特征向量提取的算法流程框图;

图5云认知推理机的具体推理算法流程框图。

具体实施方式

实施例1

如图1所示,所述一种面向云计算的具有认知能力的入侵检测系统,包括认知检测模块:数据预处理负责收集网络中的数据流,生成一定格式的数据流文件。数据包检测对经过预处理的数据流进行数据包检测,根据已经建立起来的认知规则库,判断该数据流是否为已知的攻击形式,对已知的攻击建立符合一定规则的攻击签名,包含处理方式、传输层协议类型、应用层协议类型、端口号、ip地址范围、备注信息等。

云认知推理学习模块:云推理学习模块是对入侵可能性进行评估。推理机的输入分为两部分:一部分入侵检测时(在线判决),采集器将采集到的网络特征向量提供给云认知推理机进行分析和推理。而网络连接时采集器采集的特征向量很多,为了快速云计算环境下海量的连接数据,采用遗传算法对特征向量进行优化选择,根据高检出率低误报率的适应度值,选出最优的特征个体;另一个是样本训练时(离线学习),采集器将预处理后的信息存储到数据库中为云认知推理机提供信息,进而采用云计算对入侵可能性进行评估。

统计分析处理模块:针对虚拟组织的日志记录,用于实时分析,发现异常事件。入侵检测引擎综合各个系统的报警信息,分析后向事件处理模块下达指令,完成报警、切断连接等工作。

所述认知检测模块中包括数据预处理单元、数据包检测单元、入侵检测引擎单元、数据库;云认知推理学习模块中包含有云认知推理机和云规则化单元;统计分析处理模块中包括统计分析单元和事件处理单元。

所述设计预处理单元分别与数据包检测单元和数据库连接,数据包检测单元与入侵检测引擎单元连接,入侵检测引擎单元与事件处理单元连接;所述数据库与云规则化单元连接,云规则化单元与云认知推理机相互连接,云认知推理机分别与云规则化单元、入侵检测引擎单元和统计分析单元连接,所述统计分析单元分别与认知规则库、事件处理单元和入侵检测引擎单元连接,所述认知认知规则库与数据包检测单元连接。

如图1、图2和图3所示,基于上述系统的一种面向云计算环境的认知入侵检测方法,包括以下步骤:

步骤1,云计算环境中数据预处理单元接收到流量异常的数据包,对数据包中的数据进行规则化预处理,从而获取包含有特征向量的数据包文件,并把预处理后的数据包分别发到数据库和数据包检测单元中;

步骤2,所述数据库接收并存储带有特征向量数据的数据包文件,并根据存入的数据包建立日志记录;

步骤3,建立认知规则库,认知规则库中包含有已知入侵行为特征数据;

步骤3,数据包检测单元根据已经建立起来的认知规则库中的信息进行规则匹配,若发现符合的匹配规则,则向入侵检测引擎单元报警,入侵检测引擎单元根据收到的报警信息向事件处理单元发送指令,事件处理单元收到指令后进行发出警报以及切断网络;

步骤4,如果数据包检测单元没有发现符合的匹配规则,则表示无法识别该数据包中的攻击种类,则由数据库将该数据包的信息传给云推理学习模块做入侵可能性进行评估;

步骤5,建立云规则,在无网络连接时,云认知推理机以数据库中存储的特征向量数据为训练样本建立起云规则数据库;

步骤6,判断无法识别的攻击种类,网络连接时,云认知推理机接收无法识别攻击种类的数据包的特征向量数据,云认知推理机采用基于遗传算法的特征向量提取算法对征向量数据进行优化选择获得最优选的入侵特征向量,该入侵特征向量和建立的运管站数据库比对,激活多条定性云规则,通过云认知推理机进行不确定性推理,确定入侵种类,并把结果发送至入侵检测引擎单元;

所述步骤6中的基于遗传算法的特征向量提取算法的具体步骤如下:

1)设定进化代数g=0,生成包含n个个体的初始化群体p(g);

2)在该群体中对每个个体估值,计算各自适应度f(x);

3)根据个体适应度f(x),从p(g)中选择两个个体作为父代(适应度值越大,选中的机会越大),根据交叉概率,让选出的两个个体进行交叉产生新的后代(如果交叉概率为0,即不进行交叉,则后代就是父代的完全复制),再根据变异概率,新生后代在各自基因座产生变异;重复上述步骤,产生新个体,将最后生成的个体形成新的群体p(g+1);

4)将新产生的群体p(g+1)作为后续进化操作所需的群体,令进化代数g=g+1;

5)若终止条件满足,则算法结束,返回在当前群体中最好的个体,即最优解

6)若终止条件不满足,则跳至步骤2)继续该遗传算法。

根据上述步骤的计算结果可以修正并更新原来的云规则,以提高对当前网络环境的入侵检测的适应性。

所述步骤6中所述的不确定性推理具体步骤如下:

step1,经过数据预处理后的一组未知入侵特征向量(x1,x2…xn),每个xi根据3en原则:|ex-xi|<3en激活规则;

step2,每条被激活规则对应正向云发生器推理输出云滴(dropxi,yi);

step3,逆向云发生器在云滴drop(x1,y1),…(xn,yn)的基础上得到虚拟云的数值特征:exij,enij,heij;

step4,再将xi代入虚拟云中得到它的确定度;

step5,对每个xi重复step2-5过程,分别得到对应的确定度;

step6,依据最大确定度原则确定入侵类型。

步骤7,所述入侵特征向量发送至原云规则化数据库中修正、更新成为型的云规则化数据库。

步骤8,所述入侵特征向量发送至统计分析单元中,统计分析单元根据入侵特征向量的日志记录判断是否构成网络入侵,把判断的结果发至入侵检测引擎单元和事件处理单元,同时把该入侵特征向量的数据信息发送至认知规则库中进行更新;

所述步骤8中统计分析处理单元通过在任意给定的时刻,对n个变量值进行测量,推理判断系统是否有入侵发生,每个ni(i=1,2,···,n)变量表示系统不同方面的特征,包含syn数据包数目、用户登录失败次数、cpu使用率及网络流量等,mi(i=1,2,···,n)是正常情况下该数据的期望值预测,在t时刻定义的检测函数为:

其中,λi>0体现了重要程度的权值,即敏感程度,f(t)越小,通信过程越接近正常情况,当f(t)超过预先设定的阀值后,就认为网络入侵发生了。

步骤9,所述入侵检测引擎单元接收来自云认知推理机的推理结果和来自统计分析单元的判断结果,向事件处理单元发送指令;

步骤10,所述事件处理单元收到来自入侵检测引擎单元和统计分析单元的指令后进行发出警报以及切断网络。

与传统的入侵检测系统不同,面向云计算的具有认知能力的入侵检测系统(简称cidcc)不再采用一对一的匹配,即单一特征匹配激活一条规则,而是当输入采集到的入侵特征向量,将激活多条定性云入侵规则,再通过云认知推理机来实现带有不确定性的关联推理,并只能判别结果输出给入侵检测引擎进行决策相应。

网络连接开始后,该网络防火墙的入侵检测系统内部会截获网络中的数据流,对数据预处理,即收集网络中的数据流,生成一定格式的数据包文件。然后,在数据包检测模块经过预处理的数据流会进行数据包检测。

认知规则库中所提供的数据集,所有的攻击主要分为4大类:dos类、probe类、r2l类和u2r类。其中,dos类中包含的入侵类型有land、nepture、pod、teardrop等;probe类包含的入侵类型有nmap、portsweep、satan、mscan、ipsweep。根据该认知规则库,判断数据流是否是已知攻击形式。对于已知的攻击,建立符合一定规则的攻击签名,攻击签名有以下几个部分组成:处理方式(assert警告,disconnect切断连接,track跟踪记录)、传输层协议类型(tcp、udp)、应用层协议类型(ftp、http、ssh、telnet)、端口号、ip地址范围、备注信息(message)等。实验采用了整个数据集的1%(共为50000条连接记录),同时为了保证执行的效率,试验中分别随机选取10万条记录作为训练数据集和测试集。在训练样本中只包含dos类、probe类、r2l类三类,余下的数据集另选2万条记录数据供测试用,其中包含训练集出现的各种攻击类型,也包含有在训练集中未出现的攻击类型。

检测结果验证,该系统对未知攻击和已知攻击有较好的检测能力,无论是对已知攻击还是未知攻击,利用了本文提出的新模型比利用传统入侵检测模型具有更高的roc分值。而且基于云计算的认知入侵监测模型具有以下优点:首先,采用了该方法遗传算法对特征向量进行优化,使所需的训练时间和监测时间比其他方法短,其次,实时在线的检测能力较强,最后,在云计算的环境中充分利用云计算进行大规模并行计算和大数据量处理的能力,使运算能力大大加强,使系统更加安全高效。

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