一种基于对抗模型的网络入侵检测方法及装置与流程

文档序号:18160797发布日期:2019-07-13 09:19阅读:377来源:国知局
一种基于对抗模型的网络入侵检测方法及装置与流程

本发明属于网络行为分析和安全技术领域,尤其为一种基于对抗模型的网络入侵检测方法及装置。



背景技术:

生成对抗网络gan(generativeadversarialnetworks)源于goodfellow团队的研究,是最新的神经网络中的一种。它源自于博弈论中的纳什均衡,gan由两个相互对立的模拟器和检测器组成,主要任务是学习原始数据中的数据关系模型,利用学习到的关系去形成新的数据样本数据集,供给检测器检测,优化参数。由于gan可以最大限度地恢复原始数据的特性,因此在风格迁移等环境中应用十分广泛。

通过纳什博弈数据,我们研究两种网络,一种是生成网络g,另一种是识别网络d,在gan中,g尽量去学习原始数据,试图欺骗d,逃过d的检验,然而d的作用是,尽可能提升自己的检测参数,更好地发现g的欺骗手段,gan的学习过程就是一种竞技成长的过程,其公式表示为:

minmaxv(d,g)=ex~pdata(x)[logd(x)]+ez~pz(z)[log(1-d(g(z)))](1)

其中的v(d,g)为价值函数,从公式来看,表现出了不用公式化描述数据的分布类型,而是直接进行了抽样训练模式,而且gan在理论上达到了可以完全逼近真实数据分布的目的,展现出了gan与其他网络不同的优势。

入侵检测模型是一种主动的网络安全防护技术,在物联网,车联网和区块链等技术快速发展的时代,起着越来越重要的作用。如何从数亿万记的数据流中寻找出异常的行为模式变得至关重要,也已经成为新的入侵检测技术的核心发展方向。入侵检测的基本思路是对网络数据流量特征的分析与研究,建立一个完善的模型,并对不同的动作行为进行分析,完成区分标注。但是基于传统的数据挖掘方法下的入侵检测系统,存在识别率低,速度慢,跟踪不及时的缺点。本发明引入深度学习技术和对抗神经网络概念,建立一个能够对抗学习的检测模型和生成模型,以提高识别的精确度和执行效率。



技术实现要素:

为解决上述背景技术中提出的问题。本发明提供了一种基于对抗模型的网络入侵检测方法及装置,能够作用于网络异常行为入侵检测时,可对网络行为做出判断与预测,分类得到精准的行为标签,并且通过实时跟踪,对被分类为存在异常行为的后续动作实时跟踪,判断模型的准确性,并且通过建立对抗神经网络模型,模拟异常行为的发生,对判断器模型进行不断的优化和改进,达到较高的判断准确率。

为实现上述目的,本发明提供如下技术方案:一种基于对抗模型的网络入侵检测方法,包括以下步骤:

s1、通过大量的数据收集,获取大量的个人上网行为数据,给它们做好标签,分类存放;

s2、数据集的划分真实数据和生成数据两个部分,并对生成的最后模型进行论证比较分析;

s3、对于其中的数据进行清洗和整理,寻找时间序列的关系;

s4、通过生成网络g和判别网络d不断博弈,进而使生成网络g学习到数据的分布,基于检测生成,训练完成后,生成网络g从一段随机行为中生成逼真的网络行为;

s5、将学习的数据,放入模型中,进行训练,调整模型的参数,将两类分类开来,同时,将数据输入模型g中,学习他的模式,不断地对抗训练;

s6、获得一个初步的模型,对于每一个ip地址下的电脑,设立完善的模型,保存并记录,当下次同一个ip地址出现行为时,进行分析学习,检验他的行为是否符合规程。

优选的,在s1中的数据收集收集每个人在不同时段,浏览的网页类型,文件类型,收发文件的数量,浏览的文件密级,拥有的个人权限等级,与外部交流的对方的ip地址。

