技术领域
本发明涉及大数据入侵检测技术领域,更具体为一种基于加权隐朴素贝叶斯模型大数据入侵检测方法。
背景技术
随着大数据时代的到来,实际采集到的数据类型越来越多样化,这些数据中往往会存在和研究无关或者冗余的属性,这就会对分类结果产生一些负面的影响。为了解决以上的问题,本课题以朴素贝叶斯模型为基础,对其进行研究后提出改进方案,提出对属性选择算法(CFS)的改进以及改进加权隐朴素贝叶斯模型,并把该模型应用到大数据入侵检测问题中。
朴素贝叶斯法是基于贝叶斯定理与特征条件独立假设的分类方法[1]。最为广泛的两种分类模型是决策树模型(Decision Tree Model)和朴素贝叶斯模型(NaiveBayesian Model,NBM)。和决策树模型相比,朴素贝叶斯分类器(Naive Bayes Classifier或NBC)发源于古典数学理论,有着坚实的数学基础,以及稳定的分类效率。同时,NBC模型所需估计的参数很少,对缺失数据不太敏感,算法也比较简单。理论上,NBC模型与其他分类方法相比具有最小的误差率。但是实际上并非总是如此,这是因为NBC模型假设属性之间相互独立,这个假设在实际应用中往往是不成立的,这给NBC模型的正确分类带来了一定影响。
在当前互联网模式不断改革创新、网民规模处于持续增长而产生海量应用信息的“大数据”时代下,构建安全的网络空间成为亟待解决的社会热点问题。目前入侵检测技术存在的对未知类型的病毒攻击检测能力较低以及对多属性入侵病毒的检测速度过慢的问题。
发明内容
本发明的目的在于提供一种基于加权隐朴素贝叶斯模型大数据入侵检测方法,解决了入侵检测技术存在的对未知类型的病毒攻击检测能力较低以及对多属性入侵病毒的检测速度过慢的问题的问题,满足实际使用需求。
为实现上述目的,本发明提供如下技术方案:一种基于加权隐朴素贝叶斯模型大数据入侵检测方法,其特征在于:该检测方法包括如下步骤:
步骤一,收集病毒入侵属性数据
在线收集:将大数据中网络入侵病毒数据传输至加权隐朴素贝叶斯模型数据库中,对入侵病毒属性进行数据转换,得到入侵属性信息表;
离线构建:通过mitmproxy抓包软件收集获取并预处理设备中的离线数据包,获得离线数据包属性集合;训练样本集包括网络已知属性数据和入侵抓包属性数据,所述网络已知属性数据包括网络样本正常数据和网络样本入侵类别数据;
步骤二,对数据库中入侵数据属性进行排列
将数据库中属性进行多级排列,一类为单独属性C、A1、A2、A3、A4、…,二类为双层属性A1A2、A2A3、A3A4、…,三类为三层属性A1A2A3、A2A3A4、A3A4A5、…,对分类属性进行数值统计,并形成数据库集,并对数据库集中的数据进行排列,形成属性数据矩阵;
步骤三,构建一个加权隐朴素贝叶斯模型
基于步骤一和步骤二的数据构建能同时挖掘单独入侵属性和多项入侵属性信息的加权隐朴素贝叶斯模型;
步骤四,训练加权隐朴素贝叶斯模型
通过已给定的数据库集,以属性词之间独立作为前提假设,学习从输入到输出的联合概率分布,再基于学习系统模型将属性矩阵作为检测模型训练的输入,训练加权的隐朴素贝叶斯模型,得到训练好的加权的朴素贝叶斯检测模型;
步骤五,验证加权隐朴素贝叶斯模型
通过mitmproxy抓包软件进行数据包抓取,抓包完成后对数据包整合并重现,加权隐朴素贝叶斯模型对重现数据进行检验,调取数据矩阵,如果得到的属性是数据矩阵中的属性,并对入侵数据进行分类,将其分入对应的属性分类中,说明检测到了网络入侵,输出入侵报警信息。
作为本发明的一种优选实施方式,步骤二中,C为类属性节点,是所有属性节点的父亲节点,也是数据的基本属性。
作为本发明的一种优选实施方式,步骤二中,二类节点内属性为两个相邻一类属性组合形成,三类节点内属性为三个相邻一类节点属性组合形成,四类节点内属性为三组随机的一类节点属性组合形成。
作为本发明的一种优选实施方式,步骤三中,通过加入新型入侵病毒来训练模型的学习能力,在入侵病毒中加入数据库中未存在的特有属性或者是更多中属性的集合。
作为本发明的一种优选实施方式,步骤五中,将其分入对应的属性分类中的同时调取网络数据,根据属性匹配病毒名称,存储病毒名称、入侵时间和入侵次数。
与现有技术相比,本发明的有益效果如下:
本发明,通过强大的数据库来将病毒属性进行多级分类,将分类整合形成属性矩阵,并且通过贝叶斯模型综合访问属性矩阵,相比传统WAF技术对网站入侵更加准确全面,能够减少漏检、误检的概率,降低隐藏属性和未知属性病毒的通过率;通过抓取数据包来进行模型学习,减小了服务器的性能开销并且可以识别多种入侵攻击手段。
附图说明
图1为本发明所述数据矩阵的结构图;
图2为本发明所述基于加权隐朴素贝叶斯模型大数据入侵检测方法的结构图;
图3为本发明所述基于加权隐朴素贝叶斯模型大数据入侵检测方法的流程图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参阅图1-3,本发明提供一种技术方案:一种基于加权隐朴素贝叶斯模型大数据入侵检测方法,该检测方法包括如下步骤:
步骤一,收集病毒入侵属性数据
在线收集:将大数据中网络入侵病毒数据传输至加权隐朴素贝叶斯模型数据库中,对入侵病毒属性进行数据转换,得到入侵属性信息表,在线模块对于网络中出现的新型病毒进行时刻检测,出现新型病毒属性时将其属性特征下载至数据库中并与数据库中原有属性数据进行比对,未存在时将其属性数据保存并分类;
离线构建:通过mitmproxy抓包软件收集获取并预处理设备中的离线数据包,获得离线数据包属性集合,形成入侵抓包属性数据;训练样本集包括网络已知属性数据和入侵抓包属性数据,网络已知属性数据包括网络样本正常数据和网络样本入侵类别数据,设备离线时自动启动离线构建模块,对设备中的数据进行随机抓包;
步骤二,对数据库中入侵数据属性进行排列
将数据库中属性进行多级排列,一类为单独属性C、A1、A2、A3、A4、…,二类为双层属性A1A2、A2A3、A3A4、…,三类为三层属性A1A2A3、A2A3A4、A3A4A5、…,对分类属性进行数值统计,并形成数据库集,并对数据库集中的数据进行排列,形成属性数据矩阵,加权隐朴素贝叶斯模型调取数据矩阵内的数据并与抓包数据进行匹配,以检测数据是否正常并将异常属性数据提出,对于出现频率高的属性加入高权,出现频率低的赋予低权;
步骤三,构建一个加权隐朴素贝叶斯模型
基于步骤一和步骤二的数据构建能同时挖掘单独入侵属性和多项入侵属性信息的加权隐朴素贝叶斯模型,更新数据后通过抓包软件对更新数据进行抓包并在离线状态下对模型进行训练;
步骤四,训练加权隐朴素贝叶斯模型
通过已给定的数据库集,以属性词之间独立作为前提假设,学习从输入到输出的联合概率分布,再基于学习系统模型将属性矩阵作为检测模型训练的输入,训练加权的隐朴素贝叶斯模型,得到训练好的加权的朴素贝叶斯检测模型,将网络中出现频率高的病毒属性优先对模型进行学习,并在学习过程中加入特有的单一属性,提高学习的效果;
步骤五,验证加权隐朴素贝叶斯模型
通过mitmproxy抓包软件进行数据包抓取,抓包完成后对数据包整合并重现,加权隐朴素贝叶斯模型对重现数据进行检验,调取数据矩阵,如果得到的属性是数据矩阵中的属性,并对入侵数据进行分类,将其分入对应的属性分类中,说明检测到了网络入侵,输出入侵报警信息。
进一步改进地,步骤二中,C为类属性节点,是所有属性节点的父亲节点,也是数据的基本属性。
进一步改进地,步骤二中,二类节点内属性为两个相邻一类属性组合形成,三类节点内属性为三个相邻一类节点属性组合形成,四类节点内属性为三组随机的一类节点属性组合形成,根据数据库的大小和运算速度来设定需要分类的节点数量,一类节点覆盖数据库中所有单一属性。
进一步改进地,步骤三中,通过加入新型入侵病毒来训练模型的学习能力,在入侵病毒中加入数据库中未存在的特有属性或者是更多中属性的集合。
具体地,作为本发明的一种优选实施方式,步骤五中,将其分入对应的属性分类中的同时调取网络数据,根据属性匹配病毒名称,存储病毒名称、入侵时间和入侵次数,根据入侵次数来重点学习该种属性,从而提高检测的速度。
通过数据库来将病毒属性进行多级分类,将分类整合形成属性矩阵,并且通过贝叶斯模型综合访问属性矩阵,相比传统WAF技术对网站入侵更加准确全面,能够减少漏检、误检的概率,降低隐藏属性和未知属性病毒的通过率;通过抓取数据包来进行模型学习,减小了服务器的性能开销并且可以识别多种入侵攻击手段。
最后应说明的是:以上所述仅为本发明的优选实施例而已,并不用于限制本发明,尽管参照前述实施例对本发明进行了详细的说明,对于本领域的技术人员来说,其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
机译: 基于朴素贝叶斯模型的学生学业成绩预测方法和系统
机译: 基于SQL的朴素贝叶斯模型的建立和评分
机译: 基于生成模型的朴素贝叶斯分类器的特征加权