CN116743509A - 基于多算法结合的入侵检测方法、装置及计算机设备 - Google Patents
基于多算法结合的入侵检测方法、装置及计算机设备 Download PDFInfo
- Publication number
- CN116743509A CN116743509A CN202311021655.2A CN202311021655A CN116743509A CN 116743509 A CN116743509 A CN 116743509A CN 202311021655 A CN202311021655 A CN 202311021655A CN 116743509 A CN116743509 A CN 116743509A
- Authority
- CN
- China
- Prior art keywords
- data
- algorithm
- data set
- svm classifier
- intrusion detection
- 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
- 238000004422 calculation algorithm Methods 0.000 title claims abstract description 111
- 238000001514 detection method Methods 0.000 title claims abstract description 106
- 238000012549 training Methods 0.000 claims abstract description 86
- 238000000354 decomposition reaction Methods 0.000 claims abstract description 38
- 238000000034 method Methods 0.000 claims abstract description 37
- 238000007781 pre-processing Methods 0.000 claims abstract description 36
- 238000012360 testing method Methods 0.000 claims abstract description 30
- 238000010801 machine learning Methods 0.000 claims abstract description 27
- 230000000694 effects Effects 0.000 claims abstract description 15
- 239000013598 vector Substances 0.000 claims description 39
- 238000012545 processing Methods 0.000 claims description 37
- 230000009467 reduction Effects 0.000 claims description 17
- 230000002159 abnormal effect Effects 0.000 claims description 10
- 238000010606 normalization Methods 0.000 claims description 7
- 238000004140 cleaning Methods 0.000 claims description 6
- 238000003058 natural language processing Methods 0.000 claims description 6
- 230000011218 segmentation Effects 0.000 claims description 6
- 238000004364 calculation method Methods 0.000 claims description 5
- 238000006243 chemical reaction Methods 0.000 claims description 4
- 238000004891 communication Methods 0.000 claims description 4
- 238000000605 extraction Methods 0.000 claims description 3
- 230000006399 behavior Effects 0.000 abstract description 3
- 230000008569 process Effects 0.000 description 13
- 238000004590 computer program Methods 0.000 description 12
- 238000010586 diagram Methods 0.000 description 8
- 230000006870 function Effects 0.000 description 7
- 238000005516 engineering process Methods 0.000 description 6
- 238000003860 storage Methods 0.000 description 5
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000003066 decision tree Methods 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000007405 data analysis Methods 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000010897 surface acoustic wave method Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
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/1416—Event detection, e.g. attack signature detection
-
- 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
- G06F16/353—Clustering; Classification into predefined classes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/10—Pre-processing; Data cleansing
- G06F18/15—Statistical pre-processing, e.g. techniques for normalisation or restoring missing data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/213—Feature extraction, e.g. by transforming the feature space; Summarisation; Mappings, e.g. subspace methods
-
- 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/2411—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on the proximity to a decision surface, e.g. support vector machines
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/243—Classification techniques relating to the number of classes
- G06F18/24323—Tree-organised classifiers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/205—Parsing
- G06F40/216—Parsing using statistical methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/279—Recognition of textual entities
- G06F40/284—Lexical analysis, e.g. tokenisation or collocates
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/30—Semantic analysis
-
- 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/1441—Countermeasures against malicious traffic
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- General Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- Computer Security & Cryptography (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Bioinformatics & Computational Biology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Evolutionary Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Evolutionary Computation (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Signal Processing (AREA)
- Probability & Statistics with Applications (AREA)
- Computer Networks & Wireless Communication (AREA)
- Computing Systems (AREA)
- Computer Hardware Design (AREA)
- Databases & Information Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种基于多算法结合的入侵检测方法、装置及计算机设备,属于计算机网络安全技术领域,方法包括以下步骤:采集用于入侵检测的原始数据;采用TF‑IDF算法和奇异值分解算法对原始数据进行预处理;将预处理后数据按照7比3的比例分为训练数据集和测试数据集;基于改进的机器学习算法建立SVM分类器;将训练数据集数据输入SVM分类器进行模型训练,并采用测试数据集进行SVM分类器的效果检测;利用训练及测试后的SVM分类器进行入侵检测。本发明采用基于TF‑IDF算法和奇异值分解算法相结合的数据预处理方式,使用改进的机器学习算法建立SVM分类器,提高了入侵检测的效率和准确率,有效拦截了入侵行为。
Description
技术领域
本发明涉及一种基于多算法结合的入侵检测方法、装置及计算机设备,属于计算机网络安全技术领域。
背景技术
近年来,数据泄露和恶意攻击已经成为许多企业关注的主要问题。计算机网络安全问题愈发严重,为避免造成数据的泄露及丢失,计算机的入侵检测技术尤为关键,按照数据源可分为基于网络和基于主机的入侵检测方法(HIDS)。
其中基于主机的入侵检测方法能有效的检测来自内部的攻击,但是目前许多HIDS框架不考虑跟踪文件中系统调用的相对顺序进行分析。因此,当侵入性进程的系统调用模式与正常进程的系统调用模式交错时,这些HIDS框架就不能很好地执行。其次考虑跟踪文件中系统调用的顺序信息来识别异常进程,这些框架中使用的特征向量长度非常大。这将导致较高的处理开销,使它们不适合实时部署。此外,基于一般机器学习算法的模型的HIDS框架虽然已被证明表现良好。但它们具有较高的复杂性和虚警率的缺陷仍然无法忽视。
为了应对上述问题,本申请设计一种基于tfidfvectorizer算法和奇异值分解的数据预处理方式以及改进机器学习算法建模结合的主机入侵检测方法。
发明内容
为了解决上述问题,本发明提出了一种基于多算法结合的入侵检测方法、装置及计算机设备,能够解决传统入侵检测技术存在误报率高、检测效率低下的问题。
本发明解决其技术问题采取的技术方案是:
第一方面,本发明实施例提供的一种基于多算法结合的入侵检测方法,包括以下步骤:
采集用于入侵检测的原始数据;
采用TF-IDF算法和奇异值分解算法对原始数据进行预处理;
将预处理后的数据按照7比3的比例分为训练数据集和测试数据集;
基于改进的机器学习算法建立SVM分类器;所述SVM分类器的表达式为:
为训练数据点,/>为训练数据点的类型,/>=0表示数据点属于正常类,/>=1表示攻击类;
将训练数据集数据输入SVM分类器进行模型训练,并采用测试数据集进行SVM分类器的效果检测;所述输入SVM分类器进行模型训练的训练数据集表示为:
其中N是语料库中文档的总数;
利用训练及测试后的SVM分类器进行入侵检测。
作为本实施例一种可能的实现方式,所述原始数据包括:用户输入信息、网络流量和数据库访问日志。
作为本实施例一种可能的实现方式,所述采用TF-IDF算法和奇异值分解算法对原始数据进行预处理,包括:
建立系统调用跟踪文件的语料库;所述系统调用跟踪文件包括供系统调用的正常跟踪文件和异常跟踪文件;
调用语料库中所有系统调用跟踪文件唯一的n-gram术语;
将系统调用跟踪文件转换为n元特征向量,其中,转换后的n元特征向量的每个元素对应于前面标识的n-gram项的tf-idf值;
采用截断的奇异值分解算法对n元特征向量进行降维处理。
作为本实施例一种可能的实现方式,在将系统调用跟踪文件转换为n元特征向量过程中,
n-gram项的tf值为给定n-gram项的术语频率除以给定文档中所有唯一n-gram项的术语频率的总和;
n-gram项的idf值的计算公式为:
其中N是语料库中文档的总数,df是给定n-gram术语的文档频率(文档频率就是包含给定n-gram术语的语料库中的文档数量)。
第二方面,本发明实施例提供的一种基于多算法结合的入侵检测装置,包括:
数据采集模块,用于采集用于入侵检测的原始数据;
数据预处理模块,用于采用TF-IDF算法和奇异值分解算法对原始数据进行预处理;
数据集划分模块,用于将预处理后的数据按照7比3的比例分为训练数据集和测试数据集;
分类器建立模块,用于基于改进的机器学习算法建立SVM分类器;所述SVM分类器的表达式为:
为训练数据点,/>为训练数据点的类型,/>=0表示数据点属于正常类,/>=1表示攻击类;
模型训练模块,用于将训练数据集数据输入SVM分类器进行模型训练,并采用测试数据集进行SVM分类器的效果检测;所述输入SVM分类器进行模型训练的训练数据集表示为:
其中N是语料库中文档的总数;
入侵检测模块,用于利用训练及测试后的SVM分类器进行入侵检测。
作为本实施例一种可能的实现方式,所述数据预处理模块,包括:
语料库建立模块,用于建立系统调用跟踪文件的语料库;所述系统调用跟踪文件包括供系统调用的正常跟踪文件和异常跟踪文件;
术语调用模块,用于调用语料库中所有系统调用跟踪文件唯一的n-gram术语;
文件转换模块,用于将系统调用跟踪文件转换为n元特征向量,其中,转换后的n元特征向量的每个元素对应于前面标识的n-gram项的tf-idf值;
降维处理模块,用于采用截断的奇异值分解算法对n元特征向量进行降维处理。
第三方面,本发明实施例提供的一种基于多算法结合的入侵检测方法,包括以下步骤:
采集用于入侵检测的原始数据,并对原始数据进行预处理;
采用TF-IDF算法和奇异值分解算法对预处理后数据进行处理,生成数据集;
将数据集按照7比3的比例分为训练数据集和测试数据集;
基于改进的机器学习算法建立SVM分类器;
将训练数据集数据输入SVM分类器进行模型训练,并采用测试数据集进行SVM分类器的效果检测;
利用训练及测试后的SVM分类器进行入侵检测。
作为本实施例一种可能的实现方式,所述对原始数据进行预处理,包括:
对原始数据进行清洗处理,去除无用的信息和标点符号,将文本转换为小写并去除停用词,对于数字数据进行归一化标准处理;
使用NLTK自然语言处理库对文本进行分词,并使用停用词列表来移除无用的词语;
使用Word embeddings语义表示方法对描述性文本(如文本分类任务)提取语义信息。
作为本实施例一种可能的实现方式,所述采用TF-IDF算法和奇异值分解算法对预处理后数据进行处理,包括:
建立系统调用跟踪文件的语料库;所述系统调用跟踪文件包括供系统调用的正常跟踪文件和异常跟踪文件;
调用语料库中所有系统调用跟踪文件唯一的n-gram术语;
将系统调用跟踪文件转换为n元特征向量,其中,转换后的n元特征向量的每个元素对应于前面标识的n-gram项的tf-idf值;
采用截断的奇异值分解算法对n元特征向量进行降维处理。
作为本实施例一种可能的实现方式,在将系统调用跟踪文件转换为n元特征向量过程中,
n-gram项的tf值为给定n-gram项的术语频率除以给定文档中所有唯一n-gram项的术语频率的总和;
n-gram项的idf值的计算公式为:
其中N是语料库中文档的总数,df是给定n-gram术语的文档频率(文档频率就是包含给定n-gram术语的语料库中的文档数量)。
第四方面,本发明实施例提供的一种基于多算法结合的入侵检测装置,包括:
数据采集及预处理模块,用于采集用于入侵检测的原始数据,并对原始数据进行预处理;
数据二次处理模块,用于采用TF-IDF算法和奇异值分解算法对预处理后数据进行处理,生成数据集;
数据集划分模块,用于将数据集按照7比3的比例分为训练数据集和测试数据集;
分类器建立模块,用于基于改进的机器学习算法建立SVM分类器;
模型训练模块,用于将训练数据集数据输入SVM分类器进行模型训练,并采用测试数据集进行SVM分类器的效果检测;
入侵检测模块,用于利用训练及测试后的SVM分类器进行入侵检测。
作为本实施例一种可能的实现方式,所述数据二次处理模块,包括:
数据处理模块,用于对原始数据进行清洗处理,去除无用的信息和标点符号,将文本转换为小写并去除停用词,对于数字数据进行归一化标准处理;
文本分词模块,用于使用NLTK自然语言处理库对文本进行分词,并使用停用词列表来移除无用的词语;
语义信息提取模块,用于使用Word embeddings语义表示方法对描述性文本提取语义信息。
第五方面,本发明实施例提供的一种计算机设备,包括处理器、存储器和总线,所述存储器存储有所述处理器可执行的机器可读指令,当所述计算机设备运行时,所述处理器与所述存储器之间通过总线通信,所述处理器执行所述机器可读指令,以执行如上述任意基于多算法结合的入侵检测方法的步骤。
第六方面,本发明实施例提供的一种存储介质,该存储介质上存储有计算机程序,该计算机程序被处理器运行时执行如上述任意基于多算法结合的入侵检测方法的步骤。
本发明实施例的技术方案可以具有的有益效果如下:
本发明在tfidfvectorizer算法(该算法涉及python语言,可以实现原始文本转化为相应的特征矩阵的功能)和奇异值分解的数据预处理方法基础上,使用改进的机器学习算法进行建模(建立SVM分类器),通过将tf-idf矢量器、奇异值分解算法和改进机器学习算法有机结合起来进行入侵检测,有效地改善了处理时间,提高了入侵检测的准确度。
本发明首先提出了一种先进的数据预处理方式,即利用tfidfvectorizer算法和奇异值分解,将系统调用跟踪文件转换相关模型(该模型适用于各种基于机器学习的分类器的处理),并通过使用截断的奇异值分解对转换后的特征向量进行降维。其次使用改进的机器学习进行建模,使其满足大量数据的挑战,提高了入侵检测准确率。
本发明采用基于TF-IDF算法和奇异值分解算法相结合的数据预处理方式对数据进行预处理,并使用改进的机器学习算法建立SVM分类器,不仅提高了入侵检测的效率和准确率,有效拦截了入侵行为,而且快速准确地解决了传统入侵检测技术存在误报率高、检测效率低下的问题。
附图说明
图1是根据一示例性实施例示出的一种基于多算法结合的入侵检测方法的流程图;
图2是根据一示例性实施例示出的一种基于多算法结合的入侵检测装置的示意图;
图3是根据一示例性实施例示出的另一种基于多算法结合的入侵检测方法的流程图;
图4是根据一示例性实施例示出的另一种基于多算法结合的入侵检测装置的示意图。
具体实施方式
下面结合附图与实施例对本发明做进一步说明:
为能清楚说明本方案的技术特点,下面通过具体实施方式,并结合其附图,对本发明进行详细阐述。下文的公开提供了许多不同的实施例或例子用来实现本发明的不同结构。为了简化本发明的公开,下文中对特定例子的部件和设置进行描述。此外,本发明可以在不同例子中重复参考数字和/或字母。这种重复是为了简化和清楚的目的,其本身不指示所讨论各种实施例和/或设置之间的关系。应当注意,在附图中所图示的部件不一定按比例绘制。本发明省略了对公知组件和处理技术及工艺的描述以避免不必要地限制本发明。
实施例1
如图1所示,本发明实施例提供了一种基于多算法结合的入侵检测方法,包括以下步骤:
采集用于入侵检测的原始数据;
采用TF-IDF算法和奇异值分解算法对原始数据进行预处理;
将预处理后的数据按照7比3的比例分为训练数据集和测试数据集;
基于改进的机器学习算法建立SVM分类器;所述SVM分类器的表达式为:
为训练数据点,/>为训练数据点的类型,/>=0表示数据点属于正常类,/>=1表示攻击类;
将训练数据集数据输入SVM分类器进行模型训练,并采用测试数据集进行SVM分类器的效果检测;所述输入SVM分类器进行模型训练的训练数据集表示为:
其中N是语料库中文档的总数;
利用训练及测试后的SVM分类器进行入侵检测。
作为本实施例一种可能的实现方式,所述原始数据包括:用户输入信息、网络流量和数据库访问日志。
作为本实施例一种可能的实现方式,所述采用TF-IDF算法和奇异值分解算法对原始数据进行预处理,包括:
建立系统调用跟踪文件的语料库;所述系统调用跟踪文件包括供系统调用的正常跟踪文件和异常跟踪文件;
调用语料库中所有系统调用跟踪文件唯一的n-gram术语;
将系统调用跟踪文件转换为n元特征向量,其中,转换后的n元特征向量的每个元素对应于前面标识的n-gram项的tf-idf值;
采用截断的奇异值分解算法对n元特征向量进行降维处理。
作为本实施例一种可能的实现方式,在将系统调用跟踪文件转换为n元特征向量过程中,
n-gram项的tf值为给定n-gram项的术语频率除以给定文档中所有唯一n-gram项的术语频率的总和;
n-gram项的idf值的计算公式为:
(1)
其中N是语料库中文档的总数,df是给定n-gram术语的文档频率(文档频率就是包含给定n-gram术语的语料库中的文档数量)。
tf(术语频率)值:tf代表跟踪文件中给定n-gram术语出现频率的统计度量,且语料库中的系统调用跟踪文件具有不同的长度,且 n-gram术语使用更加频繁。因此,一个给定n-gram项的术语频率通常除以给定文档中所有唯一n-gram项的术语频率的总和,作为一种标准化方法。
idf(逆文档频率)值:如公式(1)所示可计算出idf 的值,使用log函数用来缩小idf值。然后使用n-gram项的tf-idf值对变换后的特征向量进行降维。降维的n-gram特征向量最终被传递给各种基于机器学习的分类器模型,这些模型将它们分类为正常或异常。
基于改进的机器学习算法建立SVM分类器机器的过程主要分为攻击分类和决策两个部分。
数据预处理得到与系统调用跟踪文件对应的降维特征向量,按照7比3的比例分为训练和测试数据集,即训练数据集为70%,测试数据集为30%。
1)攻击分类
实际上,本发明的主要目的是实现实时、高精度、低误报的入侵检测。ApacheSpark6是一个用于大数据分析的开源计算基础设施。其采用多层内存布局,能够快速并行处理大量数据。此外,它可以支持大多数语言所以使用方便。
首先将训练数据集传递给SVM分类器进行分类。在数据集中,每个数据点属于正常或攻击类。每个训练数据点xi可以用yi标记为正常和攻击两种类型。
2)决策
分为两类数据,包括常态和攻击。将所有的类别合并到一起,对测试数据进行分类。对于存在一些分类错误使用决策树来纠正这些错误。
本发明还可以使用决策树对攻击分类阶段的输出数据进行训练,以减少攻击检测的误报。通过这种方式,制定相关的规则,为所有数据记录找到最准确的攻击类别。
在将训练数据集数据输入SVM分类器进行模型训练,并采用测试数据集进行SVM分类器的效果检测的过程中,进行模型训练时,可以考虑使用一些基于数据增强的方法,如随机截取、互操作等方法,来增加模型的鲁棒性;进行模型评估时,可以考虑使用一些基于准确率、召回率、精确率等指标的方法,来评估模型的性能。
基于原始文本转化、奇异值分解和机器学习结合的主机入侵检测方法,可以通过以上的优化,更加准确、高效、智能地检测出网络攻击。
如图2所示,对应于上述方法,本发明实施例提供了一种基于多算法结合的入侵检测装置,包括:
数据采集模块,用于采集用于入侵检测的原始数据;
数据预处理模块,用于采用TF-IDF算法和奇异值分解算法对原始数据进行预处理;
数据集划分模块,用于将预处理后的数据按照7比3的比例分为训练数据集和测试数据集;
分类器建立模块,用于基于改进的机器学习算法建立SVM分类器;所述SVM分类器的表达式为:
为训练数据点,/>为训练数据点的类型,/>=0表示数据点属于正常类,/>=1表示攻击类;
模型训练模块,用于将训练数据集数据输入SVM分类器进行模型训练,并采用测试数据集进行SVM分类器的效果检测;所述输入SVM分类器进行模型训练的训练数据集表示为:
其中N是语料库中文档的总数;
入侵检测模块,用于利用训练及测试后的SVM分类器进行入侵检测。
作为本实施例一种可能的实现方式,所述数据预处理模块,包括:
语料库建立模块,用于建立系统调用跟踪文件的语料库;所述系统调用跟踪文件包括供系统调用的正常跟踪文件和异常跟踪文件;
术语调用模块,用于调用语料库中所有系统调用跟踪文件唯一的n-gram术语;
文件转换模块,用于将系统调用跟踪文件转换为n元特征向量,其中,转换后的n元特征向量的每个元素对应于前面标识的n-gram项的tf-idf值;
降维处理模块,用于采用截断的奇异值分解算法对n元特征向量进行降维处理。
本发明首先提出了一种先进的数据预处理方式,即利用tfidfvectorizer算法和奇异值分解,将系统调用跟踪文件转换相关模型(该模型适用于各种基于机器学习的分类器的处理),并通过使用截断的奇异值分解对转换后的特征向量进行降维。其次使用改进的机器学习进行建模,使其满足大量数据的挑战,提高了入侵检测准确率。
实施例2
如图3所示,本发明实施例提供了一种基于多算法结合的入侵检测方法,包括以下步骤:
采集用于入侵检测的原始数据,并对原始数据进行预处理;
采用TF-IDF算法和奇异值分解算法对预处理后数据进行处理,生成数据集;
将数据集按照7比3的比例分为训练数据集和测试数据集;
基于改进的机器学习算法建立SVM分类器;
将训练数据集数据输入SVM分类器进行模型训练,并采用测试数据集进行SVM分类器的效果检测;
利用训练及测试后的SVM分类器进行入侵检测。
作为本实施例一种可能的实现方式,为了提高数据的质量和可用性,所述对原始数据进行预处理,包括:
对原始数据进行清洗处理,去除无用的信息和标点符号,将文本转换为小写并去除停用词,对于数字数据进行归一化标准处理;
使用NLTK自然语言处理库对文本进行分词,并使用停用词列表来移除无用的词语;
使用Word embeddings语义表示方法对描述性文本(如文本分类任务)提取语义信息。
作为本实施例一种可能的实现方式,所述采用TF-IDF算法和奇异值分解算法对预处理后数据进行处理,包括:
建立系统调用跟踪文件的语料库;所述系统调用跟踪文件包括供系统调用的正常跟踪文件和异常跟踪文件;
调用语料库中所有系统调用跟踪文件唯一的n-gram术语;
将系统调用跟踪文件转换为n元特征向量,其中,转换后的n元特征向量的每个元素对应于前面标识的n-gram项的tf-idf值;
采用截断的奇异值分解算法对n元特征向量进行降维处理。
在采用截断的奇异值分解算法对n元特征向量进行降维处理过程,可以使用一些现成的库(如Python的SVD库)来进行SVD降维,这些库更方便应用SVD算法来降低高维数据的维度。在模型训练之前对数据进行降维,以减少训练时间和减少模型的过拟合。
作为本实施例一种可能的实现方式,在将系统调用跟踪文件转换为n元特征向量过程中,
n-gram项的tf值为给定n-gram项的术语频率除以给定文档中所有唯一n-gram项的术语频率的总和;
n-gram项的idf值的计算公式为:
其中N是语料库中文档的总数,df是给定n-gram术语的文档频率(文档频率就是包含给定n-gram术语的语料库中的文档数量)。
如图4所示,对应于上述方法,本发明实施例还提供了一种基于多算法结合的入侵检测装置,包括:
数据采集及预处理模块,用于采集用于入侵检测的原始数据,并对原始数据进行预处理;
数据二次处理模块,用于采用TF-IDF算法和奇异值分解算法对预处理后数据进行处理,生成数据集;
数据集划分模块,用于将数据集按照7比3的比例分为训练数据集和测试数据集;
分类器建立模块,用于基于改进的机器学习算法建立SVM分类器;
模型训练模块,用于将训练数据集数据输入SVM分类器进行模型训练,并采用测试数据集进行SVM分类器的效果检测;
入侵检测模块,用于利用训练及测试后的SVM分类器进行入侵检测。
作为本实施例一种可能的实现方式,所述数据二次处理模块,包括:
数据处理模块,用于对原始数据进行清洗处理,去除无用的信息和标点符号,将文本转换为小写并去除停用词,对于数字数据进行归一化标准处理;
文本分词模块,用于使用NLTK自然语言处理库对文本进行分词,并使用停用词列表来移除无用的词语;
语义信息提取模块,用于使用Word embeddings语义表示方法对描述性文本提取语义信息。
本发明通过使用基于深度学习技术的自适应入侵检测方法,可以在不考虑跟踪文件中系统调用的相对顺序信息的情况下,有效地检测出内部攻击。同时,这种方法使用了较小的特征向量,并且在实时部署方面表现出色。这将提高部署该方法的系统的检测效率和准确率,从而使得系统更加适合实时部署。
本发明采用基于TF-IDF算法和奇异值分解算法相结合的数据预处理方式对数据进行预处理,并使用改进的机器学习算法建立SVM分类器,不仅提高了入侵检测的效率和准确率,有效拦截了入侵行为,而且快速准确地解决了传统入侵检测技术存在误报率高、检测效率低下的问题。
实施例3
本发明实施例提供了一种计算机设备,包括处理器、存储器和总线,所述存储器存储有所述处理器可执行的机器可读指令,当所述装置运行时,所述处理器与所述存储器之间通过总线通信,所述处理器执行所述机器可读指令,以执行如上述任意基于多算法结合的入侵检测方法的步骤。
具体地,上述存储器和处理器能够为通用的存储器和处理器,这里不做具体限定,当处理器运行存储器存储的计算机程序时,能够执行上述基于多算法结合的入侵检测方法。
本领域技术人员可以理解,所述计算机设备的结构并不构成对计算机设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。
在一些实施例中,该计算机设备还可以包括触摸屏可用于显示图形用户界面(例如,应用程序的启动界面)和接收用户针对图形用户界面的操作(例如,针对应用程序的启动操作)。具体的触摸屏可包括显示面板和触控面板。其中显示面板可以采用LCD(LiquidCrystal Display,液晶显示器)、OLED(Organic Light-Emitting Diode,有机发光二极管)等形式来配置。触控面板可收集用户在其上或附近的接触或者非接触操作,并生成预先设定的操作指令,例如,用户使用手指、触笔等任何适合的物体或附件在触控面板上或在触控面板附近的操作。另外,触控面板可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位、姿势,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成处理器能够处理的信息,再送给处理器,并能接收处理器发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触控面板,也可以采用未来发展的任何技术实现触控面板。进一步的,触控面板可覆盖显示面板,用户可以根据显示面板显示的图形用户界面,在显示面板上覆盖的触控面板上或者附近进行操作,触控面板检测到在其上或附近的操作后,传送给处理器以确定用户输入,随后处理器响应于用户输入在显示面板上提供相应的视觉输出。另外,触控面板与显示面板可以作为两个独立的部件来实现也可以集成而来实现。
对应于上述应用程序的启动方法,本发明实施例还提供了一种存储介质,该存储介质上存储有计算机程序,该计算机程序被处理器运行时执行如上述任意基于多算法结合的入侵检测方法的步骤。
本申请实施例所提供的应用程序的启动装置可以为设备上的特定硬件或者安装于设备上的软件或固件等。本申请实施例所提供的装置,其实现原理及产生的技术效果和前述方法实施例相同,为简要描述,装置实施例部分未提及之处,可参考前述方法实施例中相应内容。所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,前述描述的系统、装置和单元的具体工作过程,均可以参考上述方法实施例中的对应过程,在此不再赘述。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
在本申请所提供的实施例中,应该理解到,所揭露装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个模块或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或模块的间接耦合或通信连接,可以是电性,机械或其它的形式。
作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理模块,即可以位于一个地方,或者也可以分布到多个网络模块上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
另外,在本申请提供的实施例中的各功能模块可以集成在一个处理模块中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个模块中。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
最后应当说明的是:以上实施例仅用以说明本发明的技术方案而非对其限制,尽管参照上述实施例对本发明进行了详细的说明,所属领域的普通技术人员应当理解:依然可以对本发明的具体实施方式进行修改或者等同替换,而未脱离本发明精神和范围的任何修改或者等同替换,其均应涵盖在本发明的权利要求保护范围之内。
Claims (10)
1.一种基于多算法结合的入侵检测方法,其特征在于,包括以下步骤:
采集用于入侵检测的原始数据;
采用TF-IDF算法和奇异值分解算法对原始数据进行预处理;
将预处理后的数据按照7比3的比例分为训练数据集和测试数据集;
基于改进的机器学习算法建立SVM分类器;所述SVM分类器的表达式为:
为训练数据点,/>为训练数据点的类型,/>=0表示数据点属于正常类,/>=1表示攻击类;
将训练数据集数据输入SVM分类器进行模型训练,并采用测试数据集进行SVM分类器的效果检测;所述输入SVM分类器进行模型训练的训练数据集表示为:
其中N是语料库中文档的总数;
利用训练及测试后的SVM分类器进行入侵检测。
2.根据权利要求1所述的基于多算法结合的入侵检测方法,其特征在于,所述采用TF-IDF算法和奇异值分解算法对原始数据进行预处理,包括:
建立系统调用跟踪文件的语料库;所述系统调用跟踪文件包括供系统调用的正常跟踪文件和异常跟踪文件;
调用语料库中所有系统调用跟踪文件唯一的n-gram术语;
将系统调用跟踪文件转换为n元特征向量,其中,转换后的n元特征向量的每个元素对应于前面标识的n-gram项的tf-idf值;
采用截断的奇异值分解算法对n元特征向量进行降维处理。
3.根据权利要求2所述的基于多算法结合的入侵检测方法,其特征在于, 在将系统调用跟踪文件转换为n元特征向量过程中,
n-gram项的tf值为给定n-gram项的术语频率除以给定文档中所有唯一n-gram项的术语频率的总和;
n-gram项的idf值的计算公式为:
其中N是语料库中文档的总数,df是给定n-gram术语的文档频率。
4.一种基于多算法结合的入侵检测装置,其特征在于,包括:
数据采集模块,用于采集用于入侵检测的原始数据;
数据预处理模块,用于采用TF-IDF算法和奇异值分解算法对原始数据进行预处理;
数据集划分模块,用于将预处理后的数据按照7比3的比例分为训练数据集和测试数据集;
分类器建立模块,用于基于改进的机器学习算法建立SVM分类器;所述SVM分类器的表达式为:
为训练数据点,/>为训练数据点的类型,/>=0表示数据点属于正常类,/>=1表示攻击类;
模型训练模块,用于将训练数据集数据输入SVM分类器进行模型训练,并采用测试数据集进行SVM分类器的效果检测;所述输入SVM分类器进行模型训练的训练数据集表示为:
其中N是语料库中文档的总数;
入侵检测模块,用于利用训练及测试后的SVM分类器进行入侵检测。
5.根据权利要求4所述的基于多算法结合的入侵检测装置,其特征在于,所述数据预处理模块,包括:
语料库建立模块,用于建立系统调用跟踪文件的语料库;所述系统调用跟踪文件包括供系统调用的正常跟踪文件和异常跟踪文件;
术语调用模块,用于调用语料库中所有系统调用跟踪文件唯一的n-gram术语;
文件转换模块,用于将系统调用跟踪文件转换为n元特征向量,其中,转换后的n元特征向量的每个元素对应于前面标识的n-gram项的tf-idf值;
降维处理模块,用于采用截断的奇异值分解算法对n元特征向量进行降维处理。
6.一种基于多算法结合的入侵检测方法,其特征在于,包括以下步骤:
采集用于入侵检测的原始数据,并对原始数据进行预处理;
采用TF-IDF算法和奇异值分解算法对预处理后数据进行处理,生成数据集;
将数据集按照7比3的比例分为训练数据集和测试数据集;
基于改进的机器学习算法建立SVM分类器;所述SVM分类器的表达式为:
为训练数据点,/>为训练数据点的类型,/>=0表示数据点属于正常类,/>=1表示攻击类;
将训练数据集数据输入SVM分类器进行模型训练,并采用测试数据集进行SVM分类器的效果检测;所述输入SVM分类器进行模型训练的训练数据集表示为:
其中N是语料库中文档的总数;
利用训练及测试后的SVM分类器进行入侵检测。
7.根据权利要求6所述的基于多算法结合的入侵检测方法,其特征在于,所述对原始数据进行预处理,包括:
对原始数据进行清洗处理,去除无用的信息和标点符号,将文本转换为小写并去除停用词,对于数字数据进行归一化标准处理;
使用NLTK自然语言处理库对文本进行分词,并使用停用词列表来移除无用的词语;
使用Word embeddings语义表示方法对描述性文本提取语义信息。
8.一种基于多算法结合的入侵检测装置,其特征在于,包括:
数据采集及预处理模块,用于采集用于入侵检测的原始数据,并对原始数据进行预处理;
数据二次处理模块,用于采用TF-IDF算法和奇异值分解算法对预处理后数据进行处理,生成数据集;
数据集划分模块,用于将数据集按照7比3的比例分为训练数据集和测试数据集;
分类器建立模块,用于基于改进的机器学习算法建立SVM分类器;所述SVM分类器的表达式为:
为训练数据点,/>为训练数据点的类型,/>=0表示数据点属于正常类,/>=1表示攻击类;
模型训练模块,用于将训练数据集数据输入SVM分类器进行模型训练,并采用测试数据集进行SVM分类器的效果检测;所述输入SVM分类器进行模型训练的训练数据集表示为:
其中N是语料库中文档的总数;
入侵检测模块,用于利用训练及测试后的SVM分类器进行入侵检测。
9.根据权利要求8所述的基于多算法结合的入侵检测装置,其特征在于,所述数据二次处理模块,包括:
数据处理模块,用于对原始数据进行清洗处理,去除无用的信息和标点符号,将文本转换为小写并去除停用词,对于数字数据进行归一化标准处理;
文本分词模块,用于使用NLTK自然语言处理库对文本进行分词,并使用停用词列表来移除无用的词语;
语义信息提取模块,用于使用Word embeddings语义表示方法对描述性文本提取语义信息。
10.一种计算机设备,其特征在于,包括处理器、存储器和总线,所述存储器存储有所述处理器可执行的机器可读指令,当所述计算机设备运行时,所述处理器与所述存储器之间通过总线通信,所述处理器执行所述机器可读指令,以执行如权利要求1-3和6-7任一所述的基于多算法结合的入侵检测方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311021655.2A CN116743509A (zh) | 2023-08-15 | 2023-08-15 | 基于多算法结合的入侵检测方法、装置及计算机设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311021655.2A CN116743509A (zh) | 2023-08-15 | 2023-08-15 | 基于多算法结合的入侵检测方法、装置及计算机设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116743509A true CN116743509A (zh) | 2023-09-12 |
Family
ID=87901609
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311021655.2A Pending CN116743509A (zh) | 2023-08-15 | 2023-08-15 | 基于多算法结合的入侵检测方法、装置及计算机设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116743509A (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019089389A1 (en) * | 2017-11-03 | 2019-05-09 | Arizona Board Of Regents On Behalf Of Arizona State University | Systems and methods for prioritizing software vulnerabilities for patching |
CN109831460A (zh) * | 2019-03-27 | 2019-05-31 | 杭州师范大学 | 一种基于协同训练的Web攻击检测方法 |
CN116366312A (zh) * | 2023-03-13 | 2023-06-30 | 天翼云科技有限公司 | 一种Web攻击检测方法、装置及存储介质 |
-
2023
- 2023-08-15 CN CN202311021655.2A patent/CN116743509A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019089389A1 (en) * | 2017-11-03 | 2019-05-09 | Arizona Board Of Regents On Behalf Of Arizona State University | Systems and methods for prioritizing software vulnerabilities for patching |
CN109831460A (zh) * | 2019-03-27 | 2019-05-31 | 杭州师范大学 | 一种基于协同训练的Web攻击检测方法 |
CN116366312A (zh) * | 2023-03-13 | 2023-06-30 | 天翼云科技有限公司 | 一种Web攻击检测方法、装置及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP4058916A1 (en) | Detecting unknown malicious content in computer systems | |
US20190155918A1 (en) | Real-time classification of evolving dictionaries | |
EP3933657A1 (en) | Conference minutes generation method and apparatus, electronic device, and computer-readable storage medium | |
WO2021227831A1 (zh) | 威胁情报的主题检测方法、装置和计算机存储介质 | |
EP3690759A1 (en) | Method and apparatus for constructing data model, and medium | |
Huang et al. | JSContana: Malicious JavaScript detection using adaptable context analysis and key feature extraction | |
Agrawal et al. | Neural sequential malware detection with parameters | |
CN108304382B (zh) | 基于制造过程文本数据挖掘的质量分析方法与系统 | |
CN108491228A (zh) | 一种二进制漏洞代码克隆检测方法及系统 | |
CN110532352A (zh) | 文本查重方法及装置、计算机可读存储介质、电子设备 | |
NL2029110B1 (en) | Method and system for static analysis of executable files | |
US10706030B2 (en) | Utilizing artificial intelligence to integrate data from multiple diverse sources into a data structure | |
CN109388551A (zh) | 预测代码存在漏洞概率的方法、漏洞检测方法、相关装置 | |
Yuan et al. | Graph attention network with memory fusion for aspect-level sentiment analysis | |
US20130132433A1 (en) | Method and system for categorizing web-search queries in semantically coherent topics | |
CN113988157A (zh) | 语义检索网络训练方法、装置、电子设备及存储介质 | |
CN111190873A (zh) | 一种用于云原生系统日志训练的日志模式提取方法及系统 | |
CN104881446A (zh) | 搜索方法及装置 | |
US20230081015A1 (en) | Method and apparatus for acquiring information, electronic device and storage medium | |
CN116743509A (zh) | 基于多算法结合的入侵检测方法、装置及计算机设备 | |
CN116302961A (zh) | Android应用程序密码学误用检测方法及装置 | |
CN110309278A (zh) | 关键词检索方法、装置、介质及电子设备 | |
Lim et al. | ClaimFinder: A Framework for Identifying Claims in Microblogs. | |
CN114896141A (zh) | 测试用例的去重方法、装置、设备及计算机可读存储介质 | |
CN113159107A (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 |