CN114884755B - 一种网络安全防护方法、装置、电子设备及存储介质 - Google Patents
一种网络安全防护方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN114884755B CN114884755B CN202210813270.9A CN202210813270A CN114884755B CN 114884755 B CN114884755 B CN 114884755B CN 202210813270 A CN202210813270 A CN 202210813270A CN 114884755 B CN114884755 B CN 114884755B
- Authority
- CN
- China
- Prior art keywords
- network data
- center
- clustering
- network
- initial
- 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/20—Network architectures or network communication protocols for network security for managing network security; network security policies in general
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/35—Clustering; Classification
-
- 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/23211—Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions with adaptive number of clusters
-
- 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/2413—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on distances to training or reference patterns
- G06F18/24133—Distances to prototypes
- G06F18/24137—Distances to cluster centroïds
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/14—Network analysis or design
- H04L41/142—Network analysis or design using statistical or mathematical methods
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Biology (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Life Sciences & Earth Sciences (AREA)
- Probability & Statistics with Applications (AREA)
- Computer Security & Cryptography (AREA)
- Bioinformatics & Computational Biology (AREA)
- Signal Processing (AREA)
- Algebra (AREA)
- Mathematical Physics (AREA)
- Pure & Applied Mathematics (AREA)
- Mathematical Optimization (AREA)
- Mathematical Analysis (AREA)
- Databases & Information Systems (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种网络安全防护方法、装置、电子设备及存储介质,本发明利用正常网络行为构造网络数据库,并对其进行分类,从而在检测时将待测网络数据与分类结果进行相似度匹配,若匹配成功,则判定为正常数据,若匹配失败,则判定为异常数据;同时,在进行聚类分析时,采用初始聚类处理来确定分类中心,相比于传统的随机选取中心点,本发明的分类中心更加有效以及更具有代表性,且在对网络数据进行分类时,引入聚类距离,其可避免在分类时出现孤立点,由此,即可使最终的分类结果既是最优的聚类中心,且每个聚类中心又包含相似度最高的网络数据,综上所述,本发明在实现对海量复杂多变的网络流量进行动态地检测同时,还能提高检测的准确性。
Description
技术领域
本发明属于网络安全防护技术领域,具体涉及一种网络安全防护方法、装置、电子设备及存储介质。
背景技术
随着计算机网络和通信技术的发展,计算机网络迅速普及,已成为全社会信息共享与交流的重要工具,网络应用在给人们带来无穷便利的同时,网络安全问题日益凸显;目前,为保护网络安全以及抵抗网络入侵,很多技术和设备应运而生,最常见的是防火墙技术和防网络病毒软件,但是这些防护的技术手段大部分还是基于被动的防御策略,严重依赖历史的流量数据库,在应对不断更新的网络入侵手段方面缺乏较为主动的应对措施,从而导致防护效果较差,由此,如何采用更为安全有效的检测技术,并且能够对海量的复杂多变的网络流量进行动态检测,以应对不同的网络攻击也成为了一个急需解决的难题。
发明内容
本发明的目的是提供一种网络安全防护方法、装置、电子设备及存储介质,以解决现有的防火墙技术和防网络病毒软件是基于被动的防御策略,无法应对不断更新的网络入侵手段,从而导致防护效果较差的问题。
为了实现上述目的,本发明采用以下技术方案:
第一方面,本发明提供了一种网络安全防护方法,包括:
步骤a. 获取网络数据集,其中,所述网络数据集中的每条网络数据均不包含网络攻击语句;
步骤b. 在所述网络数据集中随机选取多个网络数据,组成样本数据集;
步骤c. 对所述样本数据集进行初始聚类处理,得到至少一个初始聚类中心;
步骤d. 对于目标数据集中的第r个网络数据,计算所述第r个网络数据与所述至少一个初始聚类中心中的每个初始聚类中心之间的欧几里得距离,并选取值最小的欧几里得距离作为所述第r个网络数据的分类距离,其中,所述目标数据集为去除所述至少一个初始聚类中心后的网络数据集;
步骤e. 判断所述分类距离是否小于聚类距离;
步骤f. 若是,则将所述第r个网络数据分类至目标初始聚类中心,否则,则将所述第r个网络数据作为新增的初始聚类中心,其中,所述目标初始聚类中心为值最小的欧几里得距离对应的初始聚类中心;
步骤g. 将r变为r+1,并重新执行步骤d~f,直至将目标数据集中的所有网络数据分类完毕为止,以得到s个聚类中心以及s个类簇,其中,r从1开始,且s为大于1的正整数;
步骤h. 基于所述s个聚类中心,计算准则函数的函数值,得到第一函数值;
步骤i. 计算所述s个聚类中心中的每个聚类中心内所有网络数据的平均值,并基于每个聚类中心内所有网络数据的平均值得到新的初始聚类中心;
步骤j. 基于新的初始聚类中心,重新执行步骤d~h,以更新s个聚类中心、s个类簇以及第一函数值,得到更新后的s个聚类中心、更新后的s个类簇以及更新后的第一函数值;
步骤k. 判断所述更新后的第一函数值与所述第一函数值是否相等;
若否,则将步骤i中的s个聚类中心替换为更新后的s个聚类中心,并重复执行步骤i~k,直至所述更新后的第一函数值与所述第一函数值相等为止,以便在所述更新后的第一函数值与所述第一函数值相等时,得到s个最终聚类中心以及s个最终类簇;
获取待测网络数据,并计算所述待测网络数据与所述s个最终聚类中心中每个最终聚类中心之间的欧几里得距离,以得到s个检测距离;
在所述s个检测距离中选取值最小的检测距离作为网络检测参数,以及将值最小的检测距离对应的最终类簇作为网络检测类簇;
基于所述网络检测参数以及所述网络检测类簇,对所述待测网络数据进行安全检测,并在安全检测结果为网络入侵时,丢弃所述待测网络数据。
基于上述公开的内容,本发明先利用正常网络数据组成的网络数据集进行聚类分析,从而得到多个正常网络数据类簇以及聚类中心,具体的,是先从网络数据集中随机抽取多个网络数据组成样本数据集,然后对样本数据集进行初始聚类处理,从而得到至少一个初始聚类中心,由此,可从网络数据集中确定出开始分类的中心,以便后续进行网络数据的分类,接着,对于网络数据集中剩余的网络数据,计算每个网络数据与各个初始聚类中心的欧几里得距离,同时,为减少聚类过程中的孤立点,本发明通过引入聚类距离,从而将各个网络数据对应的最小欧几里得距离与该聚类距离进行对比,以便判断是否可进行分类,若小于,则说明二者相似度较高,可将该网络数据分类至最小欧几里得距离对应的初始聚类中心,否则,则说明该网络数据与最接近的类簇都不相似,因此,会将该网络数据作为新的初始聚类中心,按照前述方法,将所有网络数据分类完毕后,即可得到多个聚类中心以及类簇。
同时,为得到最优的聚类类簇以及聚类中心,本发明还基于得到的聚类中心中各个网络数据的均值来确定出新的初始聚类中心,然后不断重复前述分类步骤,并同时引入准则函数,在每次迭代时,基于本次迭代时的聚类中心,计算准则函数值,并判断该函数值与上一次迭代时的函数值是否相同,若相同,则说明分类已收敛,达到最优,此时,则可将迭代结束时对应的聚类类簇以及聚类中心作为最终分类结果,最后,在进行检测时,只需计算待测网络数据与各个最终聚类类簇的欧几里得距离,并选取最小的距离以及最小的距离对应的最终类簇对该待测网络数据进行入侵检测,即可得出检测结果。
通过上述设计,本发明利用正常网络行为构造网络数据库,并对其进行分类,从而在检测时将输入的网络数据与分类结果进行相似度匹配,若匹配成功,则判定为正常数据,若匹配失败,则判定为异常数据;同时,在对网络数据库进行聚类分析时,采用初始聚类处理来确定分类中心,相比于传统的随机选取中心点,本发明的分类中心更加有效、更具有代表性以及更逼近全局最小值,且在对网络数据进行分类时,引入聚类距离,其可避免在分类时出现孤立点,由此,即可使最终的分类结果既是最优的聚类中心,且每个聚类中心又包含相似度最高的网络数据,综上所述,本发明在实现对海量复杂多变的网络流量进行动态地检测同时,还能提高检测的准确性,适用于大规模应用与推广。
在一个可能的设计中,对所述样本数据集进行初始聚类处理,得到至少一个初始聚类中心,包括:
步骤ca. 从所述样本数据集中选取任一网络数据作为第一个初始聚类中心;
步骤cb. 计算样本数据集中去除所述任一网络数据后的每个网络数据与所述第一个初始聚类中心之间的欧几里得距离,并选取欧几里得距离最大的网络数据作为第二个初始聚类中心;
步骤cc. 利用所述第一个初始聚类中心和所述第二个初始聚类中心,组成初始聚类中心集;
步骤cd. 对于目标样本数据集中的第q个网络数据,计算第q个网络数据与所述初始聚类中心集中每个初始聚类中心的欧几里得距离,并将值最小的欧几里得距离作为第q个网络数据的最小分类距离,其中,所述目标样本数据集为去除所述初始聚类中心集内所有初始聚类中心后的样本数据集;
步骤ce. 当q从1轮询至v时,得到v个最小分类距离,其中,v为目标样本数据集中网络数据的总个数,且q和v均为正整数;
步骤cf. 基于所述第一个初始聚类中心和所述第二个初始聚类中心,得到距离阈值;
步骤cg. 在v个最小分类距离中,选取出值最大的最小分类距离,作为聚类划分距离;
步骤ch. 判断所述聚类划分距离是否大于所述距离阈值;
步骤ci. 若是,则将聚类划分距离对应的网络数据作为第三个初始聚类中心,并利用所述第三个初始聚类中心更新所述初始聚类中心集;
使用更新后的初始聚类中心集替换所述初始聚类中心集,并重复执行前述步骤cd~ci,直至所述聚类划分距离小于或等于所述距离阈值为止,以便在所述聚类划分距离小于或等于所述距离阈值时,得到所述至少一个初始聚类中心。
基于上述公开的内容,本发明公开了初始聚类处理的具体过程,由于网络数据库中的数据量较大,为减少运算量,本发明先随机抽取多个网络数据组成样本数据集,然后在样本数据集中随机抽取一个网络数据作为第一个初始聚类中心,接着再计算样本数据集中剩余网络数据与第一个初始聚类中心的欧几里得距离,并将最小的欧几里得距离对应的网络数据作为第二个初始聚类中心,更进一步的,对于第三个初始聚类中心的选取,则先需要利用前两个初始聚类中心组成中心集,然后再计算去除第一和第二个初始聚类中心后的样本数据集中每个网络数据与中心集中各个初始聚类中心的欧几里得距离,并选取每个网络数据最小的距离作为最小分类距离,接着,在多个最小分类距离中选取最大的一个与距离阈值进行对比,若大于,则将值最大的最小分类距离对应的网络数据作为第三个初始聚类中心,并将第三个初始聚类中心加入至初始聚类中心集中,最后,重复前述分类步骤,直至小于距离阈值为止,此时,即可得到至少一个初始聚类中心;通过上述设计,本发明相比于传统的随机选取初始中心点,本发明的初始分类中心更加有效、更具有代表性以及更逼近全局最小值,能够提高分类的准确度。
在一个可能的设计中,基于所述第一个初始聚类中心和所述第二个初始聚类中心,得到距离阈值,包括:
计算所述第一个初始聚类中心与所述第二个初始聚类中心之间的欧几里得距离的平均值,以作为阈值参数;
获取聚类距离权重值,其中,所述聚类距离权重值介于0.6~1之间;
计算所述聚类距离权重值与所述阈值参数之间的乘积,得到所述距离阈值。
在一个可能的设计中,基于所述s个聚类中心,计算准则函数的函数值,得到第一函数值,包括:
按照如下公式,计算所述准则函数的函数值;
上述式(1)中,表示准则函数的函数值,表示聚类中心的总个数,表示第个聚类中心,为第个聚类中心内的任一网络数据,表示第个聚类中心的均值,表示目标数据集中网络数据的总个数,表示目标数据集中的第个网络数据,表示第个网络数据与第个聚类中心之间的欧几里得距离。
在一个可能的设计中,基于所述网络检测参数以及所述网络检测类簇,对所述待测网络数据进行安全检测,包括:
计算所述网络检测类簇中各个网络数据到目标类簇中心之间的欧几里得距离,其中,所述目标类簇中心为所述网络检测类簇的类簇中心;
计算各个网络数据到目标类簇中心之间的欧几里得距离的均值以及标准差;
获取检测权重,并计算所述检测权重与所述标准差的乘积,得到中间值;
求和所述中间值与所述均值,得到检测阈值;
若所述网络检测参数大于所述检测阈值,则判定所述待测网络数据为网络入侵数据。
基于上述公开的内容,本发明公开了安全检测具体过程,即先计算网络检测类簇中各个网络数据到其中心点之间的欧几里得距离,并计算距离的均值以及标准差,然后引入检测权重,并与均值以及标准差相结合,计算出检测阈值,最后,通过判断网络检测参数与检测阈值之间的大小关系,即可得出检测结果,即若网络检测参数大于检测阈值,则说明待测网络数据为网络入侵数据,反之,则说明待测网络数据为正常数据。
在一个可能的设计中,在计算所述待测网络数据与所述s个最终聚类中心中每个最终聚类中心的欧几里得距离前,所述方法还包括:
对所述待测网络数据进行数值化处理,将所述待测网络数据中的符号属性变为数值属性,以得到数值化待测网络数据;
对所述数值化待测网络数据进行预处理,得到预处理后的待测网络数据,以便计算预处理后的待测网络数据与每个最终聚类中心的欧几里得距离。
基于上述公开的内容,本发明在进行距离计算前,对待测网络数据进行数值化处理,从而可将待测网络数据中的符号属性变为数值属性,以便后续进行距离的计算,同时,对数值化后的待测网络数据进行预处理,相当于对待测网络数据进行标准化处理,便于后续进行安全检测。
在一个可能的设计中,对所述数值化待测网络数据进行预处理,包括:
对于所述待测网络数据中的任一属性,判断所述任一属性在所述待测网络数据中是否存在最大值以及最小值;
若是,则按照如下公式(2)对所述任一属性进行预处理,得到任一属性预处理后的属性值,否则,则计算所述待测网络数据中所有属性的平均值和平均绝对误差,并按照如下公式(3)计算所述任一属性预处理后的属性值;
当把所述待测网络数据中的所有属性进行预处理后,得到所述预处理后的待测网络数据。
第二方面,本发明提供了一种网络安全防护装置,包括:
获取单元,用于执行步骤a,其中,步骤a为:获取网络数据集,其中,所述网络数据集中的每条网络数据均不包含网络攻击语句;
数据抽取单元,用于执行步骤b,其中,步骤b为:在所述网络数据集中随机选取多个网络数据,组成样本数据集;
初始聚类单元,用于执行步骤c,其中,步骤c为:对所述样本数据集进行初始聚类处理,得到至少一个初始聚类中心;
距离计算单元,用于执行步骤d,其中,步骤d为:对于目标数据集中的第r个网络数据,计算所述第r个网络数据与所述至少一个初始聚类中心中的每个初始聚类中心之间的欧几里得距离,并选取值最小的欧几里得距离作为所述第r个网络数据的分类距离,其中,所述目标数据集为去除所述至少一个初始聚类中心后的网络数据集;
判断单元,用于执行步骤e,其中,步骤e为:判断所述分类距离是否小于聚类距离;
聚类单元,用于执行步骤f,其中,步骤f为:若是,则将所述第r个网络数据分类至目标初始聚类中心,否则,则将所述第r个网络数据作为新增的初始聚类中心,其中,所述目标初始聚类中心为值最小的欧几里得距离对应的初始聚类中心;
聚类单元,用于执行步骤g,其中,步骤g为:将r变为r+1,并重新执行步骤d~f,直至将目标数据集中的所有网络数据分类完毕为止,以得到s个聚类中心以及s个类簇,其中,r从1开始,且s为大于1的正整数;
聚类单元,用于执行步骤h,其中,步骤h为:基于所述s个聚类中心,计算准则函数的函数值,得到第一函数值;
聚类单元,用于执行步骤i,其中,步骤i为:计算所述s个聚类中心中的每个聚类中心内所有网络数据的平均值,并将每个聚类中心内所有网络数据的平均值作为新的聚类中心;
聚类单元,用于执行步骤j,其中,步骤j为:基于新的初始聚类中心,重新执行步骤d~h,以更新s个聚类中心、s个类簇以及第一函数值,得到更新后的s个聚类中心、更新后的s个类簇以及更新后的第一函数值;
聚类单元,用于执行步骤k,其中,步骤k为:判断所述更新后的第一函数值与所述第一函数值是否相等;
聚类单元,还用于在所述更新后的第一函数值与所述第一函数值不相等时,将步骤i中的s个聚类中心替换为更新后的s个聚类中心,并重复执行步骤i~k,直至所述更新后的第一函数值与所述第一函数值相等为止,以便在所述更新后的第一函数值与所述第一函数值相等时,得到s个最终聚类中心以及s个最终类簇;
计算单元,用于获取待测网络数据,并计算所述待测网络数据与所述s个最终聚类中心中每个最终聚类中心之间的欧几里得距离,以得到s个检测距离;
检测单元,用于在所述s个检测距离中选取值最小的检测距离作为网络检测参数,以及将值最小的检测距离对应的最终类簇作为网络检测类簇;
检测单元,还用于基于所述网络检测参数以及所述网络检测类簇,对所述待测网络数据进行安全检测,并在安全检测结果为网络入侵时,丢弃所述待测网络数据。
第三方面,本发明提供了另一种网络安全防护装置,以装置为电子设备为例,包括依次通信相连的存储器、处理器和收发器,其中,所述存储器用于存储计算机程序,所述收发器用于收发消息,所述处理器用于读取所述计算机程序,执行如第一方面或第一方面中任意一种可能设计的所述网络安全防护方法。
第四方面,本发明提供了一种存储介质,所述存储介质上存储有指令,当所述指令在计算机上运行时,执行如第一方面或第一方面中任意一种可能设计的所述网络安全防护方法。
第五方面,本发明提供了一种包含指令的计算机程序产品,当所述指令在计算机上运行时,使所述计算机执行如第一方面或第一方面中任意一种可能设计的所述网络安全防护方法。
附图说明
图1为本发明提供的网络安全防护方法的步骤流程示意图;
图2为本发明提供的网络安全防护装置的结构示意图;
图3为本发明提供的电子设备的结构示意图。
具体实施方式
下面结合附图及具体实施例来对本发明作进一步阐述。在此需要说明的是,对于这些实施例方式的说明虽然是用于帮助理解本发明,但并不构成对本发明的限定。本文公开的特定结构和功能细节仅用于描述本发明的示例实施例。然而,可用很多备选的形式来体现本发明,并且不应当理解为本发明限制在本文阐述的实施例中。
应当理解,尽管本文可能使用术语第一、第二等等来描述各种单元,但是这些单元不应当受到这些术语的限制。这些术语仅用于区分一个单元和另一个单元。例如可以将第一单元称作第二单元,并且类似地可以将第二单元称作第一单元,同时不脱离本发明的示例实施例的范围。
应当理解,对于本文中可能出现的术语“和/或”,其仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,单独存在B,同时存在A和B三种情况;对于本文中可能出现的术语“/和”,其是描述另一种关联对象关系,表示可以存在两种关系,例如,A/和B,可以表示:单独存在A,单独存在A和B两种情况;另外,对于本文中可能出现的字符“/”,一般表示前后关联对象是一种“或”关系。
实施例
参见图1所示,本实施例第一方面所提供的网络安全防护方法,利用正常网络行为构造网络数据库,并对其进行聚类分析,从而在检测时将输入的网络数据与分类结果进行相似度匹配,若匹配成功,则判定为正常数据,若匹配失败,则判定为异常数据,其中,本实施例所提供的方法可以但不限在网络服务器侧运行,可以理解的,前述执行主体并不构成对本申请实施例的限定,相应的,本方法的运行步骤分为三个阶段,分别为:A1.初始聚类中心确定阶段;A2.聚类分析阶段;A3.网络安全检测阶段,具体的,初始聚类中心确定阶段主要是用于在网络数据集中确定出至少一个网络数据,作为初始聚类中心,以便为后续聚类分析阶段提供迭代聚类起点;聚类分析阶段则是以初始聚类中心确定阶段提供的初始聚类中心进行迭代聚类,从而得到网络数据集的分类结果(包括最终聚类中心以及最终类簇),而网络安全检测阶段则是基于聚类分析阶段的分类结果,来对输入的待测网络数据进行安全防护检测,从而基于检测结果,来执行不同的动作。
下述分别对前述三个阶段进行详细阐述:
首先,举例初始聚类中心确定阶段可以但不限于包括如下步骤a~c。
步骤a. 获取网络数据集,其中,所述网络数据集中的每条网络数据均不包含网络攻击语句;具体应用时,网络数据集中的每条网络数据均为正常数据,而前述网络攻击语句可以但不限于包括:KDDcup99数据集中的异常行为,其中,异常行为包括4个类别,分别为:拒绝服务攻击(denial-of-service,Dos)、扫描攻击(Probe)、远程主机的未授权访问(unauthorized access form a remote machine to a local machine,R2L)和未授权的本地超级用户特权访问(unauthorized access to a loca unprivileged user,U2R ),更进一步的,拒绝服务攻击指攻击者妨碍用户的正常访问所作出的攻击行为,它的攻击针对计算机网络的连通性和宽带,会导致相关网络服务资源和主机处于繁忙状态,使得正常工作无法开展;扫描攻击是端口攻击,其通过端口扫描计算机系统中的漏洞或网络服务器的弱点,从而利用扫描出的漏洞和弱点对系统发起攻击;R2L攻击是指攻击者通过远程控制相关主机或者网络服务器,寻找存在的漏洞,主要的行为是登录目标主机破坏系统的正常工作;U2R攻击是对目标主机或网络服务的权限进行攻击,攻击者通过对主机的漏洞进行分析,来通过漏洞或弱点获取系统的最高操作权限,从而对系统的网络服务器进行非法操作,影响系统的正常工作。
在本实施例中,网络攻击语句则包括前述4种异常行为的数据特征,下述分别列举了前述4种异常行为的部分数据特征,如下述表1所示:
表1
网络攻击语句 | 数据特征 |
DOS攻击 | neptune、Smurf、teardrop、land、syn flood... |
Prone攻击 | nmap、satan、portsweep、mscan、Ipsweep... |
R2L攻击 | Spy、phf、imap、guess_passwd.... |
U2R攻击 | perl、xsnoop、worm、rootkit.... |
由此,本实施例所提供的网络数据集则是利用正常网络数据构建得到的,在得到网络数据集后,即可从该网络数据集确定出至少一个初始聚类中心,以便后续网络数据集中每条网络数据的分类,其中,初始聚类中心确定过程如下述步骤b和步骤c所示。
步骤b. 在所述网络数据集中随机选取多个网络数据,组成样本数据集;具体应用时,由于网络数据集中的数据量非常大,若遍历网络数据集中所有的网络数据,运算量会很大,从而会降低运算速率,因此,本实施例采用随机抽样的方法,从网络数据集中随机抽取多个网络数据,来组成样本数据集,以便在样本数据集中确定出初始聚类中心;更进一步的,举例抽取的网络数据可以但不限于为200,当然,可根据实际使用而具体设定,在此不作限定。
步骤c. 对所述样本数据集进行初始聚类处理,得到至少一个初始聚类中心;具体应用时,本实施例通过对样本数据集进行初始聚类处理来确定出初始中心点(即初始聚类中心),相比于传统的直接从数据集中选取任意多个网络数据作为中心,本实施例所提供的方法可使确定出的初始中心点能够更加有效以及更具有代表性,从而可提高分类的准确度;可选的,举例对样本数据集进行初始聚类处理的过程可以但不限于包括如下步骤ca~cj所示。
步骤ca. 从所述样本数据集中选取任一网络数据作为第一个初始聚类中心;在具体应用时,如一个包含有200个网络数据的样本数据集,若选取的任一网络数据为第100个网络数据,那么第100个网络数据则为第一个初始聚类中心。
在得到第一个初始聚类中心后,即可进行后续初始聚类中心的确定,如下述步骤cb所示。
步骤cb. 计算样本数据集中去除所述任一网络数据后的每个网络数据与所述第一个初始聚类中心之间的欧几里得距离,并选取欧几里得距离最大的网络数据作为第二个初始聚类中心;具体应用时,一个网络数据根据其内部含有的属性,可看作一个多维的特征向量,其中,网络数据的属性包括38个数值型属性以及3个符号型属性,因此,一个网络数据包含有T个属性,该网络数据就是一个T维的向量,所以,即可根据向量之间的距离计算公式,来得出样本数据集中去除任一网络数据后的每个网络数据与第一个初始聚类中心之间的欧几里得距离;更进一步的,为便于欧几里得距离的计算,本实施例在步骤cd前,需要对网络数据集中的所有网络数据进行数值化处理,即将网络数据中的符号型属性进行数值化,从而将符号型属性用数字进行表示,优选的,各个符号型属性对应的数字,可以列表形式预设至网络服务器。
下述给出欧几里得距离的具体计算公式,如下述公式(4)所示:
假设,第一初始聚类中心为一个三维特征向量,具体为(500,1,2),而样本数据集中的第2个网络数据也为一个三维特征向量,具体为(400,2,3),那么二者的欧几里得距离为:,当然,样本数据集中其余各个网络数据与第一初始聚类中心的欧几里得距离计算原理与前述举例相同,于此不再赘述。
假设样本数据集中去除第一初始聚类中心后还剩余199个网络数据,那么根据步骤cb则会得出199个欧几里得距离,而本实施例则是在这199个欧几里得距离中选取最大的一个对应的网络数据作为第二个初始聚类中心。
在得到第一和第二个初始聚类中心后,即可进行下一个初始聚类中心的选取,如下述步骤cc~ci所示。
步骤cc. 利用所述第一个初始聚类中心和所述第二个初始聚类中心,组成初始聚类中心集。
步骤cd. 对于目标样本数据集中的第q个网络数据,计算第q个网络数据与所述初始聚类中心集中每个初始聚类中心的欧几里得距离,并将值最小的欧几里得距离作为第q个网络数据的最小分类距离,其中,所述目标样本数据集为去除所述初始聚类中心集内所有初始聚类中心后的样本数据集。
步骤ce. 当q从1轮询至v时,得到v个最小分类距离,其中,v为目标样本数据集中网络数据的总个数,且q和v均为正整数。
具体应用时,是计算目标样本数据集中每个网络数据与初始聚类中心集中每个初始聚类中心的欧几里得距离,然后对于每个网络数据,将每个网络数据最小的欧几里得距离作为最小分类距离,例如,假设目标样本数据集中共计有198个网络数据,对于第一个网络数据,分别计算第一个网络数据与第一个初始聚类中心的欧几里得距离,以及与第二个初始聚类中心的欧几里得距离,然后,选取二者中最小的作为第一个网络数据的最小分类距离,而当把目标样本数据集中的所有网络数据均遍历完后,即可得到198个最小分类距离。
在得到v个最小分类距离后,即可基于v个最小分类距离进行第三个初始聚类中心的选取,如下述步骤cf~ci所示。
步骤cf. 基于所述第一个初始聚类中心和所述第二个初始聚类中心,得到距离阈值;具体应用时,距离阈值的计算过程如下述步骤cf1~cf3所示。
步骤cf1. 计算所述第一个初始聚类中心与所述第二个初始聚类中心之间的欧几里得距离的平均值,以作为阈值参数;具体应用时,第一个初始聚类中心和第二个初始聚类中心实质为两个网络数据,因此,二者间的欧几里得距离也可使用前述式(4)计算得出,于此不再赘述。
步骤cf2. 获取聚类距离权重值,其中,所述聚类距离权重值介于0.6~1之间;具体应用时,距离距离权重值可以但不限于为0.7。
步骤cf3. 计算所述聚类距离权重值与所述阈值参数之间的乘积,得到所述距离阈值。
由此根据前述步骤cf1~cf3,即可计算得到距离阈值,以便后续基于距离阈值进行第三个初始聚类中心的确定。
在本实施例中,是在v个最小分类距离中,选择出值最大的最小分类距离与该距离阈值进行对比,从而基于对比结果来确定出第三个初始聚类中心,如下述步骤cg、ci和步骤ch所示。
步骤cg. 在v个最小分类距离中,选取出值最大的最小分类距离,作为聚类划分距离。
步骤ch. 判断所述聚类划分距离是否大于所述距离阈值。
步骤ci. 若是,则将聚类划分距离对应的网络数据作为第三个初始聚类中心,并利用所述第三个初始聚类中心更新所述初始聚类中心集;在前述举例的基础上进行阐述,假设198个最小分类距离中,值最大的最小分类距离对应的网络数据为目标样本数据集中的第50个网络数据,那么目标样本数据集中的第50个网络数据则作为第三个初始聚类中心,同时,还会将第50个网络数据加入至初始聚类中心集中,从而得到更新后的初始聚类中心集,以便后续重复前述步骤,来从目标样本数据集中确定出多个初始聚类中心,其中,循环过程如下述步骤cj所示。
步骤cj. 使用更新后的初始聚类中心集替换所述初始聚类中心集,并重复执行前述步骤cd~ci,直至所述聚类划分距离小于或等于所述距离阈值为止,以便在所述聚类划分距离小于或等于所述距离阈值时,得到所述至少一个初始聚类中心。
由此通过前述步骤ca~cj,本发明不再是随机选取初始聚类中心,而是利用各个网络数据与上一个初始聚类中心的欧几里得距离,来不断确定出下一个初始聚类中心,由此,本发明相比于传统的随机选取初始中心点,本发明的初始分类中心更加有效、更具有代表性以及更逼近全局最小值,能够提高分类的准确度。
在网络数据集中确定出至少一个初始聚类中心后,即可进入聚类分析阶段,其中,距离聚类分析阶段可以但不限于包括如下步骤d~l所示。
步骤d. 对于目标数据集中的第r个网络数据,计算所述第r个网络数据与所述至少一个初始聚类中心中的每个初始聚类中心之间的欧几里得距离,并选取值最小的欧几里得距离作为所述第r个网络数据的分类距离,其中,所述目标数据集为去除所述至少一个初始聚类中心后的网络数据集;具体应用时,第r个网络数据与每个初始聚类中心之间的欧几里得距离之间的欧几里得距离也是采用前述式(4)计算得出,在此不再赘述。
在得到第r个网络数据与每个初始聚类中心之间的欧几里得距离后,即可选取值最小的欧几里得距离作为第r个网络数据的分类距离,以便后续将分类距离与聚类距离进行对比,从而根据对比结果来进行该第r个网络数据所属类簇的划分,如下述步骤e和步骤f所示。
步骤e. 判断所述分类距离是否小于聚类距离;具体应用时,聚类距离的计算过程可以但不限于为:第一步:计算至少一个初始聚类中心中任一初始聚类中心,与其余各个初始聚类中心之间的欧几里得距离,得到多个类簇半径;第二步:计算多个类簇半径的总和,并取总和的平均值,得到所述聚类距离。
步骤f. 若是,则将所述第r个网络数据分类至目标初始聚类中心,否则,则将所述第r个网络数据作为新增的初始聚类中心,其中,所述目标初始聚类中心为值最小的欧几里得距离对应的初始聚类中心;具体应用时,若分类距离小于聚类距离,则说明满足分类的平均类簇半径,此时,则可将第r个网络数据分类至最小的欧几里得距离对应的初始聚类中心,否则,则说明不满足分类的平均类簇半径,此时,则需要将第r个网络数据作为新增的初始聚类中心。
在完成第r个网络数据的分类后,即可进行目标数据集中下一网络数据的分类,如下述步骤g所示。
步骤g. 将r变为r+1,并重新执行步骤d~f,直至将目标数据集中的所有网络数据分类完毕为止,以得到s个聚类中心以及s个类簇,其中,r从1开始,且s为大于1的正整数;具体应用时,对于目标数据集中的其余网络数据,其分类过程可参见前述步骤d~f,并以此循环,直至将目标数据集中的所有网络数据分类完毕为止,此时,即可完成目标样本数据集的一次分类,从而得到s个聚类中心,以及s个聚类中心对应的类簇。
在本实施例中,为保证得到最优的聚类中心以及类簇,还需要进行不断的迭代分类,直至达到迭代结束条件时为止,其中,迭代过程如下述步骤h~l所示。
步骤h. 基于所述s个聚类中心,计算准则函数的函数值,得到第一函数值;具体应用时,采用如下公式(1),计算得到准则函数的函数值:
上述式(1)中,表示准则函数的函数值,表示聚类中心的总个数,表示第个聚类中心,为第个聚类中心内的任一网络数据,表示第个聚类中心的均值,表示目标数据集中网络数据的总个数,表示目标数据集中的第个网络数据,表示第个网络数据与第个聚类中心之间的欧几里得距离。
由此通过前述步骤,相当于在每迭代一次,得到新的聚类中心后,均会基于新的聚类中心来计算准则函数的函数值,以便后基于准则函数的函数值来判断迭代是否结束。
在完成目标数据集的第一次分类后,即可进行第二次分类,如下述步骤i~l所示。
步骤i. 计算所述s个聚类中心中的每个聚类中心内所有网络数据的平均值,并基于每个聚类中心内所有网络数据的平均值得到新的初始聚类中心;具体应用时,任一聚类中心内所有网络数据的平均值是指该任一聚类中心内所有网络数据与该任一聚类中心之间的欧几里得距离的平均值,同时,可将各个网络数据与该任一聚类中心之间的欧几里得距离,与平均值进行比较,将与平均值之间差值最小的欧几里得距离对应的网络数据,作为新的初始聚类中心;当然,其余各个聚类中心对应的新的聚类中心获取原理与前述举例一致,于此不在赘述。
步骤j. 基于所述新的初始聚类中心,重新执行步骤d~h,以更新s个聚类中心、s个类簇以及第一函数值,得到更新后的s个聚类中心、更新后的s个类簇以及更新后的第一函数值。
步骤k. 判断所述更新后的第一函数值与所述第一函数值是否相等。
步骤l. 若否,则将步骤i中的s个聚类中心替换为更新后的s个聚类中心,并重复执行步骤i~k,直至所述更新后的第一函数值与所述第一函数值相等为止,以便在所述更新后的第一函数值与所述第一函数值相等时,得到s个最终聚类中心以及s个最终类簇。
由此通过前述步骤i~l,本发明通过对比当前迭代时计算得到的准则函数的函数值与上一次迭代时得到的函数值是否相同,来判断聚类迭代过程是否结束,如当前迭代所计算得到的函数值与上一次迭代过程中的函数值相同,则说明聚类已达到最优,此时,可结束迭代过程,反之,则需要继续迭代,由此,经过步骤i~l,即可得到最优的聚类中心以及类簇,从而提高聚类的准确性,进而达到提高网络安全检测准确度的目的。
在完成对网络数据集的聚类后,即可基于聚类结果来进行网络安全检测,也就是进入网络安全检测阶段,其中,网络安全检测阶段可以但不限于包括如下步骤m~o。
在本实施例中,在计算待测网络数据与各个最终聚类中心的欧几里得距离前,还需要对待测网络进行数值化处理,即将所述待测网络数据中的符号属性变为数值属性,以得到数值化待测网络数据,当然,下述步骤m~o中,均是以数值化待测网络数据为对象进行安全检测;在本实施例中,对待测网络数据进行数值化处理原理与前述网络数据集中的网络数据进行数值化处理原理相同,于此不再赘述。
步骤m. 获取待测网络数据,并计算所述待测网络数据与所述s个最终聚类中心中每个最终聚类中心之间的欧几里得距离,以得到s个检测距离;具体应用时,待测网络数据与各个最终聚类中心之间的欧几里得距离可使用前述式(4)计算得到,在此不再赘述。
步骤n. 在所述s个检测距离中选取值最小的检测距离作为网络检测参数,以及将值最小的检测距离对应的最终类簇作为网络检测类簇。
步骤o. 基于所述网络检测参数以及所述网络检测类簇,对所述待测网络数据进行安全检测,并在安全检测结果为网络入侵时,丢弃所述待测网络数据;具体应用时,安全检测过程如下述步骤o1~o5。
步骤o1. 计算所述网络检测类簇中各个网络数据到目标类簇中心之间的欧几里得距离,其中,所述目标类簇中心为所述网络检测类簇的类簇中心;具体应用时,可根据前述式(4)计算得到各个网络数据到目标类簇中心之间的欧几里得距离,其原理不再赘述。
步骤o2. 计算各个网络数据到目标类簇中心之间的欧几里得距离的均值以及标准差。
步骤o3. 获取检测权重,并计算所述检测权重与所述标准差的乘积,得到中间值;具体应用时,举例检测权重可以但不限于取2.7。
步骤o4. 求和所述中间值与所述均值,得到检测阈值。
步骤o5. 若所述网络检测参数大于所述检测阈值,则判定所述待测网络数据为网络入侵数据。
由此通过前述步骤o1~o5,即可基于待测网络数据对应的网络检测类簇,来计算出检测阈值,并基于网络检测参数与检测阈值之间的大小,来判断待测网络数据是否为网络入侵数据,从而完成网络安全检测。
综上所述,本发明所提供的网络完全防护方法,利用正常网络行为构造网络数据库,并对其进行分类,从而在检测时将输入的网络数据与分类结果进行相似度匹配,若匹配成功,则判定为正常数据,若匹配失败,则判定为异常数据;同时,在对网络数据库进行聚类分析时,采用初始聚类处理来确定分类中心,相比于传统的随机选取中心点,本发明的分类中心更加有效、更具有代表性以及更逼近全局最小值,且在对网络数据进行分类时,引入聚类距离,其可避免在分类时出现孤立点,由此,即可使最终的分类结果既是最优的聚类中心,且每个聚类中心又包含相似度最高的网络数据,综上所述,本发明在实现对海量复杂多变的网络流量进行动态地检测同时,还能提高检测的准确性,适用于大规模应用与推广。
在一个可能的设计中,本实施例第二方面在实施例第一方面基础上进行进一步的优化, 即在对待测网络数据进行数值化处理后,还需对其进行预处理,以便提高距离计算精度,其中,预处理过程如下述步骤S1所示。
步骤S1. 对所述数值化待测网络数据进行预处理,得到预处理后的待测网络数据,以便计算预处理后的待测网络数据与每个最终聚类中心的欧几里得距离;具体应用时,预处理过程是指为将数值化后的待测网络数据进行标准化处理,其中,处理过程如下述步骤S11~S13。
步骤S11. 对于所述待测网络数据中的任一属性,判断所述任一属性在所述待测网络数据中是否存在最大值以及最小值;由于在前述就已阐述,待测网络数据包括数值型属性以及符号型属性,而在将待测网络数据进行数值化后,其符号型属性实质也是用数字来表示,因此,待测网络数据中的每个属性均会对应有一个属性值,那么,对于同一属性存在多个,那么该属性则会存在最大以及最小值;例如,假设待测网络数据存在4个数值型属性(分别为A1、A2、A3和A4)和两个符号型属性(分别为B1和B2),其中,A1、A2和A3属于同一种数值型属性,B1和B2属于同一种符号型属性,且A1、A2和A3对应的属性值分别为:100、30和50,数值化后的符号型属性对应的属性值为:3和2,那么对于数值型属性A1、A2和A3,三者属于同一种数值型属性,那么就在3个数值型属性中寻找最大值,因此,对于数值型属性A1、A2和A3,三者的最大值均为100,最小值均为30,同理,对于符号型属性也是如此,符号型属性B1和B2的最大值均为3,最小值均为2;当然,其余待测网络数据中任一属性的最大值和最小值的判断方法与前述举例一致,于此不在赘述。
步骤S12. 若是,则按照如下公式(2)对所述任一属性进行预处理,得到任一属性预处理后的属性值,否则,则计算所述待测网络数据中所有属性的平均值和平均绝对误差,并按照如下公式(3)计算所述任一属性预处理后的属性值;
在上述举例基础上进行举例,那么数值型属性A1预处理后的属性值为:(100-30)/(100-30)=1,数值型属性A2预处理后的属性值为:(30-30)/(100-30)=0;数值型属性A3预处理后的属性值为:(50-30)/(100-30)=0.29,当然,符号型属性预处理后的属性值的计算过程与前述举例一致,于此不再赘述。
而对于数值型属性A4,其数量只有一个,不存在最大值和最小值,因此,则需要计算所述待测网络数据中所有属性的平均值和平均绝对误差,然后使用公式(3)来计算A4与处理后的属性值,当然,若待测网络数据中所有属性均只存在一个,那么也是按照上述式(3)来计算预处理后的属性值,其原理不再赘述。
步骤S13. 当把所述待测网络数据中的所有属性进行预处理后,得到所述预处理后的待测网络数据。
由此,通过前述步骤S11~S13,即可得到预处理后的待测网络数据,当然,对于预处理后的待测网络数据进行安全检测,其原理与前述步骤m~o一致,于此不再赘述。
如图2所示,本实施例第三方面提供了一种实现实施例第一方面和第二方面中所述的网络安全防护方法的硬件装置,包括:
获取单元,用于执行步骤a,其中,步骤a为:获取网络数据集,其中,所述网络数据集中的每条网络数据均不包含网络攻击语句。
数据抽取单元,用于执行步骤b,其中,步骤b为:在所述网络数据集中随机选取多个网络数据,组成样本数据集。
初始聚类单元,用于执行步骤c,其中,步骤c为:对所述样本数据集进行初始聚类处理,得到至少一个初始聚类中心。
距离计算单元,用于执行步骤d,其中,步骤d为:对于目标数据集中的第r个网络数据,计算所述第r个网络数据与所述至少一个初始聚类中心中的每个初始聚类中心之间的欧几里得距离,并选取值最小的欧几里得距离作为所述第r个网络数据的分类距离,其中,所述目标数据集为去除所述至少一个初始聚类中心后的网络数据集。
判断单元,用于执行步骤e,其中,步骤e为:判断所述分类距离是否小于聚类距离。
聚类单元,用于执行步骤f,其中,步骤f为:若是,则将所述第r个网络数据分类至目标初始聚类中心,否则,则将所述第r个网络数据作为新增的初始聚类中心,其中,所述目标初始聚类中心为值最小的欧几里得距离对应的初始聚类中心。
聚类单元,用于执行步骤g,其中,步骤g为:将r变为r+1,并重新执行步骤d~f,直至将目标数据集中的所有网络数据分类完毕为止,以得到s个聚类中心以及s个类簇,其中,r从1开始,且s为大于1的正整数。
聚类单元,用于执行步骤h,其中,步骤h为:基于所述s个聚类中心,计算准则函数的函数值,得到第一函数值。
聚类单元,用于执行步骤i,其中,步骤i为:计算所述s个聚类中心中的每个聚类中心内所有网络数据的平均值,并将每个聚类中心内所有网络数据的平均值作为新的聚类中心。
聚类单元,用于执行步骤j,其中,步骤j为:基于新的初始聚类中心,重新执行步骤d~h,以更新s个聚类中心、s个类簇以及第一函数值,得到更新后的s个聚类中心、更新后的s个类簇以及更新后的第一函数值。
聚类单元,用于执行步骤k,其中,步骤k为:判断所述更新后的第一函数值与所述第一函数值是否相等。
聚类单元,还用于在所述更新后的第一函数值与所述第一函数值不相等时,将步骤i中的s个聚类中心替换为更新后的s个聚类中心,并重复执行步骤i~k,直至所述更新后的第一函数值与所述第一函数值相等为止,以便在所述更新后的第一函数值与所述第一函数值相等时,得到s个最终聚类中心以及s个最终类簇。
计算单元,用于获取待测网络数据,并计算所述待测网络数据与所述s个最终聚类中心中每个最终聚类中心之间的欧几里得距离,以得到s个检测距离。
检测单元,用于在所述s个检测距离中选取值最小的检测距离作为网络检测参数,以及将值最小的检测距离对应的最终类簇作为网络检测类簇。
检测单元,还用于基于所述网络检测参数以及所述网络检测类簇,对所述待测网络数据进行安全检测,并在安全检测结果为网络入侵时,丢弃所述待测网络数据。
本实施例提供的装置的工作过程、工作细节和技术效果,可以参见实施例第一方面和第二方面,于此不再赘述。
如图3所示,本实施例第四方面提供了另一种网络安全防护装置,以装置为电子设备为例,包括:依次通信相连的存储器、处理器和收发器,其中,所述存储器用于存储计算机程序,所述收发器用于收发消息,所述处理器用于读取所述计算机程序,执行如实施例第一方面和第二方面所述的网络安全防护方法。
具体举例的,所述存储器可以但不限于包括随机存取存储器(random accessmemory,RAM)、只读存储器(Read Only Memory ,ROM)、闪存(Flash Memory)、先进先出存储器(First Input First Output,FIFO)和/或先进后出存储器(First In Last Out,FILO)等等;具体地,处理器可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器可以采用DSP(Digital Signal Processing,数字信号处理)、FPGA(Field-Programmable Gate Array,现场可编程门阵列)、PLA(Programmable Logic Array,可编程逻辑阵列)中的至少一种硬件形式来实现,同时,处理器也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称CPU(Central ProcessingUnit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。
在一些实施例中,处理器可以在集成有GPU(Graphics Processing Unit,图像处理器),GPU用于负责显示屏所需要显示的内容的渲染和绘制,例如,所述处理器可以不限于采用型号为STM32F105系列的微处理器、精简指令集计算机(reduced instruction setcomputer,RISC)微处理器、X86等架构处理器或集成嵌入式神经网络处理器(neural-network processing units,NPU)的处理器;所述收发器可以但不限于为无线保真(WIFI)无线收发器、蓝牙无线收发器、通用分组无线服务技术(General Packet Radio Service,GPRS)无线收发器、紫蜂协议(基于IEEE802.15.4标准的低功耗局域网协议,ZigBee)无线收发器、3G收发器、4G收发器和/或5G收发器等。此外,所述装置还可以但不限于包括有电源模块、显示屏和其它必要的部件。
本实施例提供的电子设备的工作过程、工作细节和技术效果,可以参见实施例第一方面和第二方面,于此不再赘述。
本实施例第五方面提供了一种存储包含有实施例第一方面和第二方面所述的网络安全防护方法的指令的存储介质,即所述存储介质上存储有指令,当所述指令在计算机上运行时,执行如第一方面和第二方面所述的网络安全防护方法。
其中,所述存储介质是指存储数据的载体,可以但不限于包括软盘、光盘、硬盘、闪存、优盘和/或记忆棒(Memory Stick)等,所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。
本实施例提供的存储介质的工作过程、工作细节和技术效果,可以参见实施例第一方面和第二方面,于此不再赘述。
本实施例第六方面提供了一种包含指令的计算机程序产品,当所述指令在计算机上运行时,使所述计算机执行如实施例第一方面和第二方面所述的网络安全防护方法,其中,所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。
最后应说明的是:以上所述仅为本发明的优选实施例而已,并不用于限制本发明的保护范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (9)
1.一种网络安全防护方法,其特征在于,包括:
步骤a. 获取网络数据集,其中,所述网络数据集中的每条网络数据均不包含网络攻击语句;
步骤b. 在所述网络数据集中随机选取多个网络数据,组成样本数据集;
步骤c. 对所述样本数据集进行初始聚类处理,得到至少一个初始聚类中心;
步骤d. 对于目标数据集中的第r个网络数据,计算所述第r个网络数据与所述至少一个初始聚类中心中的每个初始聚类中心之间的欧几里得距离,并选取值最小的欧几里得距离作为所述第r个网络数据的分类距离,其中,所述目标数据集为去除所述至少一个初始聚类中心后的网络数据集;
步骤e. 判断所述分类距离是否小于聚类距离;
步骤f. 若是,则将所述第r个网络数据分类至目标初始聚类中心,否则,则将所述第r个网络数据作为新增的初始聚类中心,其中,所述目标初始聚类中心为值最小的欧几里得距离对应的初始聚类中心;
步骤g. 将r变为r+1,并重新执行步骤d~f,直至将目标数据集中的所有网络数据分类完毕为止,以得到s个聚类中心以及s个类簇,其中,r从1开始,且s为大于1的正整数;
步骤h. 基于所述s个聚类中心,计算准则函数的函数值,得到第一函数值;
步骤i. 计算所述s个聚类中心中的每个聚类中心内所有网络数据的平均值,并基于每个聚类中心内所有网络数据的平均值得到新的初始聚类中心;
步骤j. 基于新的初始聚类中心,重新执行步骤d~h,以更新s个聚类中心、s个类簇以及第一函数值,得到更新后的s个聚类中心、更新后的s个类簇以及更新后的第一函数值;
步骤k. 判断所述更新后的第一函数值与所述第一函数值是否相等;
若否,则将步骤i中的s个聚类中心替换为更新后的s个聚类中心,并重复执行步骤i~k,直至所述更新后的第一函数值与所述第一函数值相等为止,以便在所述更新后的第一函数值与所述第一函数值相等时,得到s个最终聚类中心以及s个最终类簇;
获取待测网络数据,并计算所述待测网络数据与所述s个最终聚类中心中每个最终聚类中心之间的欧几里得距离,以得到s个检测距离;
在所述s个检测距离中选取值最小的检测距离作为网络检测参数,以及将值最小的检测距离对应的最终类簇作为网络检测类簇;
基于所述网络检测参数以及所述网络检测类簇,对所述待测网络数据进行安全检测,并在安全检测结果为网络入侵时,丢弃所述待测网络数据;
对所述样本数据集进行初始聚类处理,得到至少一个初始聚类中心,包括:
步骤ca. 从所述样本数据集中选取任一网络数据作为第一个初始聚类中心;
步骤cb. 计算样本数据集中去除所述任一网络数据后的每个网络数据与所述第一个初始聚类中心之间的欧几里得距离,并选取欧几里得距离最大的网络数据作为第二个初始聚类中心;
步骤cc. 利用所述第一个初始聚类中心和所述第二个初始聚类中心,组成初始聚类中心集;
步骤cd. 对于目标样本数据集中的第q个网络数据,计算第q个网络数据与所述初始聚类中心集中每个初始聚类中心的欧几里得距离,并将值最小的欧几里得距离作为第q个网络数据的最小分类距离,其中,所述目标样本数据集为去除所述初始聚类中心集内所有初始聚类中心后的样本数据集;
步骤ce. 当q从1轮询至v时,得到v个最小分类距离,其中,v为目标样本数据集中网络数据的总个数,且q和v均为正整数;
步骤cf. 基于所述第一个初始聚类中心和所述第二个初始聚类中心,得到距离阈值;
步骤cg. 在v个最小分类距离中,选取出值最大的最小分类距离,作为聚类划分距离;
步骤ch. 判断所述聚类划分距离是否大于所述距离阈值;
步骤ci. 若是,则将聚类划分距离对应的网络数据作为第三个初始聚类中心,并利用所述第三个初始聚类中心更新所述初始聚类中心集;
使用更新后的初始聚类中心集替换所述初始聚类中心集,并重复执行前述步骤cd~ci,直至所述聚类划分距离小于或等于所述距离阈值为止,以便在所述聚类划分距离小于或等于所述距离阈值时,得到所述至少一个初始聚类中心。
2.如权利要求1所述的方法,其特征在于,基于所述第一个初始聚类中心和所述第二个初始聚类中心,得到距离阈值,包括:
计算所述第一个初始聚类中心与所述第二个初始聚类中心之间的欧几里得距离的平均值,以作为阈值参数;
获取聚类距离权重值,其中,所述聚类距离权重值介于0.6~1之间;
计算所述聚类距离权重值与所述阈值参数之间的乘积,得到所述距离阈值。
4.如权利要求1所述的方法,其特征在于,基于所述网络检测参数以及所述网络检测类簇,对所述待测网络数据进行安全检测,包括:
计算所述网络检测类簇中各个网络数据到目标类簇中心之间的欧几里得距离,其中,所述目标类簇中心为所述网络检测类簇的类簇中心;
计算各个网络数据到目标类簇中心之间的欧几里得距离的均值以及标准差;
获取检测权重,并计算所述检测权重与所述标准差的乘积,得到中间值;
求和所述中间值与所述均值,得到检测阈值;
若所述网络检测参数大于所述检测阈值,则判定所述待测网络数据为网络入侵数据。
5.如权利要求1所述的方法,其特征在于,在计算所述待测网络数据与所述s个最终聚类中心中每个最终聚类中心的欧几里得距离前,所述方法还包括:
对所述待测网络数据进行数值化处理,将所述待测网络数据中的符号属性变为数值属性,以得到数值化待测网络数据;
对所述数值化待测网络数据进行预处理,得到预处理后的待测网络数据,以便计算预处理后的待测网络数据与每个最终聚类中心的欧几里得距离。
6.如权利要求5所述的方法,其特征在于,对所述数值化待测网络数据进行预处理,包括:
对于所述待测网络数据中的任一属性,判断所述任一属性在所述待测网络数据中是否存在最大值以及最小值;
若是,则按照如下公式(2)对所述任一属性进行预处理,得到任一属性预处理后的属性值,否则,则计算所述待测网络数据中所有属性的平均值和平均绝对误差,并按照如下公式(3)计算所述任一属性预处理后的属性值;
当把所述待测网络数据中的所有属性进行预处理后,得到所述预处理后的待测网络数据。
7.一种网络安全防护装置,其特征在于,包括:
获取单元,用于执行步骤a,其中,步骤a为:获取网络数据集,其中,所述网络数据集中的每条网络数据均不包含网络攻击语句;
数据抽取单元,用于执行步骤b,其中,步骤b为:在所述网络数据集中随机选取多个网络数据,组成样本数据集;
初始聚类单元,用于执行步骤c,其中,步骤c为:对所述样本数据集进行初始聚类处理,得到至少一个初始聚类中心;
距离计算单元,用于执行步骤d,其中,步骤d为:对于目标数据集中的第r个网络数据,计算所述第r个网络数据与所述至少一个初始聚类中心中的每个初始聚类中心之间的欧几里得距离,并选取值最小的欧几里得距离作为所述第r个网络数据的分类距离,其中,所述目标数据集为去除所述至少一个初始聚类中心后的网络数据集;
判断单元,用于执行步骤e,其中,步骤e为:判断所述分类距离是否小于聚类距离;
聚类单元,用于执行步骤f,其中,步骤f为:若是,则将所述第r个网络数据分类至目标初始聚类中心,否则,则将所述第r个网络数据作为新增的初始聚类中心,其中,所述目标初始聚类中心为值最小的欧几里得距离对应的初始聚类中心;
聚类单元,用于执行步骤g,其中,步骤g为:将r变为r+1,并重新执行步骤d~f,直至将目标数据集中的所有网络数据分类完毕为止,以得到s个聚类中心以及s个类簇,其中,r从1开始,且s为大于1的正整数;
聚类单元,用于执行步骤h,其中,步骤h为:基于所述s个聚类中心,计算准则函数的函数值,得到第一函数值;
聚类单元,用于执行步骤i,其中,步骤i为:计算所述s个聚类中心中的每个聚类中心内所有网络数据的平均值,并将每个聚类中心内所有网络数据的平均值作为新的聚类中心;
聚类单元,用于执行步骤j,其中,步骤j为:基于新的初始聚类中心,重新执行步骤d~h,以更新s个聚类中心、s个类簇以及第一函数值,得到更新后的s个聚类中心、更新后的s个类簇以及更新后的第一函数值;
聚类单元,用于执行步骤k,其中,步骤k为:判断所述更新后的第一函数值与所述第一函数值是否相等;
聚类单元,还用于在所述更新后的第一函数值与所述第一函数值不相等时,将步骤i中的s个聚类中心替换为更新后的s个聚类中心,并重复执行步骤i~k,直至所述更新后的第一函数值与所述第一函数值相等为止,以便在所述更新后的第一函数值与所述第一函数值相等时,得到s个最终聚类中心以及s个最终类簇;
计算单元,用于获取待测网络数据,并计算所述待测网络数据与所述s个最终聚类中心中每个最终聚类中心之间的欧几里得距离,以得到s个检测距离;
检测单元,用于在所述s个检测距离中选取值最小的检测距离作为网络检测参数,以及将值最小的检测距离对应的最终类簇作为网络检测类簇;
检测单元,还用于基于所述网络检测参数以及所述网络检测类簇,对所述待测网络数据进行安全检测,并在安全检测结果为网络入侵时,丢弃所述待测网络数据;
对所述样本数据集进行初始聚类处理,得到至少一个初始聚类中心,包括:
步骤ca. 从所述样本数据集中选取任一网络数据作为第一个初始聚类中心;
步骤cb. 计算样本数据集中去除所述任一网络数据后的每个网络数据与所述第一个初始聚类中心之间的欧几里得距离,并选取欧几里得距离最大的网络数据作为第二个初始聚类中心;
步骤cc. 利用所述第一个初始聚类中心和所述第二个初始聚类中心,组成初始聚类中心集;
步骤cd. 对于目标样本数据集中的第q个网络数据,计算第q个网络数据与所述初始聚类中心集中每个初始聚类中心的欧几里得距离,并将值最小的欧几里得距离作为第q个网络数据的最小分类距离,其中,所述目标样本数据集为去除所述初始聚类中心集内所有初始聚类中心后的样本数据集;
步骤ce. 当q从1轮询至v时,得到v个最小分类距离,其中,v为目标样本数据集中网络数据的总个数,且q和v均为正整数;
步骤cf. 基于所述第一个初始聚类中心和所述第二个初始聚类中心,得到距离阈值;
步骤cg. 在v个最小分类距离中,选取出值最大的最小分类距离,作为聚类划分距离;
步骤ch. 判断所述聚类划分距离是否大于所述距离阈值;
步骤ci. 若是,则将聚类划分距离对应的网络数据作为第三个初始聚类中心,并利用所述第三个初始聚类中心更新所述初始聚类中心集;
使用更新后的初始聚类中心集替换所述初始聚类中心集,并重复执行前述步骤cd~ci,直至所述聚类划分距离小于或等于所述距离阈值为止,以便在所述聚类划分距离小于或等于所述距离阈值时,得到所述至少一个初始聚类中心。
8.一种电子设备,其特征在于,包括:依次通信相连的存储器、处理器和收发器,其中,所述存储器用于存储计算机程序,所述收发器用于收发消息,所述处理器用于读取所述计算机程序,执行如权利要求1~6任意一项所述的网络安全防护方法。
9.一种存储介质,其特征在于,所述存储介质上存储有指令,当所述指令在计算机上运行时,执行如权利要求1~6任意一项所述的网络安全防护方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210813270.9A CN114884755B (zh) | 2022-07-12 | 2022-07-12 | 一种网络安全防护方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210813270.9A CN114884755B (zh) | 2022-07-12 | 2022-07-12 | 一种网络安全防护方法、装置、电子设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114884755A CN114884755A (zh) | 2022-08-09 |
CN114884755B true CN114884755B (zh) | 2022-09-16 |
Family
ID=82683540
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210813270.9A Active CN114884755B (zh) | 2022-07-12 | 2022-07-12 | 一种网络安全防护方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114884755B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117409200A (zh) * | 2023-10-19 | 2024-01-16 | 重庆科技学院 | 基于聚类分析的岩石矿物组分及孔隙自动分割方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109492022A (zh) * | 2018-09-18 | 2019-03-19 | 南京邮电大学 | 基于语义的改进的k-means算法的搜索方法 |
CN114048468A (zh) * | 2021-11-19 | 2022-02-15 | 北京天融信网络安全技术有限公司 | 入侵检测的方法、入侵检测模型训练的方法、装置及介质 |
-
2022
- 2022-07-12 CN CN202210813270.9A patent/CN114884755B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109492022A (zh) * | 2018-09-18 | 2019-03-19 | 南京邮电大学 | 基于语义的改进的k-means算法的搜索方法 |
CN114048468A (zh) * | 2021-11-19 | 2022-02-15 | 北京天融信网络安全技术有限公司 | 入侵检测的方法、入侵检测模型训练的方法、装置及介质 |
Non-Patent Citations (1)
Title |
---|
基于数据挖掘的网络入侵数据自主防御仿真;张代华等;《计算机仿真》;20201015(第10期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN114884755A (zh) | 2022-08-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Gad et al. | Intrusion detection system using machine learning for vehicular ad hoc networks based on ToN-IoT dataset | |
Karatas et al. | Increasing the performance of machine learning-based IDSs on an imbalanced and up-to-date dataset | |
Tesfahun et al. | Intrusion detection using random forests classifier with SMOTE and feature reduction | |
CN109522716B (zh) | 一种基于时序神经网络的网络入侵检测方法及装置 | |
CN112738015B (zh) | 一种基于可解释卷积神经网络cnn与图检测的多步攻击检测方法 | |
Kumar et al. | Intrusion Detection System using decision tree algorithm | |
De Souza et al. | Two-step ensemble approach for intrusion detection and identification in IoT and fog computing environments | |
Soe et al. | Rule generation for signature based detection systems of cyber attacks in iot environments | |
CN113821793B (zh) | 基于图卷积神经网络的多阶段攻击场景构建方法及系统 | |
Liu et al. | A hybrid IDS using GA-based feature selection method and random forest | |
US11533373B2 (en) | Global iterative clustering algorithm to model entities' behaviors and detect anomalies | |
Raihan-Al-Masud et al. | Network intrusion detection system using voting ensemble machine learning | |
CN114884755B (zh) | 一种网络安全防护方法、装置、电子设备及存储介质 | |
CN110674498B (zh) | 一种基于多维度文件活动的内部威胁检测方法及系统 | |
Mhawi et al. | Proposed Hybrid CorrelationFeatureSelectionForestPanalizedAttribute Approach to advance IDSs | |
CN115022038A (zh) | 一种电网网络异常检测方法、装置、设备及存储介质 | |
Liu et al. | An accuracy network anomaly detection method based on ensemble model | |
Hostiadi et al. | A New Approach Feature Selection for Intrusion Detection System Using Correlation Analysis | |
Bui et al. | A clustering-based shrink autoencoder for detecting anomalies in intrusion detection systems | |
Li et al. | Research of clustering algorithm based on information entropy and frequency sensitive discrepancy metric in anomaly detection | |
CN112804247B (zh) | 基于三元概念分析的工业控制系统网络入侵检测方法及系统 | |
CN114866297A (zh) | 网络数据检测方法、装置、电子设备及存储介质 | |
Jerbi et al. | Immune-based system to enhance malware detection | |
Iftikhar et al. | A supervised feature selection method for malicious intrusions detection in IoT based on genetic algorithm | |
Taylor et al. | A smart system for detecting behavioural botnet attacks using random forest classifier with principal component analysis |
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 |