CN113726785B - 网络入侵检测方法、装置、计算机设备以及存储介质 - Google Patents
网络入侵检测方法、装置、计算机设备以及存储介质 Download PDFInfo
- Publication number
- CN113726785B CN113726785B CN202111013005.4A CN202111013005A CN113726785B CN 113726785 B CN113726785 B CN 113726785B CN 202111013005 A CN202111013005 A CN 202111013005A CN 113726785 B CN113726785 B CN 113726785B
- Authority
- CN
- China
- Prior art keywords
- intrusion detection
- cluster
- data points
- attribute
- classification
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1408—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
- H04L63/1425—Traffic logging, e.g. anomaly detection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/23—Clustering techniques
- G06F18/232—Non-hierarchical techniques
- G06F18/2321—Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions
- G06F18/23213—Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions with fixed number of clusters, e.g. K-means clustering
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
- G06F18/2415—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on parametric or probabilistic models, e.g. based on likelihood ratio or false acceptance rate versus a false rejection rate
- G06F18/24155—Bayesian classification
Landscapes
- Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Evolutionary Computation (AREA)
- General Physics & Mathematics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Biology (AREA)
- Artificial Intelligence (AREA)
- Life Sciences & Earth Sciences (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Probability & Statistics with Applications (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Burglar Alarm Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请实施例属于信息安全技术和人工智能技术领域,涉及一种网络入侵检测方法包括:获取网络数据库中的数据集;采用K‑means聚类算法对所述数据集中的数据点进行聚类;基于皮尔逊相关系数确定每一聚类中数据点的综合特征属性;采用朴素贝叶斯算法对所述综合特征属性进行入侵检测分类。本申请还提供一种网络入侵检测装置、计算机设备及存储介质。此外,本申请还涉及区块链技术,网络数据库中的数据集可存储于区块链中。本申请能够提高网络入侵检测的准确率,降低入侵检测的误报率。
Description
技术领域
本申请涉及信息安全技术领域和人工智能技术领域,尤其涉及一种网络入侵检测方法、装置、计算机设备及存储介质。
背景技术
随着互联网技术的快速发展,网络犯罪变得越来越普及。攻击者对企业的敏感数据越来越感兴趣,大量的入侵检测出现。入侵检测系统(IDS)通过识别计算机上的入侵活动,对异常的情况进行告警。
现有的入侵检测系统分为基于签名的检测和基于异常的检测两大类。其中,基于签名的检测需要经常更新签名库,且无法识别未知的攻击,存在较高的误报率。近些年来流行用机器学习进行基于异常的入侵检测,能识别未知的攻击。其中,基于欧式距离的K-means的聚类算法可检测异常的入侵攻击,但在处理数据时不考虑变量之间的相关性和各变量的重要性差异,因此该算法检测往往会有很多误报,准确率不高。
发明内容
本申请实施例的目的在于提出一种网络入侵检测方法、装置、计算机设备及存储介质,能够解决现有技术中的入侵检测的准确率低以及误报率高的问题。
为了解决上述技术问题,本申请实施例提供一种网络入侵检测方法,所述网络入侵检测方法包括:获取网络数据库中的数据集;采用K-means聚类算法对所述数据集中的数据点进行聚类;基于皮尔逊相关系数确定每一聚类中所述数据点的综合特征属性;采用朴素贝叶斯算法对所述综合特征属性进行入侵检测分类。
进一步的,所述采用K-means聚类算法对所述数据集中的数据进行聚类,包括:随机选择K个初始点作为所述数据集的聚类中心,其中K为大1的整数;计算剩余所述数据点到所述聚类中心的马氏距离;根据所述马氏距离将剩余所述数据点分配至距离最近的所述聚类中心;计算每个聚类中所有所述数据点的均值作为新的聚类中心;根据所述聚类中心计算目标函数值;判断所述目标函数值是否发生变化;若所述目标函数值不变,则所述聚类结束;若所述目标函数值变化,则计算每个聚类中所有所述数据点的均值作为新的聚类中心。
进一步的,所述计算剩余所述数据点到所述聚类中心的马氏距离包括:按以下公式计算剩余所述数据点到所述聚类中心的马氏距离为:
dij=(xi-cj)Tβ(xi-cj)
其中,xi表示所述数据集中剩余所述数据点,cj表示所述聚类中心,dij表示剩余所述数据点xi和所述聚类中心cj的马氏距离,β表示协方差矩阵的逆矩阵。
进一步的,根据所述新的聚类中心计算目标函数值包括:按以下公式计算所述目标函数值:
其中,Ic(β,X)表示聚类的目标函数值,xi表示所述数据集中剩余所述数据点,cj表示聚类的中心,k、n均为正整数。
进一步的,所述基于皮尔逊相关系数确定每一聚类中所述数据点的综合特征属性,包括:提取所述聚类中每一所述数据点的特征属性;计算所述特征属性之间的相关系数;判断所述相关系数是否大于预设阈值;若大于,则将所述相关系数大于预设阈值的所述特征属性进行合并,得到所述综合特征属性。
进一步的,所述采用朴素贝叶斯算法对所述综合特征属性进行入侵检测分类,进一步包括:根据统计数据集确定给定特征属性正常和发生攻击对应的先验概率;结合所述先验概率及朴素贝叶斯分类公式分别计算每一所述聚类中的所述综合特征属性正常和发生攻击的条件概率,从而确定所述综合特征属性的分类。
进一步的,所述朴素贝叶斯分类公式为:
P(A1,A2…An|C)=P(A1|C)P(A2|C)…P(An|C)
所述综合特征属性正常的条件概率为:
所述综合特征属性发生攻击的条件概率为:
其中,A1,A2…An表示所述数据点的综合特征属性集,C表示给定的类,P(A1|C),P(A2|C)……P(An|C)分别表示所述综合特征属性集中的特征属性独立于类C的先验概率,P(A1,A2…An|C)表示以类C为条件的所有所述综合特征属性集的联合概率,C1表示正常和C2表示发生攻击,P(A1|C1)P(A2|C1)…P(An|C1)P(C1)表示所述综合特征属性集中的特征属性正常的先验概率,P(A1|C2)P(A2|C2)…P(An|C2)P(C2)表示所述综合特征属性集中的特征属性发生攻击的先验概率,P(A)表示所述数据点的综合特征属性的概率。
为了解决上述技术问题,本申请实施例还提供一种网络入侵检测装置,所述入侵检测装置包括:获取模块,用于获取网络数据库中的数据集;聚类模块,用于采用K-means聚类算法对所述数据集中的数据点进行聚类;确定模块,用于基于皮尔逊相关系数确定每一聚类中所述数据点的综合特征属性;分类模块,用于采用朴素贝叶斯算法对所述综合特征属性进行入侵检测分类。
为了解决上述技术问题,本申请实施例还提供一种计算机设备,包括存储器和处理器,所述存储器中存储有计算机可读指令,所述处理器执行所述计算机可读指令时实现上述任一项所述的网络入侵检测方法的步骤。
为了解决上述技术问题,本申请实施例还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述任一项所述的网络入侵检测方法的步骤。
与现有技术相比,本申请实施例主要有以下有益效果:
本申请提供了一种网络入侵检测方法、装置、计算机设备及存储介质,通过对获取到的网络数据集中的数据点采用K-means聚类算法进行聚类,基于皮尔逊相关系数对相关系数较大的特征属性合并为一个特征属性,得到满足朴素贝叶斯算法独立性的假设的综合特征属性,再结合朴素贝叶斯分类算法实现综合特征属性的入侵检测分类,且将K-means聚类算法和朴素贝叶斯分类结合进行网络入侵检测,能够提高网络入侵检测的准确率,降低入侵检测的误报率。
附图说明
为了更清楚地说明本申请中的方案,下面将对本申请实施例描述中所需要使用的附图作一个简单介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请可以应用于其中的示例性系统架构图;
图2是本申请网络入侵检测方法一实施方式的流程示意图;
图3是本申请步骤S200一实施方式的流程示意图;
图4是本申请步骤S300一实施方式的流程示意图;
图5是本申请步骤S400一实施方式的流程示意图;
图6是本申请网络入侵检测装置的一个实施例的结构示意图;
图7是本申请的一实施例中聚类模块220的示意图;
图8是本申请的一实施例中确定模块230的示意图;
图9是本申请的一实施例中分类模块240的示意图;
图10是本实施例计算机设备基本结构框图。
具体实施方式
除非另有定义,本文所使用的所有的技术和科学术语与属于本申请的技术领域的技术人员通常理解的含义相同;本文中在申请的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本申请;本申请的说明书和权利要求书及上述附图说明中的术语“包括”和“具有”以及它们的任何变形,意图在于覆盖不排他的包含。本申请的说明书和权利要求书或上述附图中的术语“第一”、“第二”等是用于区别不同对象,而不是用于描述特定顺序。
在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
为了使本技术领域的人员更好地理解本申请方案,下面将结合附图,对本申请实施例中的技术方案进行清楚、完整地描述。
如图1所示,系统架构100可以包括终端设备101、102、103,网络104和服务器105。网络104用以在终端设备101、102、103和服务器105之间提供通信链路的介质。网络104可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
用户可以使用终端设备101、102、103通过网络104与服务器105交互,以接收或发送消息等。终端设备101、102、103上可以安装有各种通讯客户端应用,例如网页浏览器应用、购物类应用、搜索类应用、即时通信工具、邮箱客户端、社交平台软件等。
终端设备101、102、103可以是具有显示屏并且支持网页浏览的各种电子设备,包括但不限于智能手机、平板电脑、电子书阅读器、MP3播放器(Moving Picture ExpertsGroup Audio Layer III,动态影像专家压缩标准音频层面3)、MP4(Moving PictureExperts Group Audio Layer IV,动态影像专家压缩标准音频层面4)播放器、膝上型便携计算机和台式计算机等等。
服务器105可以是提供各种服务的服务器,例如对终端设备101、102、103上显示的页面提供支持的后台服务器。
需要说明的是,本申请实施例所提供的网络入侵检测方法一般由服务器/终端设备执行,相应地,网络入侵检测装置一般设置于服务器/终端设备中。
本申请实施例可以基于人工智能技术对相关的数据进行获取和处理。其中,人工智能(Artificial Intelligence,AI)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。
人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、机器人技术、生物识别技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。
应该理解,图1中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。
图2为本申请网络入侵检测方法一实施方式的流程示意图,如图2,本申请的网络入侵检测方法包括如下步骤:
S100,获取网络数据库中的数据集。
本实施例中,网络入侵检测方法运行于其上的电子设备(例如图1所示的服务器/终端设备)可以通过有线连接方式或者无线连接方式获取网络数据库中的数据集,且本申请中的数据集可以由主机的网络行为数据组成,可以通过主机的日志获取。需要指出的是,上述无线连接方式可以包括但不限于3G/4G连接、WiFi连接、蓝牙连接、WiMAX连接、Zigbee连接、UWB(ultra wideband)连接、以及其他现在已知或将来开发的无线连接方式。
S200,采用K-means聚类算法对数据集中的数据点进行聚类。
可选地,本申请具体实施方式中采用K-means聚类算法对数据集中的数据进行预分类,即将数据集中相似的数据点根据行为(正常/攻击)分为几个聚类,请进一步结合图3,图3为本申请步骤S200一实施方式的流程示意图,如图3,步骤S200进一步包括如下子步骤:
S210,随机选择K个初始点作为数据集的聚类中心,其中K为大1的整数。
可选地,本申请中聚类中心可以在数据集中随机选择K个初始点作为聚类中心,K为大1的整数。当然也可以是给定具体数值作为聚类中心,此处不做具体限定。
S220,计算剩余数据点到聚类中心的马氏距离。
进一步,计算数据集中剩余数据点到上述聚类中心的马氏距离,按以下公式计算剩余数据点到所述聚类中心的马氏距离:
dij=(xi-cj)Tβ(xi-cj)
其中,xi表示所述数据集中剩余所述数据点,cj表示所述聚类中心,dij表示剩余所述数据点xi和所述聚类中心cj的马氏距离,β表示协方差矩阵的逆矩阵。
可以理解的是,本申请实施例中K-means聚类算法采用马氏距离能够弥补基于欧式距离的K-means聚类算法在处理数据时不考虑变量之间的相关性和各变量的重要性差异,能够提高入侵检测的准确率。
S230,根据马氏距离将剩余数据点分配至距离最近的聚类中心。
进一步,根据步骤S220中计算的剩余数据点到聚类中心的马氏距离dij,将剩余数据点分配至距离最近的聚类中心,完成一次迭代。
S240,计算每个聚类中所有数据点的均值作为新的聚类中心。
进一步,在所有数据点完成一次聚类后形成了K个聚类,此时需要再重新计算新的聚类中心。具体地,本申请中将计算每个聚类中所有数据点的均值作为新的聚类中心。
S250,根据新的聚类中心计算目标函数值。
进一步,根据新的聚类中心计算出目标函数值,其中目标函数值和新的聚类中心存在如下关系,每次迭代(也即是聚类)完成后均会计算一新的聚类中心,即聚类中心会发生变化,而目标函数值则是根据新的聚类中心计算的来,所以目标函数值也会跟着聚类中心变化而变化。所以,在判断聚类是否完成时则可以直接通过判断目标函数值是否发生,若目标函数值不发生变化,则聚类中心也不会变化,趋于稳定则聚类完成。
具体地,目标函数值按以下公式计算:
其中,Ic(β,X)表示聚类的目标函数值,xi表示剩余所述数据集中的数据点,cj表示聚类的中心,k、n均为正整数。
S260,判断目标函数值是否发生变化。
可选地,可以通过判断每一次迭代完成后计算得到的目标函数值是否发生来判断聚类是否完成。若判断目标函数值不变则表示聚类完成,则进入步骤S270,可以理解的是,聚类中心的数量K是不变的,但每个聚类中心点会随着迭代不断改变(由于属于每个聚类中心的数据点会发生变化),故当聚类中心不变或者目标函数值不变时,则聚类完成。反之若目标函数值变化,则进入步骤S220计算剩余数据点到新的聚类中心的马氏距离,如此循环迭代至目标函数值不再发生变化。
S270,聚类结束。
可选地,目标函数值不变则表示聚类结束。
S300,基于皮尔逊相关系数确定每一聚类中数据点的综合特征属性。
可以理解的是,因朴素贝叶斯分类是基于特征属性之间强独立性的假设的,但实际的数据并不满足,故本申请通过K-means聚类算法对数据集中的数据点进行预分类后,需要进一步提取每一聚类中的综合特征属性以便满足朴素贝叶斯分类的条件独立性假设,再通过朴素贝叶斯算法根据提取的综合属性确定行为攻击或正常。
请进一步参阅图4,图4为本申请S300一实施方式的流程示意图,如图4所示步骤S300进一步包括如下子步骤:
S310,提取聚类中每一数据点的特征属性。
进一步,提取聚类中每一数据点的特征属性。可以理解的是,每一个聚类中的数据点均包含自己的特征属性。在本申请的具体应用场景中,特征属性可以包括协议类型(tcp/udp/icmp)、目的IP、源IP、连接时间、目标的网络服务(http/telnet)、失败的日志登录数、连接状态标记、源字节数、目标字节数、威胁数以及是否是root账号等等。其中,上述特征属性还可以分为数值型和分类型。
S320,采用皮尔逊相关系数计算各特征属性之间的相关系数。
可选地,本申请实施例中通过计算各特征属性之间的相关系数,能够判断各特征属性之间的相关性。在提取各数据点特征属性后,在进行后续相关性系数计算之前需要进行无量纲化处理,常用的无量纲化处理方法主要极值化、标准化(最常用)、均值化和标准差化方法,此处不做具体限定。
进一步,无量纲化处理方法后采用皮尔逊相关系数计算各特征属性之间的相关系数,其中,皮尔逊相关系数表达如下:
其中,r为皮尔逊相关系数,Xi和Yi对分别表示对应的两个特性属性,表示Xi对应特征属性的平均值,表示Yi对应特征属性的平均值,r值的绝对值介于0~1之间。通常来说,r越接近1,表示Xi和Yi两个特性属性之间的相关程度就越强,反之,r越接近于0,Xi和Yi两个特性属性之间的相关程度就越弱。
S330,判断相关系数是否大于预设阈值。
在具体实施方式中,可以通过设定具体的皮尔逊相关系数r的阈值来进一步判断各特征属性之间的相关性。在本申请一应用场景中,若设置皮尔逊相关系数r的阈值为0.5,当计算出各特征属性之间的相关系数大于或者等于0.5时,表示各特征属性之间的相关性高,则进行步骤S340。反之,若计算出各特征属性之间的相关系数小于0.5,则表示两特征属性之间的相关性不高。
S340,将相关系数大于预设阈值的特征属性进行合并从而得到综合特征属性。
可以理解的是,若计算出的皮尔逊相关系数r大于预设阈值,则将相关系数大于预设阈值的特征属性进行合并,从而得到综合特征属性,进而满足后续的朴素贝叶斯分类算法的独立性。可选地,在本申请一具体实施方式中,若计算出Xi和Yi两个特征属性之间高度相关,则只需要取Xi和Yi两个特征属性之间的任意一个,删除另外一个特征属性。可以理解的是,不同类之间的特征属性不相同,删除的特征属性也可能是不同的,最终保留下的特征属性也可能不相同。
上述实施方式中,通过对聚类后的数据点提取特征属性,并对相关系数较大的特征属性进行合并为一个特征属性(综合特征属性),能够满足朴素贝叶斯算法特征属性独立性的假设。
S400,采用朴素贝叶斯算法对综合特征属性进行入侵检测分类。
可以理解的是,朴素贝叶斯分类算法要求分类对象的特征属性必须有条件独立或基本独立(实际上在现实应用中几乎不可能做到完全独立),本申请中根据K-means聚类算法后得到的综合特征属性满足其特征属性之间强独立性的假设,采用朴素贝叶斯分类算法对上述综合特征属性进行分类,计算其条件概率,确定入侵检测分类。请进一步结合图5,图5为本申请S400一实施方式的流程示意图,如图5所示步骤S400进一步包括如下子步骤:
S410,根据统计数据集确定给定特征属性正常和发生攻击对应的先验概率。
具体地,本申请中统计数据集可以采用KDD Cup99数据集。其中,朴素贝叶斯分类算法基于分类任务的强独立假设给出自变量的条件概率。可选地,可以通过找到一组给定的条件概率来给出每个类的概率。在朴素贝叶斯分类中,根据贝叶斯定理将一组属性或特征分配给一组类,满足:
P(C|A)=P(A|C)P(C)/P(A)
其中,P(C|A)表示后验概率,P(C)表示先验概率,P(A|C)表示给定类的特征属性的概率向量。本申请合并后的特征属性集(即本申请的综合特征属性)为A1,A2…An。可选地,本申请可以通过实验的方法统计给定类的样本数据,从而得到给定类正常或者发生攻击先验概率。当然在其他方式中还可以通过其他方式得到给定类正常或者发生攻击先验概率,此处不做具体限定。
S420,结合先验概率及朴素贝叶斯分类概率公式分别计算每一聚类中的综合特征属性正常和发生攻击的条件概率,从而确定综合特征属性的分类。
进一步,对于P(Ai|Cn)假设特征属性Ai是独立于给定的类Ci,则以C类为条件的所有特征属性集的联合概率是所有独立概率的乘积,则简化的贝叶斯分类公式如下:
P(A1,A2…An|C)=P(A1|C)P(A2|C)…P(An|C)
具体地,A1,A2…An表示所述数据点的综合特征属性集,C表示给定的类,P(A1|C),P(A2|C)……P(An|C)分别表示所述综合特征属性集中的特征属性独立于类C的先验概率,P(A1,A2…An|C)表示以类C为条件的所有所述综合特征属性集的联合概率。
因此,采用贝叶斯分类概率公式可以计算每一所述聚类中的所述综合特征属性发生攻击和正常的条件概率。具体地,将类C分为两类,C1正常和C2攻击。
其中,本申请综合特征属性发生攻击(C2)的条件概率为:
进一步,综合特征属性正常(C1)的条件概率为:
其中,C1表示正常和C2表示发生攻击,P(A1|C1)P(A2|C1)…P(An|C1)P(C1)表示所述综合特征属性集中的特征属性正常的先验概率,P(A1|C2)P(A2|C2)…P(An|C2)P(C2)表示所述综合特征属性集中的特征属性发生攻击的先验概率,P(A)表示所述数据点的综合特征属性的概率。
将综合特征属性发生攻击的条件概率和正常的条件概率进行比较,若判断P(C2|A1,A2,…An)>P(C1|A1,A2,…An),则表示攻击,反之则为正常。
上述实施方式中,通过对获取到的网络数据集中的数据点采用K-means聚类算法进行聚类,基于皮尔逊相关系数对相关系数较大的特征属性合并为一个特征属性,得到满足朴素贝叶斯算法独立性的假设的综合特征属性,再结合朴素贝叶斯分类算法实现综合特征属性的入侵检测分类,且将K-means聚类算法和朴素贝叶斯分类结合进行网络入侵检测,能够提高网络入侵检测的准确率,降低入侵检测的误报率。
需要强调的是,为进一步保证网络入侵检测方法的私密和安全性,上述数据集中的数据还可以存储于一区块链的节点中。
本申请所指区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链(Blockchain),本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。区块链可以包括区块链底层平台、平台产品服务层以及应用服务层等。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机可读指令来指令相关的硬件来完成,该计算机可读指令可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,前述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)等非易失性存储介质,或随机存储记忆体(Random Access Memory,RAM)等。
应该理解的是,虽然附图的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,其可以以其他的顺序执行。而且,附图的流程图中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,其执行顺序也不必然是依次进行,而是可以与其他步骤或者其他步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
结合本申请一实际应用场景,以一主机最近一周内的网络行为为数据集(正常和入侵),将该数据集分为训练集和测试集,测试集中正常的有15572个,攻击的有436个,训练数据正常的有4026个,攻击的有7832个。
定义如下四个异常检测的指标:
TP:当入侵活动被识别为入侵时;
TN:当正常活动被识别为正常行动时;
FP:当正常活动被识别为入侵时;
FN:当入侵活动被识别为正常时;
其中,准确率=(TP+TN)/(TP+TN+FP+FN),检测率=TP/(TP+FP),
误报率=FP/(FP+TN),表格1为分别采用不同算法时计算训练样本和测试样本的结果如下:
表格1为采用不同算法计算训练样本和测试样本的结果
上述实验结果表明,采用本申请基于K-means聚类算法及朴素贝叶斯算法的网络入侵检测方法具有较高的准确率和检测率,且误报相对较少。
进一步参考图6,作为对上述图2所示入侵检测方法的实现,本申请提供了一种网络入侵检测装置的一个实施例,该装置实施例与图2所示的入侵检测方法实施例相对应,该装置具体可以应用于各种电子设备中。
如图6所示,本实施例所述的网络入侵检测装置200包括获取模块210、聚类模块220、确定模块230以及分类模块240。
其中,获取模块210用于获取网络数据库中的数据集;
聚类模块220用于采用K-means聚类算法对所述数据集中的数据点进行聚类;
确定模块230用于基于皮尔逊相关系数确定每一聚类中所述数据点的综合特征属性;
分类模块240用于采用朴素贝叶斯算法对所述综合特征属性进行入侵检测分类。
参阅图7,图7为本申请的一实施例中聚类模块220的示意图。
在本实施例的一些可选的实现方式中,聚类模块220进一步包括选择子模块221、第一计算子模块222、分配子模块223、第二计算子模块224、第三计算子模块225、判断子模块226以及结束子模块227。
其中,选择子模块221用于随机选择K个初始点作为所述数据集的聚类中心,其中K为大1的整数。
第一计算子模块222用于计算剩余所述数据点到所述聚类中心的马氏距离;
分配子模块223用于根据所述马氏距离将剩余所述数据点分配至距离最近的所述聚类中心,其中,按以下公式计算剩余所述数据点到所述聚类中心的马氏距离为:
dij=(xi-cj)Tβ(xi-cj)
其中,xi表示所述数据集中剩余所述数据点,cj表示所述聚类中心,dij表示剩余所述数据点xi和所述聚类中心cj的马氏距离,β表示协方差矩阵的逆矩阵。
第二计算子模块224用于计算每个聚类中所有所述数据点的均值作为新的聚类中心,以及在判断目标函数值变化时计算每个聚类中所有所述数据点的均值作为新的聚类中心。
第三计算子模块225用于根据所述新的聚类中心计算目标函数值,所述目标函数值为:
其中,Ic(β,X)表示聚类的目标函数值,xi表示剩余所述数据集中的数据点,cj表示聚类的中心,k、n均为正整数。
判断子模块226用于判断所述目标函数值是否发生变化。
结束子模块227用于在判断目标函数值不变时,聚类结束。
参阅图8,图8为本申请的一实施例中确定模块230的示意图。
在本实施例的一些可选的实现方式中,确定模块230进一步包括提取子模块231、计算子模块232、判断子模块233以及合并子模块234。
其中,提取子模块231用于提取所述聚类中每一所述数据点的特征属性;
计算子模块232用于采用皮尔逊相关系数计算各所述特征属性之间的相关系数;
判断子模块233用于判断所述相关系数是否大于预设阈值;
合并子模块234用于在判断相关系数大于预设阈值时,将所述相关系数大于预设阈值的所述特征属性进行合并从而得到所述综合特征属性。
可以理解的是,因朴素贝叶斯分类是基于特征属性之间强独立性的假设的,但实际的数据并不满足,故本申请通过K-means聚类算法对数据集中的数据点进行预分类后,需要进一步提取每一聚类中的综合特征属性以便满足朴素贝叶斯分类的条件独立性假设,再通过朴素贝叶斯算法根据提取的综合属性确定行为攻击或正常。
此外,本申请实施例中K-means聚类算法采用马氏距离能够弥补基于欧式距离的K-means聚类算法在处理数据时不考虑变量之间的相关性和各变量的重要性差异,能够提高入侵检测的准确率。
参阅图9,图9是本申请的一实施例中分类模块240的示意图。
在本实施例的一些可选的实现方式中,分类模块240进一步包括确定子模块241以及计算子模块242。
其中,确定子模块241用于根据统计数据集确定给定特征属性数正常和发生攻击对应的先验概率。
计算子模块242用于结合所述先验概率及朴素贝叶斯分类概率公式分别计算每一所述聚类中的所述综合特征属性正常和发生攻击的条件概率,从而确定所述综合特征属性的分类。
其中,朴素贝叶斯分类公式为:
P(A1,A2…An|C)=P(A1|C)P(A2|C)…P(An|C)
综合特征属性正常的条件概率为:
综合特征属性发生攻击的条件概率为:
其中,A1,A2…An表示所述数据点的综合特征属性集,C表示给定的类,P(A1|C),P(A2|C)……P(An|C)分别表示所述综合特征属性集中的特征属性独立于类C的先验概率,P(A1,A2…An|C)表示以类C为条件的所有所述综合特征属性集的联合概率,C1表示正常和C2表示发生攻击,P(A1|C1)P(A2|C1)…P(An|C1)P(C1)表示所述综合特征属性集中的特征属性正常的先验概率,P(A1|C2)P(A2|C2)…P(An|C2)P(C2)表示所述综合特征属性集中的特征属性发生攻击的先验概率,P(A)表示所述数据点的综合特征属性的概率。
上述实施方式中,通过对获取到的网络数据集中的数据点采用K-means聚类算法进行聚类,基于皮尔逊相关系数对相关系数较大的特征属性合并为一个特征属性,得到满足朴素贝叶斯算法独立性的假设的综合特征属性,再结合朴素贝叶斯分类算法实现综合特征属性的入侵检测分类,且将K-means聚类算法和朴素贝叶斯分类结合进行网络入侵检测,能够提高网络入侵检测的准确率,降低入侵检测的误报率。
为解决上述技术问题,本申请实施例还提供计算机设备。具体请参阅图10,图10为本实施例计算机设备基本结构框图。
所述计算机设备300包括通过系统总线相互通信连接存储器301、处理器302、网络接口303。需要指出的是,图10中仅示出了具有组件301-303的计算机设备300,但是应理解的是,并不要求实施所有示出的组件,可以替代的实施更多或者更少的组件。其中,本技术领域技术人员可以理解,这里的计算机设备是一种能够按照事先设定或存储的指令,自动进行数值计算和/或信息处理的设备,其硬件包括但不限于微处理器、专用集成电路(Application Specific Integrated Circuit,ASIC)、可编程门阵列(Field-Programmable Gate Array,FPGA)、数字处理器(Digital Signal Processor,DSP)、嵌入式设备等。
所述计算机设备可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。所述计算机设备可以与用户通过键盘、鼠标、遥控器、触摸板或声控设备等方式进行人机交互。
所述存储器301至少包括一种类型的可读存储介质,所述可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、随机访问存储器(RAM)、静态随机访问存储器(SRAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、可编程只读存储器(PROM)、磁性存储器、磁盘、光盘等。在一些实施例中,所述存储器301可以是所述计算机设备300的内部存储单元,例如该计算机设备300的硬盘或内存。在另一些实施例中,所述存储器301也可以是所述计算机设备300的外部存储设备,例如该计算机设备300上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。当然,所述存储器301还可以既包括所述计算机设备300的内部存储单元也包括其外部存储设备。本实施例中,所述存储器301通常用于存储安装于所述计算机设备300的操作系统和各类应用软件,例如网络入侵检测方法的计算机可读指令等。此外,所述存储器301还可以用于暂时地存储已经输出或者将要输出的各类数据。
所述处理器302在一些实施例中可以是中央处理器(Central Processing Unit,CPU)、控制器、微控制器、微处理器、或其他数据处理芯片。该处理器302通常用于控制所述计算机设备300的总体操作。本实施例中,所述处理器302用于运行所述存储器301中存储的计算机可读指令或者处理数据,例如运行所述网络入侵检测方法的计算机可读指令。
所述网络接口303可包括无线网络接口或有线网络接口,该网络接口303通常用于在所述计算机设备300与其他电子设备之间建立通信连接。
上述实施方式中,通过对获取到的网络数据集中的数据点采用K-means聚类算法进行聚类,基于皮尔逊相关系数对相关系数较大的特征属性合并为一个特征属性,得到满足朴素贝叶斯算法独立性的假设的综合特征属性,再结合朴素贝叶斯分类算法实现综合特征属性的入侵检测分类,且将K-means聚类算法和朴素贝叶斯分类结合进行网络入侵检测,能够提高网络入侵检测的准确率,降低入侵检测的误报率。
本申请还提供了另一种实施方式,即提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机可读指令,所述计算机可读指令可被至少一个处理器执行,以使所述至少一个处理器执行如上述的网络入侵检测方法的步骤。
上述实施方式中,通过对获取到的网络数据集中的数据点采用K-means聚类算法进行聚类,基于皮尔逊相关系数对相关系数较大的特征属性合并为一个特征属性,得到满足朴素贝叶斯算法独立性的假设的综合特征属性,再结合朴素贝叶斯分类算法实现综合特征属性的入侵检测分类,且将K-means聚类算法和朴素贝叶斯分类结合进行网络入侵检测,能够提高网络入侵检测的准确率,降低入侵检测的误报率。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本申请各个实施例所述的方法。
显然,以上所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例,附图中给出了本申请的较佳实施例,但并不限制本申请的专利范围。本申请可以以许多不同的形式来实现,相反地,提供这些实施例的目的是使对本申请的公开内容的理解更加透彻全面。尽管参照前述实施例对本申请进行了详细的说明,对于本领域的技术人员来而言,其依然可以对前述各具体实施方式所记载的技术方案进行修改,或者对其中部分技术特征进行等效替换。凡是利用本申请说明书及附图内容所做的等效结构,直接或间接运用在其他相关的技术领域,均同理在本申请专利保护范围之内。
Claims (8)
1.一种网络入侵检测方法,其特征在于,所述网络入侵检测方法包括:
获取网络数据库中的数据集;
采用K-means聚类算法对所述数据集中的数据点进行聚类;
基于皮尔逊相关系数确定每一聚类中所述数据点的综合特征属性;
采用朴素贝叶斯算法对所述综合特征属性进行入侵检测分类;
所述基于皮尔逊相关系数确定每一聚类中所述数据点的综合特征属性,包括:
提取所述聚类中每一所述数据点的特征属性;
采用皮尔逊相关系数计算各所述特征属性之间的相关系数;
判断所述相关系数是否大于预设阈值;
若大于,则将所述相关系数大于预设阈值的所述特征属性进行合并,得到所述综合特征属性;
所述采用朴素贝叶斯算法对所述综合特征属性进行入侵检测分类,包括:
根据统计数据集确定给定特征属性正常和发生攻击对应的先验概率;
结合所述先验概率及朴素贝叶斯分类公式分别计算每一所述聚类中的所述综合特征属性正常和发生攻击的条件概率,确定所述综合特征属性的分类。
2.根据权利要求1所述的网络入侵检测方法,其特征在于,所述采用K-means聚类算法对所述数据集中的数据进行聚类,包括:
随机选择K个初始点作为所述数据集的聚类中心,其中K为大1的整数;
计算剩余所述数据点到所述聚类中心的马氏距离;
根据所述马氏距离将剩余所述数据点分配至距离最近的所述聚类中心;
计算每个聚类中所有所述数据点的均值作为新的聚类中心;
根据所述新的聚类中心计算目标函数值;
判断所述目标函数值是否发生变化;
若所述目标函数值不变,则所述聚类结束;
若所述目标函数值变化,则计算每个聚类中所有所述数据点的均值作为新的聚类中心。
3.根据权利要求2所述的网络入侵检测方法,其特征在于,所述计算剩余所述数据点到所述聚类中心的马氏距离包括:
按以下公式计算剩余所述数据点到所述聚类中心的马氏距离:
dij=(xi-cj)Tβ(xi-cj)
其中,xi表示所述数据集中剩余所述数据点,cj表示所述聚类中心,dij表示剩余所述数据点xi和所述聚类中心cj的马氏距离,β表示协方差矩阵的逆矩阵。
5.根据权利要求1所述的网络入侵检测方法,其特征在于,所述朴素贝叶斯分类公式为:
P(A1,A2…An|C)=P(A1|C)P(A2|C)…P(An|C)
所述综合特征属性正常的条件概率为:
所述综合特征属性发生攻击的条件概率为:
其中,A1,A2…An表示所述数据点的综合特征属性集,C表示给定的类,P(A1|C),P(A2|C)......P(An|C)分别表示所述综合特征属性集中的特征属性独立于类C的先验概率,P(A1,A2…An|C)表示以类C为条件的所有所述综合特征属性集的联合概率,C1 表示正常和C2 表示发生攻击,P(A1|C1)P(A2|C1)...P(An|C1)P(C1)表示所述综合特征属性集中的特征属性正常的先验概率,P(A1|C2)P(A2|C2)...P(An|C2)P(C2)表示所述综合特征属性集中的特征属性发生攻击的先验概率,P(A)表示所述数据点的综合特征属性的概率。
6.一种网络入侵检测装置,其特征在于,所述网络入侵检测装置包括:
获取模块,用于获取网络数据库中的数据集;
聚类模块,用于采用K-means聚类算法对所述数据集中的数据点进行聚;
确定模块,用于基于皮尔逊相关系数确定每一聚类中所述数据点的综合特征属性;
分类模块,用于采用朴素贝叶斯算法对所述综合特征属性进行入侵检测分类;
所述基于皮尔逊相关系数确定每一聚类中所述数据点的综合特征属性,包括:
提取所述聚类中每一所述数据点的特征属性;
采用皮尔逊相关系数计算各所述特征属性之间的相关系数;
判断所述相关系数是否大于预设阈值;
若大于,则将所述相关系数大于预设阈值的所述特征属性进行合并,得到所述综合特征属性;
所述采用朴素贝叶斯算法对所述综合特征属性进行入侵检测分类,包括:
根据统计数据集确定给定特征属性正常和发生攻击对应的先验概率;
结合所述先验概率及朴素贝叶斯分类公式分别计算每一所述聚类中的所述综合特征属性正常和发生攻击的条件概率,确定所述综合特征属性的分类。
7.一种计算机设备,其特征在于,包括存储器和处理器,所述存储器中存储有计算机可读指令,所述处理器执行所述计算机可读指令时实现如权利要求1至5中任一项所述的网络入侵检测方法的步骤。
8.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至5 中任一项所述的网络入侵检测方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111013005.4A CN113726785B (zh) | 2021-08-31 | 2021-08-31 | 网络入侵检测方法、装置、计算机设备以及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111013005.4A CN113726785B (zh) | 2021-08-31 | 2021-08-31 | 网络入侵检测方法、装置、计算机设备以及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113726785A CN113726785A (zh) | 2021-11-30 |
CN113726785B true CN113726785B (zh) | 2022-11-11 |
Family
ID=78679814
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111013005.4A Active CN113726785B (zh) | 2021-08-31 | 2021-08-31 | 网络入侵检测方法、装置、计算机设备以及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113726785B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105677900A (zh) * | 2016-02-04 | 2016-06-15 | 南京理工大学 | 恶意用户检测方法及装置 |
CN108632278A (zh) * | 2018-05-08 | 2018-10-09 | 北京理工大学 | 一种基于pca与贝叶斯相结合的网络入侵检测方法 |
CN108933785A (zh) * | 2018-06-29 | 2018-12-04 | 平安科技(深圳)有限公司 | 网络风险监控方法、装置、计算机设备及存储介质 |
CN109768985A (zh) * | 2019-01-30 | 2019-05-17 | 电子科技大学 | 一种基于流量可视化与机器学习算法的入侵检测方法 |
-
2021
- 2021-08-31 CN CN202111013005.4A patent/CN113726785B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105677900A (zh) * | 2016-02-04 | 2016-06-15 | 南京理工大学 | 恶意用户检测方法及装置 |
CN108632278A (zh) * | 2018-05-08 | 2018-10-09 | 北京理工大学 | 一种基于pca与贝叶斯相结合的网络入侵检测方法 |
CN108933785A (zh) * | 2018-06-29 | 2018-12-04 | 平安科技(深圳)有限公司 | 网络风险监控方法、装置、计算机设备及存储介质 |
CN109768985A (zh) * | 2019-01-30 | 2019-05-17 | 电子科技大学 | 一种基于流量可视化与机器学习算法的入侵检测方法 |
Non-Patent Citations (1)
Title |
---|
基于权限特征的Android恶意程序检测研究;李雅琳;《中国优秀硕士学位论文全文数据库信息科技辑》;20200115;正文第2-4章 * |
Also Published As
Publication number | Publication date |
---|---|
CN113726785A (zh) | 2021-11-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109271512B (zh) | 舆情评论信息的情感分析方法、装置及存储介质 | |
CN112148987B (zh) | 基于目标对象活跃度的消息推送方法及相关设备 | |
US10547618B2 (en) | Method and apparatus for setting access privilege, server and storage medium | |
CN109634698B (zh) | 菜单显示方法、装置、计算机设备及存储介质 | |
CN108108743B (zh) | 异常用户识别方法和用于识别异常用户的装置 | |
CA3024960A1 (en) | Method,apparatus,and computer-readable medium for detecting anomalous user behavior | |
CN110855648B (zh) | 一种网络攻击的预警控制方法及装置 | |
CN110912908B (zh) | 网络协议异常检测方法、装置、计算机设备和存储介质 | |
CN113435583A (zh) | 基于联邦学习的对抗生成网络模型训练方法及其相关设备 | |
CN112035549B (zh) | 数据挖掘方法、装置、计算机设备及存储介质 | |
CN109495513B (zh) | 无监督的加密恶意流量检测方法、装置、设备及介质 | |
WO2019061664A1 (zh) | 电子装置、基于用户上网数据的产品推荐方法及存储介质 | |
CN112995414B (zh) | 基于语音通话的行为质检方法、装置、设备及存储介质 | |
CN114444619B (zh) | 样本生成方法、训练方法、数据处理方法以及电子设备 | |
CN110659807A (zh) | 一种基于链路的风险用户识别方法及装置 | |
CN113449012A (zh) | 基于大数据预测的互联网服务挖掘方法及大数据预测系统 | |
CN114124460A (zh) | 工控系统入侵检测方法、装置、计算机设备及存储介质 | |
CN112668482A (zh) | 人脸识别训练方法、装置、计算机设备及存储介质 | |
US20170302516A1 (en) | Entity embedding-based anomaly detection for heterogeneous categorical events | |
CN112839055B (zh) | 面向tls加密流量的网络应用识别方法、装置及电子设备 | |
US8918406B2 (en) | Intelligent analysis queue construction | |
CN112801145A (zh) | 安全监测方法、装置、计算机设备及存储介质 | |
CN113726785B (zh) | 网络入侵检测方法、装置、计算机设备以及存储介质 | |
CN115859273A (zh) | 一种数据库异常访问的检测方法、装置、设备及存储介质 | |
CN114092268A (zh) | 用户社群检测方法、装置、计算机设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |