一种网络入侵检测方法及系统与流程

文档序号:20918984发布日期:2020-05-29 13:53阅读:317来源:国知局
本发明涉及网络安全
技术领域
:,尤其涉及一种网络入侵检测方法及系统。
背景技术
::如今,随着5g技术的快速发展,以及物联网技术的广泛使用,大量的物理设备接入网络,使得整个网络容易受到各种各样的安全威胁。现有大多数网络系统都使用防火墙进行预防,而将入侵检测系统(intrusiondetectionsystem,简称ids)认为是第二道防线。但是,现有基于机器学习和基于深度学习的入侵检测解决方案与ids实际部署的解决方案之间存在严重脱节。具体而言,现有的大部分算法是基于一些有缺陷的假设,进而扭曲了其映射到实际部署的ids。目前,大部分的算法都是基于封闭世界的假设,在分类过程中只考虑在训练期间看到的类别,仅评估固定的闭集类的准确性,而实际部署的ids处于一个动态和开放的环境,新的网络入侵会不断出现,由于训练数据集难以覆盖所有会出现的网络入侵,根据不完整的训练数据集所构建的入侵检测模型可能会将新的网络入侵误检为已有入侵或者已有正常行为,从而导致入侵检测模型在检测未知网络入侵时失效。因此,现在亟需一种网络入侵检测方法及系统来解决上述问题。技术实现要素:针对现有技术存在的问题,本发明实施例提供一种网络入侵检测方法及系统。第一方面,本发明实施例提供了一种网络入侵检测方法,包括:基于训练好的网络入侵检测模型对待检测网络数据进行检测,并对得到的检测结果进行分析判断,若判断获知所述待检测网络数据为网络已知数据,则根据所述检测结果,对所述网络已知数据进行细粒度分类;若判断获知所述待检测网络数据为网络未知类别入侵数据,则对所述网络未知类别入侵数据进行聚类,获取所述网络未知类别入侵数据中各类别的聚类质心;根据所述网络未知类别入侵数据中各类别的聚类质心,对所述训练好的网络入侵检测模型的分类器进行更新,以根据更新后的网络入侵检测模型对后续待检测网络数据中网络未知类别入侵数据进行入侵检测。进一步地,所述训练好的网络入侵检测模型是通过以下步骤得到的:基于卷积神经网络构建待训练的网络入侵检测模型,所述待训练的网络入侵检测模型包括卷积层、最大池化层、完全连接层和最近类别均值分类器;获取训练样本集,所述训练样本集包括网络已知样本数据和分布外合成样本网络数据,所述网络已知样本数据包括网络样本正常数据和网络样本入侵类别数据,所述分布外合成样本网络数据是通过所述网络已知样本数据和样本噪声数据合成得到的;获取预设训练损失函数,所述预设训练损失函数包括fisher损失函数和mmd损失函数,并将所述fisher损失函数、所述mmd损失函数和交叉熵损失函数进行联合优化处理,得到整体训练损失函数;根据所述训练样本集和所述整体训练损失函数,对所述待训练的网络入侵检测模型进行批次训练,得到所述训练好的网络入侵检测模型。进一步地,在所述根据所述训练样本集和所述整体训练损失函数,对所述待训练的网络入侵检测模型进行批次训练,得到所述训练好的网络入侵检测模型之后,所述方法还包括:通过所述训练好的网络入侵检测模型,对待检测网络数据进行检测,并根据阈值判别方法,对得到的检测结果进行分析判断,若判断获知所述待检测网络数据为网络已知数据,则根据所述检测结果,对所述网络已知数据进行细粒度分类;判断获知所述待检测网络数据为网络未知类别入侵数据,则根据k-means聚类方法,对所述网络未知类别入侵数据进行聚类,获取所述网络未知类别入侵数据中各类别的聚类质心;根据增量学习法,获取所述网络未知类别入侵数据的网络入侵类别对应的类均值,以用于对所述训练好的网络入侵检测模型的分类器进行更新,得到更新后的网络入侵检测模型。进一步地,所述根据阈值判别方法,对得到的检测结果进行分析判断,包括:若检测结果距离最近类别均值的欧式距离大于对应的预设阈值,则判断获知所述待检测网络数据为网络未知类别入侵数据;若检测结果距离最近类别均值的欧式距离小于等于对应的预设阈值,则判断获知所述待检测网络数据为网络已知数据,并通过最近类别均值分类器对所述网络已知数据进行细粒度分类。进一步地,在所述根据k-means聚类方法,对所述网络未知类别入侵进行聚类,获取所述网络未知类别入侵数据中各类别的聚类质心之前,所述方法还包括:根据dbscan聚类算法,获取所述网络未知类别入侵数据的最优聚类数,以根据所述最优聚类数和k-means聚类方法对所述网络未知类别入侵数据进行聚类。进一步地,所述fisher损失函数是由网络已知样本数据计算得到的,具体公式为:其中,n表示训练时网络已知样本数据的数量;f(xi)表示第i个网络已知样本数据,在神经网络最后一层全连接层的输出激活向量值;表示第i个网络已知样本数据距离最近的类别质心,λ表示惩罚因子,m表示为训练时已知训练类别的数量,cj,ck分别表示第j,k类的类别质心;所述mmd损失函数是由网络已知样本数据和分布外合成样本网络数据计算得到的,具体公式为:lmmd=lmk-mmd(f(x),f(xs));其中,x,xs分别表示网络已知样本数据和分布外合成样本网络数据,若mmd损失函数为多核mmd损失函数,公式为:其中,γ表示高斯核的带通参数。进一步地,所述根据增量学习法,获取所述网络未知类别入侵数据的网络入侵类别对应的类均值,包括:获取聚类质心,所述聚类质心是通过k-means聚类方法对所述网络未知类别入侵数据进行聚类时得到的;将所述聚类质心作为所述网络未知类别入侵数据的网络入侵类别对应的类均值。第二方面,本发明实施例提供了一种网络入侵检测系统,包括:网络未知入侵检测模块,用于基于训练好的网络入侵检测模型对待检测网络数据进行检测,并对得到的检测结果进行分析判断,若判断获知所述待检测网络数据为网络已知数据,则根据所述检测结果,对所述网络已知数据进行细粒度分类;若判断获知所述待检测网络数据为网络未知类别入侵数据,则对所述网络未知类别入侵数据进行聚类,获取所述网络未知类别入侵数据中各类别的聚类质心;更新模块,用于根据所述网络未知类别入侵数据中各类别的聚类质心,对所述训练好的网络入侵检测模型的分类器进行更新,以根据更新后的网络入侵检测模型对后续待检测网络数据中网络未知类别入侵数据进行入侵检测。第三方面,本发明实施例提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如第一方面所提供的方法的步骤。第四方面,本发明实施例提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如第一方面所提供的方法的步骤。本发明实施例提供的一种网络入侵检测方法及系统,对网络数据中的网络未知类别入侵进行检测,并将检测得到未知入侵进行聚类,通过聚类结果对网络入侵检测模型进行更新,从而实现对网络未知入侵的识别和学习。附图说明为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本发明实施例提供的网络入侵检测方法的流程示意图;图2为本发明实施例提供的网络入侵检测模型的整体结构图;图3为本发明实施例提供的开集分类网络模型的训练过程示意图;图4为本发明实施例提供的基于阈值判别方法的示意图;图5为本发明实施例提供的网络入侵检测系统的结构示意图;图6为本发明实施例提供的电子设备结构示意图。具体实施方式为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。ids是处理网络入侵和识别计算机网络流量中的恶意活动的必要安全机制,用于发现、确定和识别信息系统中未授权的使用、复制、更改和破坏,在信息安全技术中发挥着至关重要的作用。在早期的研究中,常采用基于签名匹配的误用检测方法。由于机器学习和深度学习的方法在识别特征方面具有巨大潜力,目前基于机器学习和基于深度学习的入侵检测技术受到了广泛的关注。基于机器学习的入侵检测系统被广泛应用,包括支持向量机,k-最近邻和极限学习机等。近年来,深度学习方法也开始应用于入侵检测领域,包括深度神经网络和长短期记忆网络等。然而,目前用于发现网络未知入侵检测方法,只能实现检测未知网络入侵,而无法对检测到的未知网络入侵进行进一步的发现和学习,使得入侵检测模型可以适应未知入侵可能会持续出现动态开放环境。图1为本发明实施例提供的网络入侵检测方法的流程示意图,如图1所示,本发明实施例提供了一种网络入侵检测方法,包括:步骤101,基于训练好的网络入侵检测模型对待检测网络数据进行检测,并对得到的检测结果进行分析判断,若判断获知所述待检测网络数据为网络已知数据,则根据所述检测结果,对所述网络已知数据进行细粒度分类;若判断获知所述待检测网络数据为网络未知类别入侵数据,则对所述网络未知类别入侵数据进行聚类,获取所述网络未知类别入侵数据中各类别的聚类质心。在本发明实施例中,基于卷积神经网络构建开集分类网络模型(open-setclassificationnetwork,简称ocn),通过该模型和后续的聚类处理,构成网络入侵检测模型,用于检测网络流量数据中的未知入侵,需要说明的是,在本发明实施例中,可对采集到的待检测网络的流量数据进行预处理,从而得到待检测网络数据,以用于后续的网络入侵检测。图2为本发明实施例提供的网络入侵检测模型的整体结构图,可参考图2所示,在本发明实施例中,ocn模型首先对待检测网络数据进行检测,然后根据检测结果进行分析判断,若待检测网络数据中包含有网络入侵,且待检测网络数据的网络入侵属于未知类别入侵时,则通过基于语义嵌入的聚类方法,对网络未知类别入侵数据进行聚类处理,从而获取该网络未知类别入侵数据中各类别的聚类质心。若根据识别结果获取得到待检测网络数据的网络入侵属于已知入侵,即网络已知数据,则可针对该网络已知数据进行细粒化的入侵类别分类。步骤102,根据所述网络未知类别入侵数据中各类别的聚类质心,对所述训练好的网络入侵检测模型的分类器进行更新,以根据更新后的网络入侵检测模型对后续待检测网络数据中网络未知类别入侵数据进行入侵检测。在本发明实施例中,在获取到新的未知入侵类别之后,为了使网络入侵检测模型中的ocn模型学习新的未知入侵类别,可通过基于类别的增量学习方法对ocn模型进行更新。具体地,可参考图2所示,在本发明实施例中,将新的未知入侵类别逐渐添加到一个预训练的分类器中,在不需要重新训练卷积神经网络模型的情况下,实现新未知入侵类别分类的更新。进一步地,在本发明实施例中,采用最近类别均值分类器(nearestclassmeanclassifier,简称ncm)进行类别增量学习,分类器通过简单的计算和更新类均值来适应新的未知入侵类别,从而对网络入侵检测模型进行更新,当下一次进行网络入侵检测时,更新后的网络入侵检测模型将上一次检测得到的网络未知类别入侵判定为网络已知类别入侵进行处理。本发明实施例提供的一种网络入侵检测方法,对网络数据中的网络未知类别入侵进行检测,并将检测得到所有未知入侵进行聚类,通过聚类结果对网络入侵检测模型进行更新,从而实现对网络未知入侵的识别和学习。在上述实施例的基础上,所述训练好的网络入侵检测模型是通过以下步骤得到的:基于卷积神经网络构建待训练的网络入侵检测模型,所述待训练的网络入侵检测模型包括卷积层、最大池化层、完全连接层和最近类别均值分类器;获取训练样本集,所述训练样本集包括网络已知样本数据和分布外合成样本网络数据,所述网络已知样本数据包括网络样本正常数据和网络样本入侵类别数据,所述分布外合成样本网络数据是通过所述网络已知样本数据和样本噪声数据合成得到的;获取预设训练损失函数,所述预设训练损失函数包括fisher损失函数和mmd损失函数,并将所述fisher损失函数、所述mmd损失函数和交叉熵损失函数进行联合优化处理,得到整体训练损失函数;根据所述训练样本集和所述整体训练损失函数,对所述待训练的网络入侵检测模型进行批次训练,得到所述训练好的网络入侵检测模型。在本发明实施例中,首先构建基于卷积神经网络的网络入侵检测模型,使用训练数据预训练模型来初始化模型参数,其中,卷积神经网络中每个卷积层的内核大小固定为3,其步幅设置为1,卷积滤波器的数量依次为16和32,每个卷积层后面连接一个最大池化层,其池化大小为4,步幅为2。然后,将网络已知样本数据和分布外合成样本网络数据输入到模型中,对该模型进行训练,得到训练好的网络入侵检测模型,并通过将待检测的网络数据输入到网络入侵检测模型中进行测试,从而对该模型的检测性能进行测试,在本发明实施例中,将网络已知样本数据和样本噪声数据进行合成,得到分布外合成样本网络数据,将该数据充当网络未知类别的训练数据。具体地,在本发明实施例中,需要对网络入侵检测模型中的ocn网络构建一个用于开集识别的网络特征表示f(·)。为了实现开集识别,通过网络特征表示f(·)实现两个目标:1、在特征嵌入空间中,同一已知训练类别的特征表示相距较近,不同已知类别的特征表示相距较远;2、在特征嵌入空间中,未知类别的特征表示尽可能远离已知类别的特征表示。在本发明实施例中,通过损失函数来实现上述实施例的两个目标,该损失函数分别是fisher损失函数和最大均值差异(maximummeandiscrepancy,简称mmd)损失函数。通过最小化fisher损失函数,使得神经网络学习非线性映射,来实现在特征空间中最大化类间距离(interclassseparation),同时最小化类内距离(interclassspread)的目标,所述fisher损失函数是由网络已知样本数据计算得到的,公式为:其中,n表示训练时网络已知样本数据的数量;f(xi)表示第i个网络已知样本数据,在神经网络最后一层全连接层的输出激活向量值;表示第i个网络已知样本数据距离最近的类别质心,λ表示惩罚因子,m表示为训练时已知训练类别的数量,cj,ck分别表示第j,k类的类别质心。为了满足特征嵌入空间中网络入侵未知类别样本的特征表示尽可能远离网络已知训练类别样本的特征表示的目标,需要最小化网络入侵未知类别样本和网络已知样本类别数据在特征嵌入空间的分布距离。在本发明实施例中,由于网络入侵未知类别样本无法通过训练集直接获得,因此,需要通过合成分布外数据的方式,将合成得到的分布外合成样本网络数据的知识迁移到网络入侵未知类别样本的识别上。在本发明实施例中,通过在网络已知样本数据中加入样本噪声数据,从而得到合成分布外数据,即分布外合成样本网络数据,公式为:xs=x+ε;其中,xs表示分布外合成样本网络数据,x表示网络已知样本数据,ε表示样本噪声数据。进一步地,mmd损失函数用于衡量两个分布之间的差异,通过最大化mmd损失,实现最大化分布外合成样本网络数据和网络已知样本数据的分布差异目标,mmd损失函数公式为:lmmd=lmk-mmd(f(x),f(xs));其中,x,xs分别表示网络已知样本数据和分布外合成样本网络数据,在本发明实施例中,通过多核mmd损失函数来计算分布,公式为:其中,γ表示高斯核的带通参数。进一步地,图3为本发明实施例提供的开集分类网络模型的训练过程示意图,可参考图3所示,在本发明实施例中,基于上述各实施例的方法,获取fisher损失函数和mmd损失函数;然后,将所述fisher损失函数、所述mmd损失函数和交叉熵损失函数进行联合优化处理,得到整体损失函数,公式为:l=lcross+αlfisher+βlmmd;其中,α和β表示惩罚因子,均以[0,1]作为界限,来控制fisher损失和mmd损失,lcross表示交叉熵损失函数。在本发明实施例中,联合fisher损失函数、mmd损失函数和交叉熵损失函数对损失函数进行优化,使得更利于ocn网络的特征表示。具体地,在本发明实施例中,ocn网络学习到的特征表示会使得训练的已知类别样本中同类的样本在特征空间尽可能靠近,即尽可能靠近该类别的均值,而那些越是远离该类别均值的样本,越可能是异于已知类别的未知类别样本。在上述实施例的基础上,在所述根据所述训练样本集和所述整体训练损失函数,对所述待训练的网络入侵检测模型进行批次训练,得到所述训练好的网络入侵检测模型之后,所述方法还包括:通过所述训练好的网络入侵检测模型,对待检测网络数据进行检测,并根据阈值判别方法,对得到的检测结果进行分析判断,若判断获知所述待检测网络数据为网络已知数据,则根据所述检测结果,对所述网络已知数据进行细粒度分类;判断获知所述待检测网络数据为网络未知类别入侵数据,则根据k-means聚类方法,对所述网络未知类别入侵数据进行聚类,获取所述网络未知类别入侵数据中各类别的聚类质心;根据增量学习法,获取所述网络未知类别入侵数据的网络入侵类别对应的类均值,以用于对所述训练好的网络入侵检测模型的分类器进行更新,得到更新后的网络入侵检测模型。进一步地,所述根据阈值判别方法,对得到的检测结果进行分析判断,包括:若检测结果距离最近类别均值的欧式距离大于对应的预设阈值,则判断获知所述待检测网络数据为网络未知类别入侵数据;若检测结果距离最近类别均值的欧式距离小于等于对应的预设阈值,则判断获知所述待检测网络数据为网络已知数据,并通过最近类别均值分类器对所述网络已知数据进行细粒度分类。在本发明实施例中,图4为本发明实施例提供的基于阈值判别方法的示意图,可参考图4所示,基于阈值判别方法来进行(m+1)类的开集识别分类,在对ocn网络模型进行测试时,当测试样本距离最近的类别均值距离大于该类别的预设阈值时,则判定为网络未知类别入侵类别;反之,则将其划分到距离最近的类别均值对应类别中。其中,关于预设阈值的估计,通过对每一类样本距离该类类别均值的距离进行升序排序,取排在第θ%的距离作为该类别的预设阈值,公式为:其中,thresholdk表示样本网络已知训练类别数据相应类别的预设阈值,对于预设阈值的估计,按照升序对给定类别的所有样本到相应类别均值的距离进行排序,然后将θ百分位距离作为给定类别的预设阈值。进一步地,在本发明实施例中,为了避免引入错误分类信息,通过批次训练的方式对ocn网络进行训练。在计算类别质心时,由于只预测正确样本的激活向量值,导致当前批次可能无法计算得到所有类别的质心,为了保证计算当前批次的fisher损失时,能够利用完备的类别质心信息,在进行类别质心计算时,采用滑动平均方式,借助前一批次的类别质心信息来完善当前批次的质心信息,计算公式如下:其中,分别表示当前批次和前一批次的第k类类别质心,δ表示滑动因子。若当前批次无法得到某一类别质心,采用前一批次计算得到的类别质心代替,将滑动因子设置为1.0,进而能使得到的fisher损失能惩罚当前批次中预测错误的样本;若当前批次和前一批次均能得到某一类别质心,将滑动因子设置为0.5,以防止类别质心值受不同批次数据变化的影响。在上述实施例的基础上,在所述根据k-means聚类方法,对所述网络未知类别入侵进行聚类,获取所述网络未知类别入侵数据中各类别的聚类质心之前,所述方法还包括:根据dbscan聚类算法,获取所述网络未知类别入侵数据的最优聚类数,以根据所述最优聚类数和k-means聚类方法对所述网络未知类别入侵进行聚类。在本发明实施例中,在对网络未知类别入侵的语义嵌入进行聚类,以识别未知聚类之前,需要确定最佳聚类数。具体地,通过dbscan聚类算法获取最优聚类数,dbscan聚类算法是基于密度的聚类,在发现任意形状的聚类时获得有效的性能,该聚类算法只需要两个输入参数,即eps参数和minpts参数,并返回估计的聚类数。在本发明实施例中,将网络已知数据的语义嵌入作为验证数据,以确定eps参数和minpts参数的最佳值。然后,将dbscan聚类算法应用于通过ocn网络检测为网络未知类别入侵数据的语义嵌入,从而获得聚类数k。最后,通过k-means聚类法,在聚类数为k的情况下对检测为网络未知类别入侵数据的语义嵌入进行聚类,从而得到该网络未知类别入侵数据的网络入侵类别。在本发明一实施例中,输入网络未知类别入侵数据的语义嵌入对数据z使用dbscan聚类算法,返回最优聚类数量k;在聚类数量为k的情况下,使用k-means聚类算法对数据z进行聚类,得到相应的簇结果,包括簇集中心集μ={μ1,...,μk};返回未知类别数n=k,使得未知簇集质心c′=μ。具体地,在上述实施例的基础上,所述根据增量学习法,获取所述网络未知类别入侵数据的网络入侵类别对应的类均值,包括:获取聚类质心,所述聚类质心是通过k-means聚类方法对所述网络未知类别入侵进行聚类时得到的;将所述聚类质心作为所述网络未知类别入侵数据的网络入侵类别对应的类均值。在本发明实施例中,基于语义嵌入聚类,获取到的未知入侵类别时,可能存在聚类错误情况,导致无法正确获取未知入侵的所有样本,本发明实施例通过对最近聚类质心进行增量的方法,将未知入侵类别的类均值直接通过聚类得到的未知网络入侵类别对应的聚类质心进行替换,从而使得网络入侵检测模型中的分类器加入新类别质心,从而实现对新类别样本的分类。具体地,在本发明实施例中,通过对最近聚类质心进行增量的方法,根据新的类集群质心c′,计算新的类均值:cm+1=c′;然后,更新类均值集c←c∪{cm+1}和类数目m←m+1,从而对网络入侵检测模型中的分类器进行更新。在本发明一实施例中,通过kddcup’99(kdd)数据集和nsl-kdd数据集来评估了本发明实施例提供的网络入侵检测模型。对于kdd数据集,在开放式协议下,进行细粒度分类的入侵检测,但是某些类型的入侵很少,该类样本不能被视为训练类,因此,选择三个最常见的训练集类别作为已知类:smurf、neptune和normal,将其他常见类别的测试数据集在实验中视为未知类,可参考表1所示。对于nsl-kdd数据集,选择五个最常见的类别作为已知类:normal、neptune、satan、ipsweep和portsweep,选择的未知类可参考表2所示。在对ocn模型进行训练时,将训练批量大小设置为256,通过随机梯度下降算法来优化并更新神经网络,其中动量因子固定为0.9、权重衰减设置为5×10-4。对于不同的数据集,kdd和nsl-kdd的惩罚因子α分别设置为5×10-2×e-5p和10-3×e-5p,其中p通过渐进调度逐渐从0变为1。β在两个数据集上固定为0.01,kdd和nsl-kdd的λ分别设置为2×10-3和10-2。为了评估ocn模型在识别未知入侵时的性能,测试在单个未知入侵加入时,ocn模型在auroc、auprin、auprout和detectionerror这四个指标上的性能,其中,auroc是指受试者工作特征曲线下的面积(areaunderreceiveroperatingcharacteristiccurve,简称auroc),roc曲线显示了真实阳性tpr=tp/(tp+fn)和假阳性率fpr=fp/(fp+tn)之间的关系;auprin(areaunderprecision-recallcurveofin-distributiondata,简称auprin)是指对于分布内数据的精确率-召回率曲线下的面积,其中已知类别数据指定为阳性,精确率和召回率曲线显示精确率(tp/(tp+fp))和召回率(tp/(tp+fn))之间的关系;auprout(areaunderprecision-recallcurveofout-of-distributiondata,简称auprin)是指对于分布外数据的精确率-召回率曲线下的面积,其中未知类别数据指定为阳性;detectionerror是指检测误差,用于测量tpr为95%时的误分类概率。同时,与baseline和odin这两种最新的开集识别方法进行对比,在kdd和nsl-kdd上的测试结果分别显示在表1和表2中。表1为ocn网络和现有两种方法在kdd数据集上的性能对比,由表1可知:表1在kdd数据集上,ocn网络在四个指标上的性能比baseline和odin表现更好,ocn网络在auroc,auprin和auprout的平均值都大于0.95,远高于对比方法的平均值,同时detectionerror的平均值远低于对比方法的平均值。值得一提的是,在识别mailbomb、back和processable这三类未知入侵时,ocn网络在四个指标上达到了最优的性能,auroc,auprin和auprout都达到了1.0,detectionerror为0,说明ocn网络能将这三类未知入侵100%的检测出来,同时不会造成将已知入侵误检测为未知入侵。在识别satan、mscan和httptunnel时,baseline的auprout比ocn网络略高,但是其auprin值却低于ocn网络,这说明baseline在识别出大量的未知入侵时,也造成了将已知类别样本误判成未知入侵。而ocn网络无论在auprout还是在auprin的值都较高,均在0.95以上,除了在识别snmpgeattack上较低以外。为了评估多种类型的未知入侵,从而增加ocn网络的有效性,将θ=99和θ=95百分位距离分别作为kdd和nsl-kdd上给定类别的阈值。表2为ocn网络和现有两种方法在nsl-kdd数据集上的性能对比,由表2可知:表2在表2中,体现了在nsl-kdd数据及当单个未知入侵加入时,各方法在四个指标上的性能。其中,ocn网络在各个指标的平均性能依然比现有方法要更好。虽然baseline在processtable和smurf的表现上比ocn网络更好,但是baseline的在识别各类未知入侵时性能不稳定,尤其在识别warezmaster和apache2时,auroc值甚至低于0.5。进一步地,考虑到当多种未知入侵加入时,利用ocn网络得到的未知入侵检测准确率会下降,尤其是对于nsl-kdd数据集,进而会影响到后续的未知入侵发现和学习。因此,在表1和表2分别随机选取了4种未知入侵用于后续实验,在kdd数据集上选取的四种未知入侵依次是back、satan、apache2和httptunnel,在nsl-kdd上选取的四种未知入侵依次是snmpguess、apache2、warezmaster和processtable。由于后续的未知入侵类别发现是基于多种未知入侵加入的前提,表3为ocn网络在识别多种未知入侵加入时的性能,体现在kdd和nsl-kdd两个数据集下,当分别加入2、3和4种未知入侵时,ocn网络在多种未知入侵加入时的性能,包括(m+1)类整体识别准确率macroacc和对于未知类别检测准确率unknownacc。由表3可知:表3ocn网络对未知类别检测准确率较高,说明未知入侵加入时,ocn网络能将大部分未知入侵识别为未知类别,为后续的未知类别发现和学习提供可行性的基础。并且整体准确率也较高,说明ocn网络对已知类别样本分类的效果也较好。进一步地,为了评估本发明实施例提供的特征嵌入聚类方法用于未知入侵发现的有效性,由表4可知:表4在表4中,体现是使用特征嵌入聚类方法,在加入2、3和4种未知入侵时的聚类结果,n表示得到的未知类别数量,sc表示在选择最优的聚类簇数时的轮廓系数,clusteringacc表示聚类准确率。由表3可知,除了在nsl-kdd上加入4种未知入侵时,该算法确定的未知入侵数量与实际加入未知入侵数量相同,并且聚类准确率较高,说明了特征嵌入聚类方法的有效性。最后,为了评估基于类别的增量学习方法,通过增量最近聚类质心算法在kdd和nsl-kdd上进行了实验,分别记录m+n类整体分类准确率和n类新类别的准确率,由表5可知:表5accuracymacro(m+1)nc(1)macro(m+2)nc(2)macro(m+3)nc(3)macro(m+4)nc(4)kdd0.88210.8800.8430.8780.8000.8770.734nsl-kdd0.8570.9940.8500.8660.8290.7460.6500.590在表5中,除了nsl-kdd上n=4的情况外,增量最近聚类质心算法的(m+n)类整体分类准确率均在0.8以上,且n类新类别的分类准确率超过0.7,证明了该算法在学习新的类以及增量更新模型上的有效性。图5为本发明实施例提供的网络入侵检测系统的结构示意图,如图5所示,本发明实施例提供了一种网络入侵检测系统,包括网络未知入侵检测模块5501和更新模块502,其中,网络未知入侵检测模块501用于用于基于训练好的网络入侵检测模型对待检测网络数据进行检测,并对得到的检测结果进行分析判断,若判断获知所述待检测网络数据为网络已知数据,则根据所述检测结果,对所述网络已知数据进行细粒度分类;若判断获知所述待检测网络数据为网络未知类别入侵数据,则对所述网络未知类别入侵数据进行聚类,获取所述网络未知类别入侵数据中各类别的聚类质心;更新模块502用于根据所述网络未知类别入侵数据中各类别的聚类质心,对所述训练好的网络入侵检测模型的分类器进行更新,以根据更新后的网络入侵检测模型对后续待检测网络数据中网络未知类别入侵数据进行入侵检测。本发明实施例提供的一种网络入侵检测系统,对网络数据中的网络未知类别入侵进行检测,并将检测得到未知入侵进行聚类,通过聚类结果对网络入侵检测模型进行更新,从而实现对网络未知入侵的识别和学习。在上述实施例的基础上,所述系统还包括:构建模块,用于基于卷积神经网络构建待训练的网络入侵检测模型,所述待训练的网络入侵检测模型包括卷积层、最大池化层、完全连接层和最近类别均值分类器;样本获取模块,用于获取训练样本集,所述训练样本集包括网络已知样本数据和分布外合成样本网络数据,所述网络已知样本数据包括网络样本正常数据和网络样本入侵类别数据,所述分布外合成样本网络数据是通过所述网络已知样本数据和样本噪声数据合成得到的;优化模块,用于获取预设训练损失函数,所述预设训练损失函数包括fisher损失函数和mmd损失函数,并将所述fisher损失函数、所述mmd损失函数和交叉熵损失函数进行联合优化处理,得到整体训练损失函数;模型训练模块,用于根据所述训练样本集和所述整体损失函数,对待训练的网络入侵检测模型进行批次训练,得到所述训练好的网络入侵检测模型。本发明实施例提供的系统是用于执行上述各方法实施例的,具体流程和详细内容请参照上述实施例,此处不再赘述。图6为本发明实施例提供的电子设备结构示意图,参照图6,该电子设备可以包括:处理器(processor)601、通信接口(communicationsinterface)602、存储器(memory)603和通信总线604,其中,处理器601,通信接口602,存储器603通过通信总线604完成相互间的通信。处理器601可以调用存储器603中的逻辑指令,以执行如下方法:基于训练好的网络入侵检测模型对待检测网络数据进行检测,并对得到的检测结果进行分析判断,若判断获知所述待检测网络数据为网络已知数据,则根据所述检测结果,对所述网络已知数据进行细粒度分类;若判断获知所述待检测网络数据为网络未知类别入侵数据,则对所述网络未知类别入侵数据进行聚类,获取所述网络未知类别入侵数据中各类别的聚类质心;根据所述网络未知类别入侵数据中各类别的聚类质心,对所述训练好的网络入侵检测模型的分类器进行更新,以根据更新后的网络入侵检测模型对后续待检测网络数据中网络未知类别入侵数据进行入侵检测。此外,上述的存储器603中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。另一方面,本发明实施例还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各实施例提供的网络入侵检测,例如包括:基于训练好的网络入侵检测模型对待检测网络数据进行检测,并对得到的检测结果进行分析判断,若判断获知所述待检测网络数据为网络已知数据,则根据所述检测结果,对所述网络已知数据进行细粒度分类;若判断获知所述待检测网络数据为网络未知类别入侵数据,则对所述网络未知类别入侵数据进行聚类,获取所述网络未知类别入侵数据中各类别的聚类质心;根据所述网络未知类别入侵数据中各类别的聚类质心,对所述训练好的网络入侵检测模型的分类器进行更新,以根据更新后的网络入侵检测模型对后续待检测网络数据中网络未知类别入侵数据进行入侵检测。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如rom/ram、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。当前第1页12当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1