CN114615052A - 一种基于知识编译的入侵检测方法及系统 - Google Patents
一种基于知识编译的入侵检测方法及系统 Download PDFInfo
- Publication number
- CN114615052A CN114615052A CN202210230642.5A CN202210230642A CN114615052A CN 114615052 A CN114615052 A CN 114615052A CN 202210230642 A CN202210230642 A CN 202210230642A CN 114615052 A CN114615052 A CN 114615052A
- Authority
- CN
- China
- Prior art keywords
- network data
- model
- data stream
- intrusion detection
- target
- 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.)
- Pending
Links
- 238000001514 detection method Methods 0.000 title claims abstract description 92
- 238000012549 training Methods 0.000 claims abstract description 55
- 238000000034 method Methods 0.000 claims abstract description 47
- 238000010801 machine learning Methods 0.000 claims abstract description 27
- 238000013507 mapping Methods 0.000 claims abstract description 11
- 230000014509 gene expression Effects 0.000 claims description 37
- 238000003066 decision tree Methods 0.000 claims description 25
- 238000007637 random forest analysis Methods 0.000 claims description 14
- 238000003062 neural network model Methods 0.000 claims description 12
- 238000000926 separation method Methods 0.000 claims description 5
- 238000004364 calculation method Methods 0.000 claims description 3
- 230000001131 transforming effect Effects 0.000 claims 1
- 238000004422 calculation algorithm Methods 0.000 description 4
- 230000002159 abnormal effect Effects 0.000 description 2
- 238000013528 artificial neural network Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 206010063385 Intellectualisation Diseases 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 230000004927 fusion Effects 0.000 description 1
- 230000036039 immunity Effects 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 238000003909 pattern recognition Methods 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- 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/10—Network architectures or network communication protocols for network security for controlling access to devices or network resources
- H04L63/101—Access control lists [ACL]
-
- 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/1416—Event detection, e.g. attack signature detection
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- General Engineering & Computer Science (AREA)
- Computing Systems (AREA)
- Physics & Mathematics (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Computer Hardware Design (AREA)
- Theoretical Computer Science (AREA)
- General Health & Medical Sciences (AREA)
- Software Systems (AREA)
- Molecular Biology (AREA)
- Data Mining & Analysis (AREA)
- Computational Linguistics (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Evolutionary Computation (AREA)
- Biophysics (AREA)
- Biomedical Technology (AREA)
- Artificial Intelligence (AREA)
- Life Sciences & Earth Sciences (AREA)
- Health & Medical Sciences (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种基于知识编译的入侵检测方法及系统,涉及入侵检测领域,所述方法,包括:计算获取到的目标网络数据流的统计值;采用变量离散化规则将目标网络数据流的统计值映射为二进制字符串,得到目标字符串;将目标字符串与白名单规则库进行对比,确定目标网络数据流是否为入侵的网络数据流;变量离散化规则和白名单规则库确定方法为:采用训练网络数据流的统计值对机器学习模型进行训练,得到入侵检测模型;训练网络数据流包括不同入侵的网络数据流和正常的网络数据流;采用知识编译的方法对入侵检测模型进行规则抽取,得到变量离散化规则;对变量离散化规则转化为二进制字符串,得到白名单规则库。本发明能提高入侵检测的准确度。
Description
技术领域
本发明涉及入侵检测领域,特别是涉及一种基于知识编译的入侵检测方法及系统。
背景技术
传统的入侵检测多是利用TCP数据包的包头信息实现,而随着QUIC协议的发展,包头信息是被加密或扰乱的,不能直接拿来作为入侵检测的依据,因此需要使用更加隐秘的信息,如数据流量的统计信息用机器学习来进行模式识别,而现有机器学习模型是黑盒,不可解释、不透明、不可审阅的,在安全性要求很高的入侵检测领域,会大大限制其发展和应用。现有的机器学习可解释方法大都是近似的模拟该模型的决策规则,并不能保证解释的方法可准确反映该模型内部的规则。因此,目前入侵检测的准确度有待提高。
发明内容
基于此,本发明实施例提供一种基于知识编译的入侵检测方法及系统,以提高入侵检测的准确度。
为实现上述目的,本发明提供了如下方案:
一种基于知识编译的入侵检测方法,包括:
获取目标网络数据流;
计算所述目标网络数据流的统计值;
采用变量离散化规则将所述目标网络数据流的统计值映射为二进制字符串,得到目标字符串;
将所述目标字符串与白名单规则库进行对比,确定所述目标网络数据流是否为入侵的网络数据流;
其中,所述变量离散化规则和所述白名单规则库的确定方法为:
采用训练网络数据流的统计值对机器学习模型进行训练,得到入侵检测模型;所述训练网络数据流包括不同入侵的网络数据流和正常的网络数据流;所述入侵检测模型的结构为决策树结构;
采用知识编译的方法对所述入侵检测模型进行规则抽取,得到变量离散化规则;
将所述变量离散化规则转化为二进制字符串,得到白名单规则库。
可选的,所述采用训练网络数据流的统计值对机器学习模型进行训练,得到入侵检测模型,具体包括:
获取训练网络数据流;
计算所述训练网络数据流的统计值;
将所述训练网络数据流的统计值分别输入多个不同类型的机器学习模型中进行训练,并将训练好的模型中准确度最高的模型确定为入侵检测模型。
可选的,所述将所述训练网络数据流的统计值分别输入多个不同类型的机器学习模型中进行训练,并将训练好的模型中准确度最高的模型确定为入侵检测模型,具体包括:
将所述训练网络数据流的统计值分别输入决策树模型、随机森林模型、提升树模型和神经网络模型中进行训练,得到训练好的决策树模型、训练好的随机森林模型、训练好的提升树模型和训练好的神经网络模型;
将所述训练好的决策树模型、所述训练好的随机森林模型、所述训练好的提升树模型和所述训练好的神经网络模型中准确度最高的模型确定为目标模型;
若所述目标模型为所述训练好的随机森林模型、所述训练好的提升树模型和所述训练好的神经网络模型中的任意一个时,将所述目标模型的结构转换为决策树结构,并将转换后的目标模型确定为入侵检测模型;
若所述目标模型为训练好的决策树模型,则将所述目标模型确定为所述入侵检测模型。
可选的,所述采用知识编译的方法对所述入侵检测模型进行规则抽取,得到变量离散化规则,具体包括:
以所述入侵检测模型中各决策点的阈值作为分隔值,将所述训练网络数据流的统计值映射为离散变量;
根据所述离散变量将所述入侵检测模型中的目标决策路径表示为二进制布尔表达式,得到初始布尔表达式;所述目标决策路径为所述入侵检测模型中决策出正常的网络数据流的决策路径;
根据所述初始布尔表达式,将所述离散变量中的连续值融合为一个离散值,得到融合后的离散变量;
将由所述融合后的离散变量确定的二进制布尔表达式,确定为简化后的布尔表达式,并将所述简化后的布尔表达式确定为变量离散化规则。
可选的,所述将所述变量离散化规则转化为二进制字符串,得到白名单规则库,具体包括:
对所述变量离散化规则进行简化,得到最简布尔表达式;
将所述最简布尔表达式转化成二进制字符串,得到白名单规则库。
可选的,所述将所述目标字符串与白名单规则库进行对比,确定所述目标网络数据流是否为入侵的网络数据流,具体包括:
判断白名单规则库中是否存在与所述目标字符串相匹配的二进制字符串;
若是,则确定所述目标网络数据流为正常的网络数据流;
若否,则确定所述目标网络数据流为入侵的网络数据流。
可选的,所述获取目标网络数据流,具体包括:
获取目标网络数据包信息;
按照流元素对所述目标网络数据包信息进行提取,得到目标网络数据流;所述流元素包括:起始ip地址、终点ip地址、起始端口号、终点端口号以及协议。
可选的,所述统计值,包括:流长度、上行的总包数、下行的总包数、包长度的最大值、包长度的最小值、包长度的平均值、包长度的方差、流比特率、包到达时差最小值和不同标签的包数。
本发明还提供了一种基于知识编译的入侵检测系统,包括:
目标数据流获取模块,用于获取目标网络数据流;
统计值计算模块,用于计算所述目标网络数据流的统计值;
离散化模块,用于采用变量离散化规则将所述目标网络数据流的统计值映射为二进制字符串,得到目标字符串;
入侵检测模块,用于将所述目标字符串与白名单规则库进行对比,确定所述目标网络数据流是否为入侵的网络数据流;
其中,所述变量离散化规则和所述白名单规则库的确定方法为:
采用训练网络数据流的统计值对机器学习模型进行训练,得到入侵检测模型;所述训练网络数据流包括不同入侵的网络数据流和正常的网络数据流;所述入侵检测模型的结构为决策树结构;
采用知识编译的方法对所述入侵检测模型进行规则抽取,得到变量离散化规则;
将所述变量离散化规则转化为二进制字符串,得到白名单规则库。
与现有技术相比,本发明的有益效果是:
本发明实施例提出了一种基于知识编译的入侵检测方法及系统,采用训练网络数据流的统计值对机器学习模型进行训练,得到入侵检测模型;采用知识编译的方法对入侵检测模型进行规则抽取,得到变量离散化规则;对变量离散化规则转化为二进制字符串,得到白名单规则库;计算获取到的目标网络数据流的统计值;采用变量离散化规则将目标网络数据流的统计值映射为二进制字符串,得到目标字符串;将目标字符串与白名单规则库进行对比,确定目标网络数据流是否为入侵的网络数据流。本发明中入侵检测模型是可解释,而且是采用知识编译这种形式化逻辑方法解释的,是严格准确、形式化的,即解释出来的规则可100%无误的描述模型的内部规则和逻辑,因此,采用知识编译的方法对入侵检测模型进行规则的抽取,构建白名单规则库,并采用白名单规则库否定选择网络流量,能提高入侵检测的准确度。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的基于知识编译的入侵检测方法的流程图;
图2为本发明实施例提供的基于知识编译的入侵检测系统的结构图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
图1为本发明实施例提供的基于知识编译的入侵检测方法的流程图。参见图1,本实施例的基于知识编译的入侵检测方法,包括:
步骤101:获取目标网络数据流。
所述步骤101,具体包括:
获取目标网络数据包信息,按照流(flow)元素对所述目标网络数据包信息进行提取,得到目标网络数据流;所述流元素包括:起始ip地址、终点ip地址、起始端口号、终点端口号以及协议(src_ip,dst_ip,src_port,dst_port,protocol)。
步骤102:计算所述目标网络数据流的统计值。所述统计值,包括:流长度(flowduration)、上行的总包数、下行的总包数、包长度的最大值、包长度的最小值、包长度的平均值、包长度的方差、流比特率(flowbyte rate)、包到达时差最小值和不同标签的包数。
步骤103:采用变量离散化规则将所述目标网络数据流的统计值映射为二进制字符串,得到目标字符串。
步骤104:将所述目标字符串与白名单规则库进行对比,确定所述目标网络数据流是否为入侵的网络数据流。
所述步骤104,具体包括:
判断白名单规则库中是否存在与所述目标字符串相匹配的二进制字符串;若是,则确定所述目标网络数据流为正常的网络数据流;若否,则确定所述目标网络数据流为入侵的网络数据流。
其中,步骤103中的所述变量离散化规则和步骤104中的所述白名单规则库的确定方法为:
1)采用训练网络数据流的统计值对机器学习模型进行训练,得到入侵检测模型;所述训练网络数据流包括不同入侵的网络数据流和正常的网络数据流;所述入侵检测模型的结构为决策树结构。具体的:
获取训练网络数据流;计算所述训练网络数据流的统计值;将所述训练网络数据流的统计值分别作为多个不同类型的机器学习模型的输入,相应的正常的网络数据流的类标签和不同入侵的网络数据流的类标签作为输出,进行每个模型的训练,并将训练好的模型中准确度最高的模型确定为入侵检测模型。
在实际应用中,模型训练及入侵检测模型确定的过程可具体如下:
将所述训练网络数据流的统计值作为输入决策树模型、随机森林模型、提升树模型和神经网络模型中的输入,相应的正常的网络数据流的类标签和不同入侵的网络数据流的类标签作为输出,对各个模型进行训练,得到训练好的决策树模型、训练好的随机森林模型、训练好的提升树模型和训练好的神经网络模型。
将所述训练好的决策树模型、所述训练好的随机森林模型、所述训练好的提升树模型和所述训练好的神经网络模型中准确度最高的模型确定为目标模型。
若所述目标模型为所述训练好的随机森林模型、所述训练好的提升树模型和所述训练好的神经网络模型中的任意一个时,将所述目标模型的结构转换为决策树结构,并将转换后的目标模型确定为入侵检测模型。
若所述目标模型为训练好的决策树模型,则将所述目标模型确定为所述入侵检测模型。
2)采用知识编译的方法对所述入侵检测模型进行规则抽取,得到变量离散化规则。将所述变量离散化规则转化为二进制字符串,得到白名单规则库。
以所述入侵检测模型中各决策点的阈值作为分隔值,将所述训练网络数据流的统计值映射为离散变量。
根据所述离散变量将所述入侵检测模型中的目标决策路径表示为二进制布尔表达式,得到初始布尔表达式;所述目标决策路径为所述入侵检测模型中决策出正常的网络数据流的决策路径。
根据所述初始布尔表达式,将所述离散变量中的连续值融合为一个离散值,得到融合后的离散变量。
将由所述融合后的离散变量确定的二进制布尔表达式,确定为简化后的布尔表达式,并将所述简化后的布尔表达式确定为变量离散化规则。
对所述变量离散化规则进行简化,得到最简布尔表达式。
将所述最简布尔表达式转化成二进制字符串,得到白名单规则库。
在实际应用中,上述实施例的基于知识编译的入侵检测方法的一个实现过程如下:
步骤1:搜集不同入侵的网络数据包信息和正常的网络数据包信息,从网络数据包信息中按流来提取,一个流由五个流元素来定义,五个流元素分别为起始ip地址、终点ip地址、起始端口号、终点端口号以及协议,也可认为起始ip地址、终点ip地址相同,起始端口号、终点端口号相同,即可认为是一个流(flow)。
步骤2:将抽取的网络数据流计算一系列统计值(统计信息),如:流长度,上行/下行的总包数,包长度的最大值、最小值、平均值、方差,流比特率,包到达时差最小值,不同标签的包数等。
步骤3:利用这些统计值作为属性输入机器学习模型,进行训练,得到训练后的模型(包括决策树、随机森林、xgboosting tree、神经网络等)。复杂的模型,如随机森林,xgboosting tree,神经网络可转换为决策树。
步骤4:根据上一步得到的决策树具体参数(决策点的阈值),得到每个标签的分隔值,根据该分隔点,将每个属性由连续变量映射为离散变量,此为MAP步骤。
步骤5:根据上一步得到的离散变量,把决策树中得出正常流量的决策路径表达成DNF形式的二进制布尔表达式,即得到初始布尔表达式。
步骤6:根据上一步得到的初始布尔表达式,将没有出现过的分隔重新融合为一个变量(始终同时出现的连续的离散值融合为一个离散值),得到融合后的离散变量,此为MERGE步骤。
步骤7:根据上一步融合后的离散变量,得到简化后的正常流量的DNF形式的布尔表达式(简化后的布尔表达式),简化后的布尔表达式即为变量离散化规则,并对简化后的布尔表达式进一步简化,直至最简,得到最简布尔表达式,即minimum DNF(又称primeimplicants)。
步骤8:将上一步得到的最简布尔表达式转化成二进制字符串,最简布尔表达式中每个子句都能表示成二进制字符串,一个二进制字符串为一个白名单规则,所有的二进制字符串构成白名单规则库。
步骤9:在线获取实时网络数据包信息,将实时网络数据包信息按流抽取成实时数据流,计算实时数据流的统计值,然后使用步骤7中得到的变量离散化规则进行离散化,得到实时二进制字符串,和步骤8中得到的白名单规则库进行逐一对比,若有匹配,则认为是正常的网络数据流,否则反之,从而实现网络入侵检测。
本实施例的基于知识编译的入侵检测方法,具有如下优势:
1、相对于现有基于机器学习训练网络流量数据的统计值,从而实现入侵检测的方法来说,具有:
1)本实施例的方法可实现广谱入侵检测,不限于某一种或几种入侵,甚至包括未知入侵。本方法来源于人工免疫算法,该算法的核心思想是通过掌握正常流量的特征,即白名单规则,否定选择网络流量,匹配上的都是正常流量,没有匹配上就认为是异常。本方法通过大量训练各种类型的入侵数据流和正常数据流,从而掌握正常流量的特征。
2)本实施例的方法的入侵检测模型是可解释的,而且是使用知识编译(形式化逻辑)方法解释的,是严格准确、形式化的,即解释出来的规则可100%无误的描述模型的内部规则和逻辑。而现有的其他模型都是黑盒,不可解释,不可审阅的。
3)本实施例的方法使用网络数据流的统计量信息作为机器学习模型的输入,相比较直接使用包头信息作为输入,精度更高,而且可适用于当包头信息不可用时的场景。比如当QUIC协议下,包头信息是加密的,不可直接作为机器学习的特征值,但统计量信息仍然可以反应数据流量的特征。
2、相对于现有可解释机器学习(XAI)方法,具有:
1)现有可解释机器学习方法大都是基于经验的(heuristic),是通过用简单的模型近似模拟现有模型,然后解释简单的模型,来达到可解释的目的。这种方法并不能保证解释的规则100%都能和原模型的决策结果一致。而本实施例的方法是基于形式化逻辑的运算,可保证与原模型的决策结果100%一致。
2)本实施例的方法特有的Map&Merge方法(即变量离散化规则和白名单规则库的确定方法)可指数倍的缩减使用知识编译将连续特征值离散化并转化成DNF布尔表达式的复杂程度,更快捷。
3、本实施例的方法不限于使用某一种机器学习方法,而是通过实验各种机器学习方法,挑选准确率最高的一个,使用知识编译抽取其所学到的规则,作为白名单规则库,使用人工免疫算法实现全自动的实时入侵免疫。相对于现有的入侵检测方法,准确度更高、智能化更强(全自动,无人工干预)、可防御的入侵种类更多。
本实施例的基于知识编译的入侵检测方法,通过使用多种机器学习模型训练多种入侵及正常网络流量,从而选择表现最优的模型,用形式化逻辑的方法解释其学习到的判断正常流量的规则,并基于人工免疫算法,构建白名单规则库,实现了广谱网络入侵检测。
本发明还提供了一种基于知识编译的入侵检测系统,图2为本发明实施例提供的基于知识编译的入侵检测系统的结构图。参见图2,所述系统,包括:
目标数据流获取模块201,用于获取目标网络数据流。
统计值计算模块202,用于计算所述目标网络数据流的统计值。
离散化模块203,用于采用变量离散化规则将所述目标网络数据流的统计值映射为二进制字符串,得到目标字符串。
入侵检测模块204,用于将所述目标字符串与白名单规则库进行对比,确定所述目标网络数据流是否为入侵的网络数据流。
其中,所述变量离散化规则和所述白名单规则库的确定方法为:
采用训练网络数据流的统计值对机器学习模型进行训练,得到入侵检测模型;所述训练网络数据流包括不同入侵的网络数据流和正常的网络数据流;所述入侵检测模型的结构为决策树结构。
采用知识编译的方法对所述入侵检测模型进行规则抽取,得到变量离散化规则。
将所述变量离散化规则转化为二进制字符串,得到白名单规则库。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的系统而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处。综上所述,本说明书内容不应理解为对本发明的限制。
Claims (9)
1.一种基于知识编译的入侵检测方法,其特征在于,包括:
获取目标网络数据流;
计算所述目标网络数据流的统计值;
采用变量离散化规则将所述目标网络数据流的统计值映射为二进制字符串,得到目标字符串;
将所述目标字符串与白名单规则库进行对比,确定所述目标网络数据流是否为入侵的网络数据流;
其中,所述变量离散化规则和所述白名单规则库的确定方法为:
采用训练网络数据流的统计值对机器学习模型进行训练,得到入侵检测模型;所述训练网络数据流包括不同入侵的网络数据流和正常的网络数据流;所述入侵检测模型的结构为决策树结构;
采用知识编译的方法对所述入侵检测模型进行规则抽取,得到变量离散化规则;
将所述变量离散化规则转化为二进制字符串,得到白名单规则库。
2.根据权利要求1所述的一种基于知识编译的入侵检测方法,其特征在于,所述采用训练网络数据流的统计值对机器学习模型进行训练,得到入侵检测模型,具体包括:
获取训练网络数据流;
计算所述训练网络数据流的统计值;
将所述训练网络数据流的统计值分别输入多个不同类型的机器学习模型中进行训练,并将训练好的模型中准确度最高的模型确定为入侵检测模型。
3.根据权利要求2所述的一种基于知识编译的入侵检测方法,其特征在于,所述将所述训练网络数据流的统计值分别输入多个不同类型的机器学习模型中进行训练,并将训练好的模型中准确度最高的模型确定为入侵检测模型,具体包括:
将所述训练网络数据流的统计值分别输入决策树模型、随机森林模型、提升树模型和神经网络模型中进行训练,得到训练好的决策树模型、训练好的随机森林模型、训练好的提升树模型和训练好的神经网络模型;
将所述训练好的决策树模型、所述训练好的随机森林模型、所述训练好的提升树模型和所述训练好的神经网络模型中准确度最高的模型确定为目标模型;
若所述目标模型为所述训练好的随机森林模型、所述训练好的提升树模型和所述训练好的神经网络模型中的任意一个时,将所述目标模型的结构转换为决策树结构,并将转换后的目标模型确定为入侵检测模型;
若所述目标模型为训练好的决策树模型,则将所述目标模型确定为所述入侵检测模型。
4.根据权利要求1所述的一种基于知识编译的入侵检测方法,其特征在于,所述采用知识编译的方法对所述入侵检测模型进行规则抽取,得到变量离散化规则,具体包括:
以所述入侵检测模型中各决策点的阈值作为分隔值,将所述训练网络数据流的统计值映射为离散变量;
根据所述离散变量将所述入侵检测模型中的目标决策路径表示为二进制布尔表达式,得到初始布尔表达式;所述目标决策路径为所述入侵检测模型中决策出正常的网络数据流的决策路径;
根据所述初始布尔表达式,将所述离散变量中的连续值融合为一个离散值,得到融合后的离散变量;
将由所述融合后的离散变量确定的二进制布尔表达式,确定为简化后的布尔表达式,并将所述简化后的布尔表达式确定为变量离散化规则。
5.根据权利要求1所述的一种基于知识编译的入侵检测方法,其特征在于,所述将所述变量离散化规则转化为二进制字符串,得到白名单规则库,具体包括:
对所述变量离散化规则进行简化,得到最简布尔表达式;
将所述最简布尔表达式转化成二进制字符串,得到白名单规则库。
6.根据权利要求1所述的一种基于知识编译的入侵检测方法,其特征在于,所述将所述目标字符串与白名单规则库进行对比,确定所述目标网络数据流是否为入侵的网络数据流,具体包括:
判断白名单规则库中是否存在与所述目标字符串相匹配的二进制字符串;
若是,则确定所述目标网络数据流为正常的网络数据流;
若否,则确定所述目标网络数据流为入侵的网络数据流。
7.根据权利要求1所述的一种基于知识编译的入侵检测方法,其特征在于,所述获取目标网络数据流,具体包括:
获取目标网络数据包信息;
按照流元素对所述目标网络数据包信息进行提取,得到目标网络数据流;所述流元素包括:起始ip地址、终点ip地址、起始端口号、终点端口号以及协议。
8.根据权利要求1所述的一种基于知识编译的入侵检测方法,其特征在于,所述统计值,包括:流长度、上行的总包数、下行的总包数、包长度的最大值、包长度的最小值、包长度的平均值、包长度的方差、流比特率、包到达时差最小值和不同标签的包数。
9.一种基于知识编译的入侵检测系统,其特征在于,包括:
目标数据流获取模块,用于获取目标网络数据流;
统计值计算模块,用于计算所述目标网络数据流的统计值;
离散化模块,用于采用变量离散化规则将所述目标网络数据流的统计值映射为二进制字符串,得到目标字符串;
入侵检测模块,用于将所述目标字符串与白名单规则库进行对比,确定所述目标网络数据流是否为入侵的网络数据流;
其中,所述变量离散化规则和所述白名单规则库的确定方法为:
采用训练网络数据流的统计值对机器学习模型进行训练,得到入侵检测模型;所述训练网络数据流包括不同入侵的网络数据流和正常的网络数据流;所述入侵检测模型的结构为决策树结构;
采用知识编译的方法对所述入侵检测模型进行规则抽取,得到变量离散化规则;
将所述变量离散化规则转化为二进制字符串,得到白名单规则库。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210230642.5A CN114615052A (zh) | 2022-03-10 | 2022-03-10 | 一种基于知识编译的入侵检测方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210230642.5A CN114615052A (zh) | 2022-03-10 | 2022-03-10 | 一种基于知识编译的入侵检测方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114615052A true CN114615052A (zh) | 2022-06-10 |
Family
ID=81861747
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210230642.5A Pending CN114615052A (zh) | 2022-03-10 | 2022-03-10 | 一种基于知识编译的入侵检测方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114615052A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115378746A (zh) * | 2022-10-26 | 2022-11-22 | 北京华云安信息技术有限公司 | 网络入侵检测规则生成方法、装置、设备以及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5131074A (en) * | 1988-10-05 | 1992-07-14 | Adin Research, Inc. | Knowledge compilation/pattern reasoning system |
US20080262990A1 (en) * | 2000-09-25 | 2008-10-23 | Harsh Kapoor | Systems and methods for processing data flows |
US20160342398A1 (en) * | 2015-05-22 | 2016-11-24 | Alan A. Yelsey | Dynamic Semiotic Systemic Knowledge Compiler System and Methods |
US20180219887A1 (en) * | 2017-01-30 | 2018-08-02 | Microsoft Technology Licensing, Llc | Continuous learning for intrusion detection |
-
2022
- 2022-03-10 CN CN202210230642.5A patent/CN114615052A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5131074A (en) * | 1988-10-05 | 1992-07-14 | Adin Research, Inc. | Knowledge compilation/pattern reasoning system |
US20080262990A1 (en) * | 2000-09-25 | 2008-10-23 | Harsh Kapoor | Systems and methods for processing data flows |
US20160342398A1 (en) * | 2015-05-22 | 2016-11-24 | Alan A. Yelsey | Dynamic Semiotic Systemic Knowledge Compiler System and Methods |
US20180219887A1 (en) * | 2017-01-30 | 2018-08-02 | Microsoft Technology Licensing, Llc | Continuous learning for intrusion detection |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115378746A (zh) * | 2022-10-26 | 2022-11-22 | 北京华云安信息技术有限公司 | 网络入侵检测规则生成方法、装置、设备以及存储介质 |
CN115378746B (zh) * | 2022-10-26 | 2022-12-23 | 北京华云安信息技术有限公司 | 网络入侵检测规则生成方法、装置、设备以及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111191767B (zh) | 一种基于向量化的恶意流量攻击类型的判断方法 | |
CN111506599B (zh) | 基于规则匹配和深度学习的工控设备识别方法及系统 | |
CN113158390B (zh) | 一种基于辅助分类式生成对抗网络的网络攻击流量生成方法 | |
CN112492059A (zh) | Dga域名检测模型训练方法、dga域名检测方法、装置及存储介质 | |
CN111835763B (zh) | 一种dns隧道流量检测方法、装置及电子设备 | |
CN115277102B (zh) | 网络攻击检测方法、装置、电子设备及存储介质 | |
CN113821793B (zh) | 基于图卷积神经网络的多阶段攻击场景构建方法及系统 | |
CN112134873B (zh) | 一种IoT网络异常流量实时检测方法及系统 | |
CN105871861B (zh) | 一种自学习协议规则的入侵检测方法 | |
CN112613599A (zh) | 一种基于生成对抗网络过采样的网络入侵检测方法 | |
CN112202718B (zh) | 一种基于XGBoost算法的操作系统识别方法、存储介质及设备 | |
CN112989065A (zh) | 应用于大数据用户画像分析的信息处理方法和云计算平台 | |
CN115080756A (zh) | 一种面向威胁情报图谱的攻防行为和时空信息抽取方法 | |
CN114615052A (zh) | 一种基于知识编译的入侵检测方法及系统 | |
CN112291226B (zh) | 一种网络流量的异常检测方法及装置 | |
CN116828087B (zh) | 基于区块链连接的信息安全系统 | |
CN117318980A (zh) | 一种面向小样本场景的自监督学习恶意流量检测方法 | |
CN116599720A (zh) | 一种基于GraphSAGE的恶意DoH流量检测方法、系统 | |
CN111291078A (zh) | 一种域名匹配检测方法及装置 | |
CN114793170B (zh) | 基于开集识别dns隧道检测方法、系统、设备及终端 | |
CN116192527A (zh) | 攻击流量检测规则生成方法、装置、设备及存储介质 | |
CN115587007A (zh) | 基于RoBERTa的网络日志安全检测方法及系统 | |
Muzammil et al. | Comparative analysis of classification algorithms performance for statistical based intrusion detection system | |
Whalen et al. | Hidden markov models for automated protocol learning | |
CN111641599A (zh) | 一种VoIP网络流量所属平台的识别方法 |
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 |