优选的,在s2中,针对gan生成对抗神经网络的训练部分选取已经分类好的个人数据,包括日志信息,网络数据,用户行为状态。

优选的,网络数据中出现的所有异常状态的变化数据都可能是入侵者留下的信息。

优选的,在s3中,对于确实数据应用平均的方法给与数据,对于其中的奇异数据删去不作处理,防止出现过拟合现象,对于其中的字符类数据应用数值化的方法来处理,将他们构建数据表。

优选的,在s4中,生成网络g为生成式的网络,它接收一个随机的噪声z(随机数),通过这个噪声生成网络动作行为;判别网络d是一个判别网络,判别一个行为是不是“入侵行为”,它的输入参数是x,x代表一个网络行为,输出d(x)代表x为入侵行为的概率。

一种基于对抗模型的网络入侵检测装置,包括针对于个人上网行为数据的收集模块、针对于收集数据进行分类的分类模块、对其中的数据进行清洗和整理的处理模块和训练网络。

与现有技术相比,本发明的有益效果是:能够作用于网络异常行为入侵检测时,可对网络行为做出判断与预测,分类得到精准的行为标签,并且通过实时跟踪,对被分类为存在异常行为的后续动作实时跟踪,判断模型的准确性,并且通过建立对抗神经网络模型,模拟异常行为的发生,对判断器模型进行不断的优化和改进,达到较高的判断准确率。

附图说明

附图用来提供对本发明的进一步理解,并且构成说明书的一部分,与本发明的实施例一起用于解释本发明,并不构成对本发明的限制。在附图中:

图1为本发明的gan神经网络总体思路示意图;

图2为本发明中神经网络训练过程示意图;

图3为本发明中检测的流程图;

图4为本发明中个人画像的建立示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

实施例1

请参阅图1-4,本发明提供以下技术方案:一种基于对抗模型的网络入侵检测方法及装置,包括以下步骤:

s1、通过大量的数据收集,获取大量的个人上网行为数据,给它们做好标签,分类存放;

s2、数据集的划分真实数据和生成数据两个部分,并对生成的最后模型进行论证比较分析;

s3、对于其中的数据进行清洗和整理,寻找时间序列的关系;

s4、通过生成网络g和判别网络d不断博弈,进而使生成网络g学习到数据的分布,基于检测生成,训练完成后,生成网络g从一段随机行为中生成逼真的网络行为;

s5、将学习的数据,放入模型中,进行训练,调整模型的参数,将两类分类开来,同时,将数据输入模型g中,学习他的模式,不断地对抗训练;

s6、获得一个初步的模型,对于每一个ip地址下的电脑,设立完善的模型,保存并记录,当下次同一个ip地址出现行为时,进行分析学习,检验他的行为是否符合规程。。

本实施方案中:

(1)通过大量的数据收集,获取大量的个人上网行为数据,给它们做好标签,分类存放,对于每一个人的数据,进行人物标签制作,主要收集每个人在不同时段,浏览的网页类型,文件类型,收发文件的数量,浏览的文件密级,拥有的个人权限等级,与外部交流的对方的ip地址等信息,对个人简历一个详细的个人画像,为接下来的数据清理打下良好的基础;

(2)数据集的划分考虑到真实数据和生成数据两个部分,并对我们所生成的最后模型进行论证比较分析,因此我们针对gan生成对抗神经网络的训练部分我们选取已经分类好的个人数据,包括日志信息,网络数据,用户行为状态等。网络数据中出现的所有异常状态的变化数据都可能是入侵者留下的信息;

(3)对于其中的数据进行清洗和整理,寻找时间序列的关系。对于确实数据应用平均的方法给与数据,对于其中的奇异数据我们删去不作处理,防止出现过拟合现象。对于其中的字符类数据我们应用数值化的方法来处理,将他们构建数据表;

