CN115225301B - 基于d-s证据理论的混合入侵检测方法和系统 - Google Patents
基于d-s证据理论的混合入侵检测方法和系统 Download PDFInfo
- Publication number
- CN115225301B CN115225301B CN202110431115.6A CN202110431115A CN115225301B CN 115225301 B CN115225301 B CN 115225301B CN 202110431115 A CN202110431115 A CN 202110431115A CN 115225301 B CN115225301 B CN 115225301B
- Authority
- CN
- China
- Prior art keywords
- flow
- message
- detection result
- module
- network
- 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
- 238000001514 detection method Methods 0.000 title claims abstract description 132
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 39
- 230000004927 fusion Effects 0.000 claims abstract description 24
- 239000013598 vector Substances 0.000 claims description 35
- 238000000605 extraction Methods 0.000 claims description 31
- 238000013527 convolutional neural network Methods 0.000 claims description 21
- 238000007637 random forest analysis Methods 0.000 claims description 19
- 230000002194 synthesizing effect Effects 0.000 claims description 4
- 238000000034 method Methods 0.000 description 17
- 238000004364 calculation method Methods 0.000 description 11
- 239000000284 extract Substances 0.000 description 7
- 238000013528 artificial neural network Methods 0.000 description 5
- 230000015572 biosynthetic process Effects 0.000 description 5
- 238000003786 synthesis reaction Methods 0.000 description 5
- 230000006399 behavior Effects 0.000 description 4
- 238000005336 cracking Methods 0.000 description 4
- 238000007781 pre-processing Methods 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 238000012549 training Methods 0.000 description 4
- 230000002159 abnormal effect Effects 0.000 description 3
- 238000003066 decision tree Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 238000010801 machine learning Methods 0.000 description 3
- 239000011159 matrix material Substances 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 2
- 239000002131 composite material Substances 0.000 description 2
- 125000004122 cyclic group Chemical group 0.000 description 2
- 238000013135 deep learning Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000011176 pooling Methods 0.000 description 2
- 238000012935 Averaging Methods 0.000 description 1
- 241000700605 Viruses Species 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000013145 classification model Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000007477 logistic regression Methods 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000012706 support-vector machine Methods 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
-
- 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
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/50—Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate
Abstract
本发明提供了一种基于D‑S证据理论的混合入侵检测方法和系统,包括:步骤1:以网络流量pcap文件为输入,使用开源流量特征提取工具提取网络流量特征,并记录每一个网络流量的五元组信息和时间戳;步骤2:从网络流量pcap文件中找出每个网络流量相应的报文并进行提取;步骤3:使用基于报文的IDS算法进行检测,得到报文检测结果;步骤4:使用基于流的IDS算法进行检测,得到流检测结果;步骤5:使用D‑S证据融合算法,得到最终检测结果。本发明的基于流和报文的IDS算法具有可替换性,D‑S证据推理算法可适用于多个安全告警来源的情景,拥有灵活的部署方式和良好的可扩展性。
Description
技术领域
本发明涉及计算机网络安全技术领域,具体地,涉及一种基于D-S证据理论的混合入侵检测方法和系统。
背景技术
随着互联网技术的发展和互联网应用场景的拓展,网络攻击技术不断推陈出新,网络攻击的危害越来越大。目前,常见的攻击方法包括端口扫描、拒绝服务攻击、暴力破解、僵尸网络、恶意代码等。入侵检测系统(Intrusion Detection System,以下简称IDS)是一种监控网络流量,根据算法发现可疑流量并发出警告的网络安全设备。IDS能够有效地发现恶意流量,有利于安全人员及时进行攻击拦截、采取安全措施,保证网络系统的安全。IDS根据信息来源可以分成基于主机的IDS和基于网络的IDS,基于网络的IDS收集网络流量,用原始的网络流量数据包作为信息源,本发明属于基于网络的IDS。IDS还可以根据检测方法分成异常检测和误用检测,其中误用检测对所有恶意行为建立模型,所有与恶意行为模型类似的流量被判定为入侵,本发明属于异常检测IDS。
异常检测IDS通常分为基于流和基于报文的IDS方法。基于报文的IDS方法以网络流量报文作为输入,报文由报头和数据段组成,其中报头包含地址信息和报文相关信息,数据段包含应用数据,因此数据段中可以挖掘出攻击流量的特征,比如暴力破解攻击中,攻击者的报文通常会出现password字段或是一些常见的密码,检测时匹配这些字段即可发现;而有些攻击报文中的特征不明显,这种情况可以使用卷积神经网络(CNN)和深度神经网络(DNN)进行特征提取和类别判断。基于流的IDS方法首先对原始报文进行处理,将一段时间内五元组(即源IP、目的IP、源端口、目的端口和协议)相同的报文聚合形成流,对流提取报文总数、报文长度、标志位个数、持续时间等特征,比如拒绝服务攻击在短时间内发送大量报文,因此报文总数、报文长度都较正常流有明显的上升,可以利用这些特征检测异常流量,常见的基于流的IDS方法使用传统机器学习算法(如支持向量机、逻辑回归、K近邻等),近年来使用深度神经网络(DNN)和决策树(如随机森林、XGBoost等)。另一类异常检测IDS结合了时间和空间特征,使用循环神经网络(RNN)在记录报文空间特征基础上,通过循环网络记录前n个报文与当前报文的关联性,以表征其时间特性,取得了良好的检测效果,但模型大多计算成本高,不利于实际部署。
目前IDS领域在部署上存在很多问题,尤其是在物联网、边缘计算等场景中。第一,节点需要处理大量数据。在如今的大数据时代,每个端设备会接收大量的网络数据,IDS一般部署在交换机上,所监控的端设备数量多,流量大。基于报文的IDS方法仅需要一个报文即可获得检测结果,因此检测周期短,能更快发现攻击流量,但是面对大量流量时可能会出现延迟;基于流的IDS方法可以减小处理数据量,但是一般收集完整的流需要较长时间,检测周期会增加。本发明的IDS系统结合两种方法,仅取每个流的前3个报文,减小基于报文的IDS方法需要处理的数据量;流的数据源流量按时间截取,缩短检测周期。第二,节点算力和存储不够。IDS领域学术界已经设计出多种基于深度学习的IDS算法,取得了高准确率和多攻击方式的覆盖,但是一般深度学习网络的层数较高、参数较多,需要高算力和高存储能力,导致IDS的部署成本很高。本发明的IDS系统采用浅层CNN网络和随机森林,参数相对较少,降低了对算力和存储的要求,通过Dempster-Shafer理论将两个方法的预测结果融合得到高准确率。
Dempster-Shafer证据融合理论(以下简称D-S理论),是由20世纪60年代的数学家A.P.Dempster与他的学生Shafer建立的一种不精确推理理论,属于人工智能范畴,最早应用于专家系统中,具有处理不确定信息的能力。通过Dempster合成规则将多个信息源的证据融合,比如多个传感器、多个分类器、多个人的判断。D-S理论是对贝叶斯推理方法的推广,相比贝叶斯推理,D-S理论不需要知道先验概率,能够很好地表示“不确定性”,被广泛用来处理不确定数据。本发明的系统使用D-S理论融合基于流和基于报文的IDS预测结果,提高系统的准确率。
网络攻击的类型很多,以下列举6种攻击类型:暴力破解、分布式拒绝服务、端口扫描、慢速拒绝服务攻击、僵尸网络和暗网流量。暴力破解主要针对SSH和FTP,通过反复尝试猜解账号密码,取得未授权登陆的能力。分布式拒绝服务攻击是指处于不同位置的多个攻击者对同一个目标发起攻击,发送大量要求回复的消息,消耗网络带宽或系统资源,导致受害者无法响应正常的请求。端口扫描属于攻击的信息收集阶段,攻击者发送一组端口扫描消息,探查目标主机打开了哪些端口,以此得知开放了哪些服务,针对这些服务挖掘漏洞,常见的端口扫描包括TCP connect扫描、TCP SYN扫描、TCPFIN扫描等。慢速拒绝服务攻击常见于针对Web服务器的拒绝服务攻击,原理是发送http报文使服务器保持连接等待,以此消耗服务器资源,但是无需像分布式拒绝服务攻击发送大量消息。僵尸网络是指通过一种或多种传播手段,使大量主机感染僵尸程序病毒,从而控制多个主机的一种攻击方式,被感染的主机通过控制信道接收攻击者的命令,共同完成攻击者发布的后续攻击任务,比如分布式拒绝服务攻击。暗网需要一些特定的软件和授权才能进入,数据流量大多进行加密,且通过虚拟货币交易,由于其匿名性,导致暗网成为非法活动的重灾区,暗网流量也是IDS系统的主要目标之一。
专利文献CN103077347B(申请号:CN201210564255.1)公开了一种网络安全技术领域中基于改进核心向量机数据融合的复合式入侵检测方法。本发明从目标网络的网络安全设备日志中提取误用入侵检测和异常入侵检测所需要的各时间监测点的特征数据;将特征数据分别构造为黑、白名单数据样本子集;对黑、白名单数据样本子集进行训练,分别得到初级误用入侵检测模型和初级异常检测模型;通过D-S证据理论实现初级误用入侵检测模型和初级异常检测模型的数据融合,从而得到复合入侵检测模型以及该检测模型的联合置信区间;得到最终检测结果。
发明内容
针对现有技术中的缺陷,本发明的目的是提供一种基于D-S证据理论的混合入侵检测方法和系统。
根据本发明提供的基于D-S证据理论的混合入侵检测方法,包括:
步骤1:以网络流量pcap文件为输入,使用开源流量特征提取工具提取网络流量特征,并记录每一个网络流量的五元组信息和时间戳;
步骤2:根据五元组信息和时间戳,从网络流量pcap文件中找出每个网络流量相应的报文并进行提取;
步骤3:根据报文的提取结果,使用基于报文的IDS算法进行检测,得到报文检测结果;
步骤4:对提取的网络流量特征,使用基于流的IDS算法进行检测,得到流检测结果;
步骤5:使用D-S证据融合算法,综合报文检测结果和流检测结果,得到最终检测结果。
优选的,所述步骤1包括:
步骤101:根据检测周期,使用流量分析软件抓取时间窗口内的网络流量,并保存为pcap文件;
步骤102:将pcap文件输入流量特征提取工具中,提取包括流持续时间、报文总数、报文长度、每秒字节数、每秒报文数、标志位数量的特征,并记录每一个流的目的IP、源IP、目的端口、源端口、协议号和时间戳;
步骤103:将提取的流量特征保存为tsv文件。
优选的,所述步骤2包括:
步骤201:根据五元组信息和时间戳,在pcap文件中进行比对,找到每个流的前n个报文;
步骤202:对每一个报文,使用python的scapy库进行报文解析,将IP地址、MAC地址置0;
步骤203:对每一个报文,提取报文的前784字节,并将提取的特征保存为tsv文件。
优选的,所述步骤3包括:
步骤301:使用python的numpy库将提取的报文数据从tsv文件中读入;
步骤302:将报文数据输入训练后的基于报文的IDS模型进行检测,得到报文检测结果,输出一个k*1的向量,表示预测为k种类别的概率,k包括1种正常流量和k-1种攻击流量。
优选的,所述步骤4包括:
步骤401:使用python的numpy库将提取的流量特征数据从tsv文件中读入;
步骤402:将流量特征数据输入训练后的基于流的IDS模型进行检测,得到流检测结果,输出一个k*1的向量,表示预测为k种类别的概率,k包括1种正常流量和k-1种攻击流量。
优选的,所述步骤5包括:
步骤501:将报文检测结果和流检测结果按照流的信息进行匹配,对于每一个流,记录1个流检测结果向量k*1和n个报文检测结果矩阵n*k*1;
步骤502:对于每一个流,将流检测结果和报文检测结果进行D-S证据融合,首先将n*k*1向量取平均值得到k*1向量,根据下列公式计算出1个k*1的向量,作为流和报文综合判断的结果;
其中:m1和m2均为信息源;B和C表示各信息源判断结果;m1(B)表示信息源m1判别为B的概率;X表示为一个假设;K为正交系数,表示不同假设证据间对于某假设的冲突;表示融合证据后X假设的概率;
步骤503:在检测结果向量中,选取概率最大的一项作为最终检测结果,并向用户报告检测结果。
根据本发明提供的基于D-S证据理论的混合入侵检测系统,包括:
模块M1:以网络流量pcap文件为输入,使用开源流量特征提取工具提取网络流量特征,并记录每一个网络流量的五元组信息和时间戳;
模块M2:根据五元组信息和时间戳,从网络流量pcap文件中找出每个网络流量相应的报文并进行提取;
模块M3:根据报文的提取结果,使用基于报文的IDS算法进行检测,得到报文检测结果;
模块M4:对提取的网络流量特征,使用基于流的IDS算法进行检测,得到流检测结果;
模块M5:使用D-S证据融合算法,综合报文检测结果和流检测结果,得到最终检测结果。
优选的,所述模块M1包括:
模块M101:根据检测周期,使用流量分析软件抓取时间窗口内的网络流量,并保存为pcap文件;
模块M102:将pcap文件输入流量特征提取工具中,提取包括流持续时间、报文总数、报文长度、每秒字节数、每秒报文数、标志位数量的特征,并记录每一个流的目的IP、源IP、目的端口、源端口、协议号和时间戳;
模块M103:将提取的流量特征保存为tsv文件;
所述模块M2包括:
模块M201:根据五元组信息和时间戳,在pcap文件中进行比对,找到每个流的前n个报文;
模块M202:对每一个报文,使用python的scapy库进行报文解析,将IP地址、MAC地址置0;
模块M203:对每一个报文,提取报文的前784字节,并将提取的特征保存为tsv文件。
优选的,所述模块M3包括:
模块M301:使用python的numpy库将提取的报文数据从tsv文件中读入;
模块M302:将报文数据输入训练后的基于报文的IDS模型进行检测,得到报文检测结果,输出一个k*1的向量,表示预测为k种类别的概率,k包括1种正常流量和k-1种攻击流量;
所述模块M4包括:
模块M401:使用python的numpy库将提取的流量特征数据从tsv文件中读入;
模块M402:将流量特征数据输入训练后的基于流的IDS模型进行检测,得到流检测结果,输出一个k*1的向量,表示预测为k种类别的概率,k包括1种正常流量和k-1种攻击流量。
优选的,所述模块M5包括:
模块M501:将报文检测结果和流检测结果按照流的信息进行匹配,对于每一个流,记录1个流检测结果向量k*1和n个报文检测结果矩阵n*k*1;
模块M502:对于每一个流,将流检测结果和报文检测结果进行D-S证据融合,首先将n*k*1向量取平均值得到k*1向量,根据下列公式计算出1个k*1的向量,作为流和报文综合判断的结果;
其中:m1和m2均为信息源;B和C表示各信息源判断结果;m1(B)表示信息源m1判别为B的概率;X表示为一个假设;K为正交系数,表示不同假设证据间对于某假设的冲突;表示融合证据后X假设的概率;
模块M503:在检测结果向量中,选取概率最大的一项作为最终检测结果,并向用户报告检测结果。
与现有技术相比,本发明具有如下的有益效果:
(1)本发明中基于流的算法提取网络流量的时间特征,基于报文的算法提取网络流量的空间特征,两种算法的结合可以全面地提取流量特征,提高IDS的准确率;在数据处理上,根据基于流的IDS子系统收集的数据,选择每个流对应的部分报文数据,为基于报文的IDS子系统减小了处理的数据量;
(2)本系统使用的IDS算法可以是传统机器学习方法或浅层神经网络方法,在计算成本上远小于学术界常见的深层神经网络算法;
(3)本系统将基于流和基于报文的预测结果通过D-S理论融合起来,并考虑模型的误漏报率作为D-S理论中证据的不确定度,明显提高了总体模型的准确率;本系统的检测周期可以根据实际需求动态选择,时间窗口越小,模型就可以越早发现攻击流量;
(4)本发明充分考虑到了IDS在实际部署中的问题,检测周期可以根据需要调整,基于流和基于报文IDS子模块的算法可以替换,D-S证据推理算法可以适用于多个安全告警来源的情景,拥有灵活的部署方式和良好的可扩展性。
附图说明
通过阅读参照以下附图对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显:
图1为基于D-S证据推理的混合入侵检测系统架构图;
图2为基于D-S证据推理的混合入侵检测系统数据流图。
具体实施方式
下面结合具体实施例对本发明进行详细说明。以下实施例将有助于本领域的技术人员进一步理解本发明,但不以任何形式限制本发明。应当指出的是,对本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变化和改进。这些都属于本发明的保护范围。
实施例:
本发明旨在解决入侵检测系统在实际部署中遇到的准确率低、算法成本高、检测周期难以确定等问题,提出一种基于流和基于报文的混合IDS架构。本发明的IDS框架可用于云雾计算、边缘计算、物联网等算力较小的网络环境,在保证计算成本低的情况下,使用常见的机器学习算法和低计算成本的Dempster-Shafer证据理论,提高IDS的准确率、减小漏报率和误报率,提高IDS系统对于云雾计算、边缘计算、物联网网络架构的安全防护能力。
本实施例实现的基于D-S证据推理的混合入侵检测系统,由报文特征提取子系统、流特征提取子系统、基于报文的IDS子系统、基于流的IDS子系统和基于D-S的证据融合子系统组成。本发明的系统以网络流量文件pcap格式为输入,经过数据预处理后,分别使用基于流的随机森林模型和基于报文的CNN模型两种检测算法对数据进行攻击检测,最后将两种算法的结果使用D-S证据融合算法进行综合,得到检测结果,向用户发出告警。本实施例中的使用的参数为:时间窗口w为5秒;数据处理时取流的前3个报文;分类模型输出类别k为7,分别为0:正常流量,1:暴力破解,2:分布式拒绝服务,3:端口扫描,4:慢速拒绝服务攻击,5:僵尸网络,6:暗网流量;基于流的IDS算法使用随机森林,基于报文的IDS算法使用CNN。该系统如图1所示,由以下模块组成,包括:
1)流特征提取子系统:输入为多个时间长度为5秒的网络流量pcap文件,使用开源流特征提取工具CICFlowMeter提取76个网络流特征,保存为tsv格式,并记录每一个流的五元组信息(源和目的地址、源和目的端口和协议)和时间戳,提交给报文特征提取子系统;
2)报文特征提取子系统:输入为网络流量pcap文件和流特征提取子系统提供的信息,根据该信息从pcap文件中找每个流相应的前3个报文,报文经过协议分析、IP和MAC信息置0后,提取每一个报文的前784字节,保存为tsv格式;
3)基于报文的IDS子系统:输入为报文特征提取子系统的特征提取结果,使用训练好的CNN模型进行检测,得到检测结果;
4)基于流的IDS子系统:输入为流特征提取子系统的特征提取结果,使用训练好的随机森林模型进行检测,得到检测结果;
5)基于D-S的证据融合子系统:基于流的IDS子系统输出对每一个流的预测结果,基于报文IDS子系统输出对每一个流的前3个报文的预测结果,使用D-S证据融合算法将这些对于同一个流的证据综合得到每一个流的预测结果。
图2详细显示了基于D-S证据推理的混合入侵检测系统的数据流图,可分为数据预处理、模型预测和D-S证据融合三个步骤。
数据预处理阶段包括将网络流量pcap数据的选择、删减,以及对报文和流特征的提取。本发明的IDS系统将基于流和基于报文的IDS方法结合,基于流的IDS主要提取网络流量的时间特征,基于报文的IDS主要提取网络流量的空间特征,即报文数据段中的特殊字段特征。本实施例分别提取网络流量中的流和流对应的前3个报文,对其进行特征提取。本系统接收pcap格式的静态网络流量数据,用户可以根据检测周期的需求抓取在一个固定时间窗口里的流量保存为pcap文件,时间窗口越短,系统可以越早检测出攻击行为流量,但提取的流特征不足,准确率会降低;时间窗口越长,提取的流特征足够,准确率提高,但是系统发现攻击行为时间越晚;本系统通过后续的基于D-S的证据融合子模块,通过报文特征弥补由于时间窗口选择导致的准确率下降。本实施例中使用Wireshark,选定每5秒获取一个pcap文件。流特征的提取使用开源工具CICFlowMeter,输入为pcap文件,输出为包含76个特征的csv文件,特征包括:流持续时间、报文总数、报文长度、每秒字节数、每秒报文数、标志位数量等。分析csv文件,得到每一个流的76个特征,以及每一个流的五元组和时间戳信息,流特征保存到tsv文件中,根据五元组和时间戳信息回到pcap文件中匹配每一个流的前3个报文。匹配的范围是pcap文件中的所有TCP、UDP和ICMP报文,根据流信息提取每一个流的前3个报文,对每一个报文将IP和MAC信息置0,并取前784字节作为该报文的特征,最后将所有匹配到的报文特征保存到tsv文件中。
模型预测阶段将数据预处理部分输出的流和报文的tsv文件分别输入到预测模型中,分别得到预测结果。流的tsv文件输入训练好的随机森林模型中。随机森林是一个包含多个决策树的分类器,本实施例的随机森林模型由CIC-IDS-2017、ISCX-Tor-2016、Botnet2014和CIC-DoS-2017混合数据集训练,训练时的模型参数为:树的个数100,每个决策树的最大特征数8,树的最大深度100,节点最少包含的样本个数2。随机森林模型得到每个流的预测结果,模型的输出为7*1的向量,表示预测为7种类别的概率。报文的tsv文件输入训练好的CNN模型中。CNN常用于图像分类预测任务,原理是CNN中的卷积层和池化层的组合可以挖掘出图像像素之间的关系特征,本系统中报文的前784字节可以看作28*28的图像,每一个字节大小范围为0-255,恰好是一个像素的范围大小,CNN可以挖掘报文数据之间的关系特征。CNN模型的数据与随机森林模型相同,训练时的模型结构为:32*5*5卷积层、64*5*5卷积层、2*2最大池化层、随机丢弃25%参数、展平层、128维全连接层、relu函数、随机丢弃50%参数、6维全连接层和softmax函数,训练参数为:批大小512,轮次500。CNN模型得到每个流对应的前3个报文的预测结果,模型的输出为7*3的矩阵,7种类别与随机森林模型输出相同。最后对7*3的矩阵取平均值,得到7*1向量,表示CNN模型对流的预测结果。
D-S证据融合阶段将模型预测阶段得到的随机森林预测结果7*1向量和CNN预测结果7*1向量通过Dempster合成规则,融合得到最终预测结果。D-S证据融合理论考虑到多个证据源存在时,每个信息源都有一定的“不确定度”,在此基础上通过合成规则将多个证据源的结果融合,得到最合理的判定结果。本实施例的D-S证据融合目标为随机森林和CNN两个信息源的输出概率结果,各信息源除了7个类别的概率,还将该模型的误漏报率,即(1-准确率)作为不确定度,形成8*1的预测结果向量。本实施例中随机森林和CNN的不确定度分别为α=0.01,β=0.04。对两个信息源形成的8*2矩阵采用Dempster合成规则进行融合,首先计算归一化系数1-K的值:
式中m1和m2表示两个信息源,本实施例中即为随机森林和CNN;B、C表示各信息源判断结果,本系统中即为包含“不确定性”的8个预测类别,m1(B)表示信息源1判别为B的概率,本系统中即为模型判定为某类别的概率。然后使用Dempster合成规则:
其中:X表示为一个假设;K为正交系数,表示不同假设证据间对于某假设的冲突;表示融合证据后X假设的概率;
最终得到一个8*1的向量,表示两个模型对于网络流的综合判断结果,取其中概率最大的一类作为最终结果,向用户发出告警。
本领域技术人员知道,除了以纯计算机可读程序代码方式实现本发明提供的系统、装置及其各个模块以外,完全可以通过将方法步骤进行逻辑编程来使得本发明提供的系统、装置及其各个模块以逻辑门、开关、专用集成电路、可编程逻辑控制器以及嵌入式微控制器等的形式来实现相同程序。所以,本发明提供的系统、装置及其各个模块可以被认为是一种硬件部件,而对其内包括的用于实现各种程序的模块也可以视为硬件部件内的结构;也可以将用于实现各种功能的模块视为既可以是实现方法的软件程序又可以是硬件部件内的结构。
以上对本发明的具体实施例进行了描述。需要理解的是,本发明并不局限于上述特定实施方式,本领域技术人员可以在权利要求的范围内做出各种变化或修改,这并不影响本发明的实质内容。在不冲突的情况下,本申请的实施例和实施例中的特征可以任意相互组合。
Claims (5)
1.一种基于D-S证据理论的混合入侵检测方法,其特征在于,包括:
步骤1:以网络流量pcap文件为输入,使用开源流量特征提取工具提取网络流量特征,并记录每一个网络流量的五元组信息和时间戳;
步骤2:根据五元组信息和时间戳,从网络流量pcap文件中找出每个网络流量相应的报文并进行提取;
步骤3:根据报文的提取结果,使用基于报文的IDS算法进行检测,得到报文检测结果;
步骤4:对提取的网络流量特征,使用基于流的IDS算法进行检测,得到流检测结果;
步骤5:使用D-S证据融合算法,综合报文检测结果和流检测结果,得到最终检测结果;
基于报文的IDS算法:输入为报文特征提取子系统的特征提取结果,使用训练好的CNN模型进行检测,得到检测结果;
基于流的IDS算法:输入为流特征提取子系统的特征提取结果,使用训练好的随机森林模型进行检测,得到检测结果;
所述步骤3包括:
步骤301:使用python的numpy库将提取的报文数据从tsv文件中读入;
步骤302:将报文数据输入训练后的基于报文的IDS模型进行检测,得到报文检测结果,输出一个k*1的向量,表示预测为k种类别的概率,k包括1种正常流量和k-1种攻击流量;
所述步骤4包括:
步骤401:使用python的numpy库将提取的流量特征数据从tsv文件中读入;
步骤402:将流量特征数据输入训练后的基于流的IDS模型进行检测,得到流检测结果,输出一个k*1的向量,表示预测为k种类别的概率,k包括1种正常流量和k-1种攻击流量;
所述步骤5包括:
步骤501:将报文检测结果和流检测结果按照流的信息进行匹配,对于每一个流,记录1个流检测结果向量k*1和n个报文检测结果矩阵n*k*1;
步骤502:对于每一个流,将流检测结果和报文检测结果进行D-S证据融合,首先将n*k*1向量取平均值得到k*1向量,根据下列公式计算出1个k*1的向量,作为流和报文综合判断的结果;
其中:和/>均为信息源,分别为随机森林和CNN;B和C表示各信息源判断结果;/>表示信息源/>判别为B的概率;/>表示为一个假设;/>为正交系数,表示不同假设证据间对于某假设的冲突;/>表示融合证据后/>假设的概率;
步骤503:在检测结果向量中,选取概率最大的一项作为最终检测结果,并向用户报告检测结果。
2.根据权利要求1所述的基于D-S证据理论的混合入侵检测方法,其特征在于,所述步骤1包括:
步骤101:根据检测周期,使用流量分析软件抓取时间窗口内的网络流量,并保存为pcap文件;
步骤102:将pcap文件输入流量特征提取工具中,提取包括流持续时间、报文总数、报文长度、每秒字节数、每秒报文数、标志位数量的特征,并记录每一个流的目的IP、源IP、目的端口、源端口、协议号和时间戳;
步骤103:将提取的流量特征保存为tsv文件。
3.根据权利要求1所述的基于D-S证据理论的混合入侵检测方法,其特征在于,所述步骤2包括:
步骤201:根据五元组信息和时间戳,在pcap文件中进行比对,找到每个流的前n个报文;
步骤202:对每一个报文,使用python的scapy库进行报文解析,将IP地址、MAC地址置0;
步骤203:对每一个报文,提取报文的前784字节,并将提取的特征保存为tsv文件。
4.一种基于D-S证据理论的混合入侵检测系统,其特征在于,包括:
模块M1:以网络流量pcap文件为输入,使用开源流量特征提取工具提取网络流量特征,并记录每一个网络流量的五元组信息和时间戳;
模块M2:根据五元组信息和时间戳,从网络流量pcap文件中找出每个网络流量相应的报文并进行提取;
模块M3:根据报文的提取结果,使用基于报文的IDS算法进行检测,得到报文检测结果;
模块M4:对提取的网络流量特征,使用基于流的IDS算法进行检测,得到流检测结果;
模块M5:使用D-S证据融合算法,综合报文检测结果和流检测结果,得到最终检测结果;
基于报文的IDS算法:输入为报文特征提取子系统的特征提取结果,使用训练好的CNN模型进行检测,得到检测结果;
基于流的IDS算法:输入为流特征提取子系统的特征提取结果,使用训练好的随机森林模型进行检测,得到检测结果;
所述模块M3包括:
模块M301:使用python的numpy库将提取的报文数据从tsv文件中读入;
模块M302:将报文数据输入训练后的基于报文的IDS模型进行检测,得到报文检测结果,输出一个k*1的向量,表示预测为k种类别的概率,k包括1种正常流量和k-1种攻击流量;
所述模块M4包括:
模块M401:使用python的numpy库将提取的流量特征数据从tsv文件中读入;
模块M402:将流量特征数据输入训练后的基于流的IDS模型进行检测,得到流检测结果,输出一个k*1的向量,表示预测为k种类别的概率,k包括1种正常流量和k-1种攻击流量;
所述模块M5包括:
模块M501:将报文检测结果和流检测结果按照流的信息进行匹配,对于每一个流,记录1个流检测结果向量k*1和n个报文检测结果矩阵n*k*1;
模块M502:对于每一个流,将流检测结果和报文检测结果进行D-S证据融合,首先将n*k*1向量取平均值得到k*1向量,根据下列公式计算出1个k*1的向量,作为流和报文综合判断的结果;
其中:和/>均为信息源,分别为随机森林和CNN;B和C表示各信息源判断结果;/>表示信息源/>判别为B的概率;/>表示为一个假设;/>为正交系数,表示不同假设证据间对于某假设的冲突;/>表示融合证据后/>假设的概率;
模块M503:在检测结果向量中,选取概率最大的一项作为最终检测结果,并向用户报告检测结果。
5.根据权利要求4所述的基于D-S证据理论的混合入侵检测系统,其特征在于,所述模块M1包括:
模块M101:根据检测周期,使用流量分析软件抓取时间窗口内的网络流量,并保存为pcap文件;
模块M102:将pcap文件输入流量特征提取工具中,提取包括流持续时间、报文总数、报文长度、每秒字节数、每秒报文数、标志位数量的特征,并记录每一个流的目的IP、源IP、目的端口、源端口、协议号和时间戳;
模块M103:将提取的流量特征保存为tsv文件;
所述模块M2包括:
模块M201:根据五元组信息和时间戳,在pcap文件中进行比对,找到每个流的前n个报文;
模块M202:对每一个报文,使用python的scapy库进行报文解析,将IP地址、MAC地址置0;
模块M203:对每一个报文,提取报文的前784字节,并将提取的特征保存为tsv文件。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110431115.6A CN115225301B (zh) | 2021-04-21 | 2021-04-21 | 基于d-s证据理论的混合入侵检测方法和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110431115.6A CN115225301B (zh) | 2021-04-21 | 2021-04-21 | 基于d-s证据理论的混合入侵检测方法和系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115225301A CN115225301A (zh) | 2022-10-21 |
CN115225301B true CN115225301B (zh) | 2023-11-21 |
Family
ID=83604732
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110431115.6A Active CN115225301B (zh) | 2021-04-21 | 2021-04-21 | 基于d-s证据理论的混合入侵检测方法和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115225301B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116455800A (zh) * | 2023-03-10 | 2023-07-18 | 华中科技大学 | 基于d-s证据理论的物联网信度覆盖可靠性评估方法 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105681339A (zh) * | 2016-03-07 | 2016-06-15 | 重庆邮电大学 | 一种融合粗糙集与ds证据理论的增量式入侵检测方法 |
CN108306894A (zh) * | 2018-03-19 | 2018-07-20 | 西安电子科技大学 | 一种基于攻击发生置信度的网络安全态势评估方法及系统 |
CN110753064A (zh) * | 2019-10-28 | 2020-02-04 | 中国科学技术大学 | 机器学习和规则匹配融合的安全检测系统 |
CN111031042A (zh) * | 2019-12-13 | 2020-04-17 | 电子科技大学 | 一种基于改进d-s证据理论的网络异常检测方法 |
WO2020147265A1 (zh) * | 2019-01-14 | 2020-07-23 | 南京信息工程大学 | 一种基于多源信息融合的移动电子商务推荐方法和系统 |
CN112422531A (zh) * | 2020-11-05 | 2021-02-26 | 博智安全科技股份有限公司 | 基于CNN和XGBoost的网络流量异常行为检测方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110334740A (zh) * | 2019-06-05 | 2019-10-15 | 武汉大学 | 人工智能推理融合的电力设备故障检测定位方法 |
-
2021
- 2021-04-21 CN CN202110431115.6A patent/CN115225301B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105681339A (zh) * | 2016-03-07 | 2016-06-15 | 重庆邮电大学 | 一种融合粗糙集与ds证据理论的增量式入侵检测方法 |
CN108306894A (zh) * | 2018-03-19 | 2018-07-20 | 西安电子科技大学 | 一种基于攻击发生置信度的网络安全态势评估方法及系统 |
WO2020147265A1 (zh) * | 2019-01-14 | 2020-07-23 | 南京信息工程大学 | 一种基于多源信息融合的移动电子商务推荐方法和系统 |
CN110753064A (zh) * | 2019-10-28 | 2020-02-04 | 中国科学技术大学 | 机器学习和规则匹配融合的安全检测系统 |
CN111031042A (zh) * | 2019-12-13 | 2020-04-17 | 电子科技大学 | 一种基于改进d-s证据理论的网络异常检测方法 |
CN112422531A (zh) * | 2020-11-05 | 2021-02-26 | 博智安全科技股份有限公司 | 基于CNN和XGBoost的网络流量异常行为检测方法 |
Also Published As
Publication number | Publication date |
---|---|
CN115225301A (zh) | 2022-10-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11038906B1 (en) | Network threat validation and monitoring | |
Sahi et al. | An efficient DDoS TCP flood attack detection and prevention system in a cloud environment | |
Kirubavathi et al. | Botnet detection via mining of traffic flow characteristics | |
KR102135024B1 (ko) | IoT 디바이스에 대한 사이버 공격의 종류를 식별하는 방법 및 그 장치 | |
CN107040517B (zh) | 一种面向云计算环境的认知入侵检测方法 | |
US9094288B1 (en) | Automated discovery, attribution, analysis, and risk assessment of security threats | |
Shaikh et al. | A machine learning model for classifying unsolicited IoT devices by observing network telescopes | |
CN108632269B (zh) | 基于c4.5决策树算法的分布式拒绝服务攻击检测方法 | |
Jiang et al. | An approach to detect remote access trojan in the early stage of communication | |
Kundu et al. | Detection and classification of botnet traffic using deep learning with model explanation | |
CN113518042B (zh) | 一种数据处理方法、装置、设备及存储介质 | |
US7269649B1 (en) | Protocol layer-level system and method for detecting virus activity | |
D’Angelo et al. | DNS tunnels detection via DNS-images | |
Kumar et al. | Detecting intrusions and attacks in the network traffic using anomaly based techniques | |
Nair et al. | A study on botnet detection techniques | |
Kiflay et al. | A network intrusion detection system using ensemble machine learning | |
Shahrestani et al. | Architecture for applying data mining and visualization on network flow for botnet traffic detection | |
CN115225301B (zh) | 基于d-s证据理论的混合入侵检测方法和系统 | |
KR100950079B1 (ko) | 은닉마코프 모델을 이용한 확률적인 네트워크 이상징후탐지 장치 및 그 방법 | |
Yusufovna | Integrating intrusion detection system and data mining | |
Gandhi et al. | Detecting and preventing attacks using network intrusion detection systems | |
Keshri et al. | DoS attacks prevention using IDS and data mining | |
McLaren et al. | Mining malware command and control traces | |
Ulemale | Review on detection of DDOS attack using machine learning | |
CN115174240A (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 |