(4)gan的主要灵感来源于博弈论中零和博弈的思想,应用到深度学习神经网络上来说,就是通过生成网络g(generator)和判别网络d(discriminator)不断博弈,进而使g学习到数据的分布,如果用到检测生成上,则训练完成后,g可以从一段随机行为中生成逼真的网络行为。g,d的主要功能是:

·g是一个生成式的网络,它接收一个随机的噪声z(随机数),通过这个噪声生成网络动作行为;

·d是一个判别网络,判别一个行为是不是“入侵行为”。它的输入参数是x,x代表一个网络行为,输出d(x)代表x为入侵行为的概率,如果为1,就代表100%是真实的入侵行为,而输出为0,就代表不可能是入侵行为;如图1.

训练过程中,生成网络g的目标就是尽量生成真实的入侵行为去欺骗判别网络d。而d的目标就是尽量辨别出g生成的入侵行为和正常行为。这样,g和d构成了一个动态的“博弈过程”,最终的平衡点即纳什均衡点.

对于网络g,要不断的欺骗d,那么就是:

对于d来说就是不断地学习,防止被d欺骗:

判别网络的最优值:

pdata(x)(4)

那么对于每一次训练,g如果固定的话,最优的输出d的值可以认为是

(5)在代码方面,我们应用python中的sklearn库进行算法的制作。调用keras,基于tensorflow来开发研究。

(6)接下来,我们将学习的数据,放入模型中,进行训练,调整模型的参数,将两类分类开来,同时,我们将数据输入模型g中,学习他的模式,不断地对抗训练。

完成模型训练后,我们获得一个初步的模型,对于每一个ip地址下的电脑,设立完善的模型,保存并记录,当下次同一个ip地址出现行为时,进行分析学习,检验他的行为是否符合规程。

本发明的工作原理及使用流程:tensorflow是谷歌发布的一个人工智能系统,是谷歌不断改进过来的产品。它及其强大的灵活度、可移植性、便捷性为人工智能的开发提供了许多有力的先决条件。

1、部署tensorflow,

软硬件配置对于深度学习起着极其重要的作用,本设计实验平台的搭建配置如下表所示。

实验配置表

实验设计:

本文在gan模型的基础上尝试将个人行为数据作为训练数据,并通过分类器性能验证数据的有效性,实验设计如下:

a)特征选取。特征部分主要选用统计特征,包括个人数据、n-gram频率(n=2、3、4、5)、n-gram正态得分(n=2、3、4、5)、行为时间频率和行为习惯。

b)本部分将预处理后的百万级流数据行为习惯生成模型,用于训练和生成类似dga恶意域名样本。在每个网络训练的epoch内(1个epoch等于使用训练集中的全部样本训练一次)生成网络产生出每次训练结束后的生成数据,每次产生bach_size个(批大小)列表数据。

c)混淆数据特征提取。本部分主要是对生成模型生成的数据和划分好的数据集种包括生成数据在内的特征进行部分特征的提取。

d)行为异常负样本集与真实正样本的分类。采用步骤a中的特征对本数据集进行分类,此为后续两次分类结果的对比基准值,也是验证生成数据有效的基准。

e)行为异常负样本集与生成类似真实正样本集的分类。本部分分类同样采用b中的特征进行分类,分类结果与步骤d中的分类结果进行比较,目的是为了验证类似样本可以充当真实变体样本,从而说明生成数据的有效性。

f)行为异常负样本集与真实和生成类似真实样本集的混淆分类。本部分分类同样采用步骤b中的特征进行分类,将分类结果与步骤d中的结果进行对比,此分类是为了说明在真实与生成类似混淆情况下,如果分类器结果良好,那么生成真实数据具备真实数据的特征,验证了生成数据的有效性,同时说明基于gan的神经网络可实现对异常入侵行为的有效预测与检测。。

最后应说明的是:以上所述仅为本发明的优选实施例而已,并不用于限制本发明,尽管参照前述实施例对本发明进行了详细的说明,对于本领域的技术人员来说,其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

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