CN116232761A - 基于shapelet的网络异常流量检测方法及系统 - Google Patents

基于shapelet的网络异常流量检测方法及系统 Download PDF

Info

Publication number
CN116232761A
CN116232761A CN202310488197.7A CN202310488197A CN116232761A CN 116232761 A CN116232761 A CN 116232761A CN 202310488197 A CN202310488197 A CN 202310488197A CN 116232761 A CN116232761 A CN 116232761A
Authority
CN
China
Prior art keywords
shapelet
sequence
data
flow
traffic
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.)
Granted
Application number
CN202310488197.7A
Other languages
English (en)
Other versions
CN116232761B (zh
Inventor
谢昕
喻思
李钊
李紫熙
吴登权
郑文彬
郑晗欣
熊申平
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
East China Jiaotong University
Original Assignee
East China Jiaotong University
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by East China Jiaotong University filed Critical East China Jiaotong University
Priority to CN202310488197.7A priority Critical patent/CN116232761B/zh
Publication of CN116232761A publication Critical patent/CN116232761A/zh
Application granted granted Critical
Publication of CN116232761B publication Critical patent/CN116232761B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • H04L63/1425Traffic logging, e.g. anomaly detection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE 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/00Reducing energy consumption in communication networks
    • Y02D30/50Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Biophysics (AREA)
  • Evolutionary Computation (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Biomedical Technology (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Signal Processing (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Alarm Systems (AREA)

Abstract

本发明属于信息安全技术领域,涉及一种基于shapelet的网络异常流量检测方法及系统,该方法首先抓取流量并制作成csv文件,对csv文件进行数据预处理,再通过numpy处理成为npy文件,然后划分训练集和测试集;采用学习时间序列shapelet算法,生成流量数据时间序列中最具有代表性的shapelet序列;用shapelet序列训练CNN‑LSTM异常检测模型,用训练好的CNN‑LSTM异常检测模型进行流量异常检测,得到流量多分类检测结果。本发明采用shapelet时序数据处理技术得到shapelet序列,用于网络流量异常检测,可提高检测率,降低误报率和漏报率。

Description

基于shapelet的网络异常流量检测方法及系统
技术领域
本发明属于信息安全技术领域,具体涉及一种基于shapelet的网络异常流量检测方法及系统。
背景技术
互联网中的恶意攻击入侵行为层出不穷。随着互联网规模的扩大,产生了更大的网络流量和网络攻击面,使得保护网络信息和通信安全成为一个更具挑战性的问题,入侵检测技术对提高系统的安全水平起着至关重要的作用。目前以深度学习模型为代表的人工智能算法广泛应用,但是深度学习模型的本身其实并不是一个黑箱,其黑箱性在于我们没有办法用人类的日常思维去理解模型的具体含义和行为。神经网络的高度非线性性质使得我们无法很好地理解它,因此存在不可解释性(即“算法黑箱”),也引发了很多信息安全事故,也引起了社会的广泛关注,因此可解释性将成为人工智能算法发展的趋势。
专利申请号为CN202010951195.3的专利文献提出了一种基于CNN-LSTM的网络流量异常检测方法。但该方法在对数据集进行标签处理的时,只做了二分类,无法对异常流量做出快速且准确的多分类识别;而CNN-LSTM模型仍然是一个不可解释的“算法黑箱”。
现有流量异常检测技术的缺点可以总结归纳为:不能实现多分类,并且无法对深度学习模型进行“可解释性”的阐述,无法满足网络安全区域日益磅礴发展的需求。
shapelet的形状很容易可视化和理解,所以具备可解释性强的优点。shapelet作为一种象形化的时间序列特征提取方法,既能实现高精度的分类,又能提供模型可解释性功能。专利申请号为CN202110311321.3的发明方法中提出了一种基于快速提取shapelets的分类算法判断交通事故的方法,该方法在数据预处理阶段,将不同长度的id序列统一放大到最长id序列长度的2倍,该操作会增大数据量,且带来不必要的数据噪声,该方法在选取处理集s时,通过欧式距离计算距离阈值并不合理,也不能很好地衡量时序数据之间的距离。
目前网络安全威胁中,很多都表现出网络流量异常,因此对异常流量做出快速且准确的多分类识别,可以为网络安全态势指标评估和免疫决策提供知识支撑,从而提高网络安全应急组织的整体响应能力。
发明内容
针对现有技术的不足,本发明提出了一种基于shapelet的网络异常流量检测方法及系统。本发明采用shapelet时序数据处理技术,进行网络流量异常检测,从而构建高检测率、低误报率和漏报率,并且具备可解释性的网络流量异常检测模型。
本发明通过下述技术方案来实现。基于shapelet的网络异常流量检测方法,包括如下步骤:
步骤S1:抓取流量并制作成csv文件;
步骤S2:对csv文件进行数据预处理,再通过numpy处理成为npy文件,然后划分训练集和测试集;
步骤S3:采用学习时间序列shapelet算法,生成流量数据时间序列的shapelet序列,随着流量数据时间序列的数量线性缩放,在缩放不变性、平移不变性和移位不变性下,通过k-shape聚类比较shapelet序列和计算质心,初始化多个shapelet序列,通过DTW距离筛选最佳shapelet序列;
步骤S4:用最佳shapelet序列训练CNN-LSTM异常检测模型,用训练好的CNN-LSTM异常检测模型进行流量异常检测,得到流量多分类检测结果。
具体地,步骤S1中,抓取某一时间段的连续网络流量数据,存储为pcap文件,然后,使用cicflowmeter工具提取pcap文件的统计信息,以csv文件的形式输出pcap文件中包含共84维的特征信息。
具体地,采用pytorch框架对csv文件进行数据预处理,找到csv文件中的空值、缺失值、无穷值,将其用0替代。
具体地,生成流量数据时间序列的shapelet序列的方式如下:n个流量数据时间序列组成的流量数据时间序列集T={T1,…,Tn},T1为第1个流量数据时间序列,Tn为第n个流量数据时间序列,第i个流量数据时间序列Ti由Q个元素组成:Ti={ Ti,1,…,Ti,Q},Ti,1表示第i个流量数据时间序列的第1个元素,Ti,Q表示第i个流量数据时间序列的第Q个元素,Ti,j:L表示第i个流量数据时间序列中长度为L的第j段:Ti,j:L={Ti,j,…,Ti,j+L-1},Ti,j 表示第i个流量数据时间序列的第j个元素,Ti,j+L-1表示第i个流量数据时间序列的第j+L-1个元素;设长度为L的shapelet序列是由L个值组成的有序序列,shapelet序列子集S={S1,…,Sk},S1为第1个shapelet序列,Sk为第k个shapelet序列,第k个shapelet序列由L个值组成,Sk={Sk,1,…,Sk,L},Sk,1表示为第k个shapelet序列的第1个元素,Sk,L表示为第k个shapelet序列的第L个元素。
具体地,通过k-shape聚类比较shapelet序列和计算质心具体过程为:使用互相关作为流量数据时间序列集T和shapelet序列子集S的统计度量,用互相关来确定流量数据时间序列集T和shapelet序列子集S的相似性;
Figure SMS_1
式中,CCw表示流量数据时间序列集T和shapelet序列子集S的相似度,是长度为n+k-1的互相关序列,
Figure SMS_2
表示第w个互相性值,w∈{1,2,…,n+k-1};
对CCw进行归一化:
Figure SMS_3
式中,NCCb为有偏估计量;
质心为与所有其他数据点的距离平方和最小的数据点;一个shapelet序列存在n个观测点,即有Sk={ x1,x2,…,xi,…,xn},xi为第i个观测点,i=1,2,…,n;聚类是将k个shapelet序列划分为M成对不相交的簇,M< k,簇集合P={ p1,…,pm,…,pM}, pm代表第m个簇,m∈{1,2,…,M},即有xi∈pm
第i个质心
Figure SMS_4
的计算定义如下,其中/>
Figure SMS_5
表示的是向量空间内的所有点:/>
Figure SMS_6
将最优质心
Figure SMS_7
转换为观测点/>
Figure SMS_8
与候选质心有偏估计量/>
Figure SMS_9
的最大化,公式如下:
Figure SMS_10
式中,
Figure SMS_11
为最优质心。
具体地,通过DTW距离筛选最佳shapelet序列是指:引入DTW距离计算方式作为衡量指标,对shapelet序列进行筛选,使得在簇pm中的shapelet序列在形状上具有相似的特征;
第k个shapelet序列Sk
Figure SMS_12
之间的欧氏分数定义为:
Figure SMS_13
式中,
Figure SMS_14
表示为第k个shapelet序列的第/>
Figure SMS_15
个元素,/>
Figure SMS_16
第k个shapelet序列Sk和第i个流量数据时间序列Ti之间的shapelet变换定义为:
Figure SMS_17
给定一组shapelet序列子集S,将第i个流量数据时间序列Ti转换成
Figure SMS_18
维向量/>
Figure SMS_19
,且/>
Figure SMS_20
的分量是/>
Figure SMS_21
,/>
Figure SMS_22
为第i个流量数据时间序列Ti的shapelet变换;
Figure SMS_25
和/>
Figure SMS_28
是流量数据时间序列集T中的两个相邻的时间序列,设/>
Figure SMS_31
和/>
Figure SMS_24
的shapelet变换分别记为/>
Figure SMS_27
和/>
Figure SMS_30
,并将/>
Figure SMS_32
和/>
Figure SMS_23
之间的动态时间弯曲测度记为:/>
Figure SMS_26
,损失/>
Figure SMS_29
定义为:
Figure SMS_33
其中
Figure SMS_34
是尺度参数,N个流量数据时间序列T的总损失为:
Figure SMS_35
学习流量数据时间序列T对应的shapelet序列子集S和尺度参数
Figure SMS_36
,使总体损失最小化。
具体地,将shapelet序列输入到已训练好的CNN-LSTM异常检测模型中,进行检测,使用torch.max()方法计算CNN-LSTM异常检测模型中每个类别的最大值并返回其索引值,即该类别的标签值,输出异常检测结果。
本发明还提供了基于shapelet的网络异常流量检测系统,包括流量抓取模块、数据预处理模块、算法生成shapelet序列模块和CNN-LSTM异常检测模块;所述流量抓取模块进行实时连续的网络设备流量抓取,提取流量数据的特征维度,存为csv文件;数据预处理模块对特征维度提取后的数据进行数据清洗、数据划分、数据变换操作;算法生成shapelet序列模块加载预处理后的原始流量时间数据,学习生成shapelet序列,shapelet序列输入CNN-LSTM异常检测模块中进行网络异常流量检测。
本发明提供了一种非易失性计算机存储介质,计算机存储介质存储有计算机可执行指令,该计算机可执行指令可执行上述任意实施例中的基于shapelet的网络异常流量检测方法。
本发明还提供一种计算机程序产品,计算机程序产品包括存储在非易失性计算机存储介质上的计算机程序,计算机程序包括程序指令,当程序指令被计算机执行时,使计算机执行上述实施例的基于shapelet的网络异常流量检测方法。
本发明提供一种电子设备,包括:至少一个处理器,以及与所述至少一个处理器通信连接的存储器,其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行基于shapelet的网络异常流量检测方法。
本发明具有如下优点:实现流量数据的实时采集,多分类标记。采用wireshark软件对网络设备进行某一时间段的连续网络流量包抓取,存储为pcap文件。然后,使用cicflowmeter工具提取pcap包的统计信息,以csv表格的形式输出pcap文件中包含84维的数据包特征信息。筛选主机ip,对流量数据做多分类标记。该数据集既能适用于各种类型的异常流量检测系统,又能实现网络流量异常的多分类。
引入shapelet时序数据处理技术,提高深度学习模型的可解释性。将shapelet时序数据处理技术引入网络流量异常检测,构建了一个高检测率、低误报率和漏报率,并且具备可解释性的网络流量异常检测模型。
采用k-shape聚类初始化多个相同长度的shapelet。k-shape是专门针对时间序列数据设计的聚类算法,能更好地处理具有不同幅度和相位差的时间序列数据。它使用一种称为互相关的距离度量方法,考虑了时间序列的尺度和平移变化,这使得其能更好地处理时间序列数据,并提高聚类效果。
用torch.max()方法计算得到标签值,直接输出正、异常多分类的结果。大部分现有的异常检测模型,都只是单单地展示正确率、f1-score、真假阳性率等模型预测评价指标,并不能输出流量异常检测的标签结果。本发明使用torch.max()方法计算模型中每个类别的最大值并返回其索引值,即该类别的标签值,可直接将正、异常多分类的结果输出。当网络系统被攻击时,有效地检测流量出攻击类型,可以更快速地帮助人们找到应对措施,减少损失。
附图说明
图1为本发明的基于shapelet的网络异常流量检测方法流程图。
具体实施方式
下面结合附图进一步详细阐明本发明。
如图1所示,基于shapelet的网络异常流量检测方法,包括如下步骤:
步骤S1:抓取流量并制作成csv文件。抓取某一时间段的连续网络流量数据,存储为pcap文件。然后,使用cicflowmeter工具提取pcap文件的统计信息,以csv文件的形式输出pcap文件中包含共84维的特征信息。
步骤S2:对csv文件进行数据预处理,再通过numpy处理成为npy文件,然后划分训练集和测试集。采用pytorch框架对csv文件进行数据预处理:首先,找到csv文件中的空值、缺失值、无穷值等,将其用0替代;其次,人工筛选正常流量与异常流量,进行标签赋值;然后将已经做好标签赋值的csv文件,进行标准化处理,并使用numpy保存为标准二进制文件。以8:2的比例划分训练集和测试集。
步骤S3:采用学习时间序列shapelet算法,生成流量数据时间序列中最具有代表性的shapelet序列。首先,采用k-shape初始化多个相同长度的shapelet序列。引入DTW距离计算方式作为衡量指标,对shapelet序列进行筛选,使得在相同簇中的shapelet序列在形状上具有相似的特征,并将其转化为损失函数的最小化。优化算法的权重、参数,学习生成最佳shapelet序列。
步骤S4:用最佳shapelet序列训练CNN-LSTM异常检测模型,用训练好的CNN-LSTM异常检测模型进行流量异常检测,得到流量多分类检测结果。
所述CNN-LSTM异常检测模型由一维卷积、最大池化、lstm、dropout层构成, 如中国专利申请CN202010951195.3所公开。CNN-LSTM异常检测模型使用relu作为激活函数、通过softmax函数进行归一化。
将shapelet序列输入到已训练好的CNN-LSTM异常检测模型中,进行检测,使用torch.max()方法计算CNN-LSTM异常检测模型中每个类别的最大值并返回其索引值,即该类别的标签值,输出异常检测结果。并采用平均绝对误差(mae)和均方根误差(rmse)作为误差评估指标,来定量地分析CNN-LSTM异常检测模型预测效果。
本实施例使用学习时间序列shapelet算法生成shapelet序列的过程如下:
n个流量数据时间序列组成的流量数据时间序列集T={T1,…,Tn},T1为第1个流量数据时间序列,Tn为第n个流量数据时间序列,假设T中的所有流量数据时间序列都具有相同的长度Q(本发明提出的方法对不同长度的时间序列同样有效)。第i个流量数据时间序列Ti由Q个元素组成:Ti={ Ti,1,…,Ti,Q},Ti,1表示第i个流量数据时间序列的第1个元素,Ti,Q表示第i个流量数据时间序列的第Q个元素。Ti,j:L表示第i个流量数据时间序列中长度为L的第j段:Ti,j:L={Ti,j,…,Ti,j+L-1},Ti,j 表示第i个流量数据时间序列的第j个元素,Ti,j+L-1表示第i个流量数据时间序列的第j+L-1个元素;设长度为L的shapelet序列是由L个值组成的有序序列,shapelet序列子集S={S1,…,Sk},S1为第1个shapelet序列,Sk为第k个shapelet序列,第k个shapelet序列由L个值组成,Sk={ Sk,1,…,Sk,L},Sk,1表示为第k个shapelet序列的第1个元素,Sk,L表示为第k个shapelet序列的第L个元素。
首先,采用k-shape聚类进行距离测度和质心的计算。
使用互相关 ( cross-correlation)作为流量数据时间序列集T和shapelet序列子集S的统计度量,用互相关来确定流量数据时间序列集T和shapelet序列子集S的相似性。考虑到shapelet序列子集S在对齐流量数据时间序列集T时,所有可能的位移,本发明做以下定义:
Figure SMS_37
,/>
式中,CCw表示流量数据时间序列集T和shapelet序列子集S的相似度,是长度为n+k-1的互相关序列,
Figure SMS_38
表示第w个互相性值,w∈{1,2,…,n+k-1}。
对CCw进行归一化,定义如下:
Figure SMS_39
式中,NCCb为有偏估计量。
质心被定义为与所有其他数据点的距离平方和最小的数据点。一个shapelet序列存在n个观测点,即有Sk={ x1,x2,…,xi,…,xn},xi为第i个观测点,i=1,2,…,n;聚类是将k个shapelet序列划分为M成对不相交的簇,M< k,簇集合P={ p1,…,pm,…,pM}, pm代表第m个簇 ,m∈{1,2,…,M},即有xi∈pm
第i个质心
Figure SMS_40
的计算定义如下,其中/>
Figure SMS_41
表示的是向量空间内的所有点:
Figure SMS_42
目标是找到距离平方和最小值。但由于互相关直观的捕捉了时间序列的相似性,而不是差异性,将最优质心
Figure SMS_43
转换为观测点/>
Figure SMS_44
与候选质心有偏估计量/>
Figure SMS_45
的最大化,公式如下:
Figure SMS_46
式中,
Figure SMS_47
为最优质心。
随着流量数据时间序列的数量线性缩放,在缩放不变性、平移不变性和移位不变性下,通过k-shape聚类比较shapelet序列和计算质心,初始化多个shapelet序列。
引入DTW距离计算方式作为衡量指标,对shapelet序列进行筛选,使得在簇pm中的shapelet序列在形状上具有相似的特征。并将该问题转化为损失函数最小化。具体步骤,如下:
第k个shapelet序列Sk
Figure SMS_48
之间的欧氏分数定义为:
Figure SMS_49
式中,
Figure SMS_50
是指第i个流量数据时间序列中长度为L的第j段,/>
Figure SMS_51
是指第i个流量数据时间序列中第/>
Figure SMS_52
个元素,/>
Figure SMS_53
表示为第k个shapelet序列的第/>
Figure SMS_54
个元素,/>
Figure SMS_55
第k个shapelet序列Sk和第i个流量数据时间序列Ti之间的shapelet变换定义为:
Figure SMS_56
给定一组shapelet序列子集S,将第i个流量数据时间序列Ti转换成
Figure SMS_57
维向量/>
Figure SMS_58
,且/>
Figure SMS_59
的分量是/>
Figure SMS_60
,/>
Figure SMS_61
为第i个流量数据时间序列Ti的shapelet变换。/>
Figure SMS_63
和/>
Figure SMS_67
是流量数据时间序列集T中的两个相邻的时间序列。设/>
Figure SMS_71
和/>
Figure SMS_65
的shapelet变换分别记为/>
Figure SMS_68
和/>
Figure SMS_72
。并将/>
Figure SMS_74
和/>
Figure SMS_62
之间的动态时间弯曲测度记为:/>
Figure SMS_66
。由/>
Figure SMS_70
和/>
Figure SMS_73
的欧式距离近似/>
Figure SMS_64
所引起的损失/>
Figure SMS_69
定义为:
Figure SMS_75
其中
Figure SMS_76
是尺度参数,N个流量数据时间序列T的总损失为:
Figure SMS_77
学习流量数据时间序列T对应的shapelet序列子集S和尺度参数
Figure SMS_78
,使总体损失最小化。采用随机梯度下降框架来学习导致L(T)最小化。
本实施例提供了基于shapelet的网络异常流量检测系统,包括流量抓取模块、数据预处理模块、算法生成shapelet序列模块和CNN-LSTM异常检测模块。
所述流量抓取模块进行实时连续的网络设备流量抓取,提取流量数据的特征维度,存为csv文件。
数据预处理模块对特征维度提取后的数据进行数据清洗、数据划分、数据变换等操作。
数据清洗:首先,找出数据集中空值、缺失值、无穷大值等值,用0去替代它们;其次,人工筛选正常流量与异常流量,进行标签赋值。
数据划分:将已做好标签赋值的csv文件以8:2的比例划分训练集和测试集。
数据变换:对数据进行标准化处理,设置每个维度的均值为0、标准差为1,完成时间序列各个维度的标准化,处理后的数据保存为标准二进制文件,供后续模块加载使用。
算法生成shapelet序列模块加载预处理后的原始流量时间数据,学习生成shapelet序列。
首先,采用k-shape聚类方式,进行距离测度和质心的计算,初始化shapelet序列子集;
其次,引入DTW作为衡量指标,对shapelet序列候选者进行筛选,使聚类后同簇内的shapelet序列在形状上具有相似的特征;
最后,将以上问题转化为损失函数的最小化,学习到流量数据时间序列T对应的shapelet序列子集S和一个尺度参数
Figure SMS_79
CNN-LSTM异常检测模块将测试集的shapelet序列输入到已用训练集shapelet序列训练好的CNN-LSTM异常检测模型中,进行检测,使用torch.max()方法计算CNN-LSTM异常检测模型中每个类别的最大值并返回其索引值,即该类别的标签值,输出异常检测结果。并采用平均绝对误差(mae)和均方根误差(rmse)作为误差评估指标,来定量地分析CNN-LSTM异常检测模型预测效果。
在另一实施例中,提供了一种非易失性计算机存储介质,计算机存储介质存储有计算机可执行指令,该计算机可执行指令可执行上述任意实施例中的基于shapelet的网络异常流量检测方法。
本实施例还提供一种计算机程序产品,计算机程序产品包括存储在非易失性计算机存储介质上的计算机程序,计算机程序包括程序指令,当程序指令被计算机执行时,使计算机执行上述实施例的基于shapelet的网络异常流量检测方法。
本实施例提供一种电子设备,包括:至少一个处理器,以及与所述至少一个处理器通信连接的存储器,其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行基于shapelet的网络异常流量检测方法。
以上所述的具体实施方案,进一步详细地说明了本发明的目的、技术方案和技术效果。所应理解的是,以上所述仅为本发明的具体实施方案而已,并非用以限定本发明的范围,任何本领域的技术人员,在不脱离本发明思想和原则的前提下所做出的等同变化与修改,均应属于本发明保护的范围。

Claims (10)

1.基于shapelet的网络异常流量检测方法,其特征在于,包括如下步骤:
步骤S1:抓取流量并制作成csv文件;
步骤S2:对csv文件进行数据预处理,再通过numpy处理成为npy文件,然后划分训练集和测试集;
步骤S3:采用学习时间序列shapelet算法,生成流量数据时间序列的shapelet序列,随着流量数据时间序列的数量线性缩放,在缩放不变性、平移不变性和移位不变性下,通过k-shape聚类比较shapelet序列和计算质心,初始化多个shapelet序列,通过DTW距离筛选最佳shapelet序列;
步骤S4:用最佳shapelet序列训练CNN-LSTM异常检测模型,用训练好的CNN-LSTM异常检测模型进行流量异常检测,得到流量多分类检测结果。
2.根据权利要求1所述的基于shapelet的网络异常流量检测方法,其特征在于,步骤S1中,抓取某一时间段的连续网络流量数据,存储为pcap文件,然后,使用cicflowmeter工具提取pcap文件的统计信息,以csv文件的形式输出pcap文件中包含共84维的特征信息。
3.根据权利要求1所述的基于shapelet的网络异常流量检测方法,其特征在于,采用pytorch框架对csv文件进行数据预处理,找到csv文件中的空值、缺失值、无穷值,将其用0替代。
4.根据权利要求1所述的基于shapelet的网络异常流量检测方法,其特征在于,生成流量数据时间序列的shapelet序列的方式如下:n个流量数据时间序列组成的流量数据时间序列集T={T1,…,Tn},T1为第1个流量数据时间序列,Tn为第n个流量数据时间序列,第i个流量数据时间序列Ti由Q个元素组成:Ti={ Ti,1,…,Ti,Q},Ti,1表示第i个流量数据时间序列的第1个元素,Ti,Q表示第i个流量数据时间序列的第Q个元素,Ti,j:L表示第i个流量数据时间序列中长度为L的第j段:Ti,j:L={Ti,j,…,Ti,j+L-1},Ti,j 表示第i个流量数据时间序列的第j个元素,Ti,j+L-1表示第i个流量数据时间序列的第j+L-1个元素;设长度为L的shapelet序列是由L个值组成的有序序列,shapelet序列子集S={S1,…,Sk},S1为第1个shapelet序列,Sk为第k个shapelet序列,第k个shapelet序列由L个值组成,Sk={ Sk,1,…,Sk,L},Sk,1表示为第k个shapelet序列的第1个元素,Sk,L表示为第k个shapelet序列的第L个元素。
5.根据权利要求4所述的基于shapelet的网络异常流量检测方法,其特征在于,通过k-shape聚类比较shapelet序列和计算质心具体过程为:使用互相关作为流量数据时间序列集T和shapelet序列子集S的统计度量,用互相关来确定流量数据时间序列集T和shapelet序列子集S的相似性;
Figure QLYQS_1
式中,CCw表示流量数据时间序列集T和shapelet序列子集S的相似度,是长度为n+k-1的互相关序列,
Figure QLYQS_2
表示第w个互相性值,w∈{1,2,…,n+k-1};
对CCw进行归一化:
Figure QLYQS_3
式中,NCCb为有偏估计量;
质心为与所有其他数据点的距离平方和最小的数据点;一个shapelet序列存在n个观测点,即有Sk={ x1,x2,…,xi,…,xn},xi为第i个观测点,i=1,2,…,n;聚类是将k个shapelet序列划分为M成对不相交的簇,M< k,簇集合P={ p1,…,pm,…,pM}, pm代表第m个簇 ,m∈{1,2,…,M},即有xi∈pm
第i个质心
Figure QLYQS_4
的计算定义如下,其中/>
Figure QLYQS_5
表示的是向量空间内的所有点:
Figure QLYQS_6
将最优质心
Figure QLYQS_7
转换为观测点/>
Figure QLYQS_8
与候选质心有偏估计量/>
Figure QLYQS_9
的最大化,公式如下:
Figure QLYQS_10
式中,
Figure QLYQS_11
为最优质心。
6.根据权利要求5所述的基于shapelet的网络异常流量检测方法,其特征在于,通过DTW距离筛选最佳shapelet序列是指:引入DTW距离计算方式作为衡量指标,对shapelet序列进行筛选,使得在簇pm中的shapelet序列在形状上具有相似的特征;
第k个shapelet序列Sk
Figure QLYQS_12
之间的欧氏分数定义为:
Figure QLYQS_13
式中,
Figure QLYQS_14
表示为第k个shapelet序列的第/>
Figure QLYQS_15
个元素,/>
Figure QLYQS_16
第k个shapelet序列Sk和第i个流量数据时间序列Ti之间的shapelet变换定义为:
Figure QLYQS_17
给定一组shapelet序列子集S,将第i个流量数据时间序列Ti转换成
Figure QLYQS_18
维向量/>
Figure QLYQS_19
,且/>
Figure QLYQS_20
的分量是/>
Figure QLYQS_21
,/>
Figure QLYQS_22
为第i个流量数据时间序列Ti的shapelet变换;
Figure QLYQS_25
和/>
Figure QLYQS_28
是流量数据时间序列集T中的两个相邻的时间序列,设/>
Figure QLYQS_31
和/>
Figure QLYQS_24
的shapelet变换分别记为/>
Figure QLYQS_27
和/>
Figure QLYQS_30
,并将/>
Figure QLYQS_32
和/>
Figure QLYQS_23
之间的动态时间弯曲测度记为:/>
Figure QLYQS_26
,损失/>
Figure QLYQS_29
定义为:
Figure QLYQS_33
其中β是尺度参数,N个流量数据时间序列T的总损失为:
Figure QLYQS_34
学习流量数据时间序列T对应的shapelet序列子集
Figure QLYQS_35
和尺度参数/>
Figure QLYQS_36
,使总体损失最小化。
7.根据权利要求1所述的基于shapelet的网络异常流量检测方法,其特征在于,将shapelet序列输入到已训练好的CNN-LSTM异常检测模型中,进行检测,使用torch.max()方法计算CNN-LSTM异常检测模型中每个类别的最大值并返回其索引值,即该类别的标签值,输出异常检测结果。
8.用于实现权利要求1所述基于shapelet的网络异常流量检测方法的系统,其特征在于,包括流量抓取模块、数据预处理模块、算法生成shapelet序列模块和CNN-LSTM异常检测模块;所述流量抓取模块进行实时连续的网络设备流量抓取,提取流量数据的特征维度,存为csv文件;数据预处理模块对特征维度提取后的数据进行数据清洗、数据划分、数据变换操作;算法生成shapelet序列模块加载预处理后的原始流量时间数据,学习生成shapelet序列,shapelet序列输入CNN-LSTM异常检测模块中进行网络异常流量检测。
9.一种非易失性计算机存储介质,计算机存储介质存储有计算机可执行指令,其特征在于,该计算机可执行指令可执行权利要求1-7任意一项所述的基于shapelet的网络异常流量检测方法。
10.一种电子设备,包括:至少一个处理器,以及与所述至少一个处理器通信连接的存储器,其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-7任意一项所述基于shapelet的网络异常流量检测方法。
CN202310488197.7A 2023-05-04 2023-05-04 基于shapelet的网络异常流量检测方法及系统 Active CN116232761B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310488197.7A CN116232761B (zh) 2023-05-04 2023-05-04 基于shapelet的网络异常流量检测方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310488197.7A CN116232761B (zh) 2023-05-04 2023-05-04 基于shapelet的网络异常流量检测方法及系统

Publications (2)

Publication Number Publication Date
CN116232761A true CN116232761A (zh) 2023-06-06
CN116232761B CN116232761B (zh) 2023-07-14

Family

ID=86573473

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310488197.7A Active CN116232761B (zh) 2023-05-04 2023-05-04 基于shapelet的网络异常流量检测方法及系统

Country Status (1)

Country Link
CN (1) CN116232761B (zh)

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102017220954A1 (de) * 2017-11-23 2019-05-23 Robert Bosch Gmbh Verfahren, Vorrichtung und Computerprogramm zur Ermittlung einer Anomalie
CN110287439A (zh) * 2019-06-27 2019-09-27 电子科技大学 一种基于lstm的网络行为异常检测方法
CN112100614A (zh) * 2020-09-11 2020-12-18 南京邮电大学 一种基于cnn_lstm的网络流量异常检测方法
EP3839811A1 (en) * 2019-12-18 2021-06-23 Tata Consultancy Services Limited Systems and methods for shapelet decomposition based gesture recognition using radar
CN114358157A (zh) * 2021-12-24 2022-04-15 科大国创软件股份有限公司 一种基于时序数据LSTM特征的K-Shape聚类方法
CN114372538A (zh) * 2022-03-22 2022-04-19 中国海洋大学 拖曳式传感器阵列中尺度涡时间序列卷积分类方法
CN115037543A (zh) * 2022-06-10 2022-09-09 江苏大学 一种基于双向时间卷积神经网络的异常网络流量检测方法

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102017220954A1 (de) * 2017-11-23 2019-05-23 Robert Bosch Gmbh Verfahren, Vorrichtung und Computerprogramm zur Ermittlung einer Anomalie
CN110287439A (zh) * 2019-06-27 2019-09-27 电子科技大学 一种基于lstm的网络行为异常检测方法
EP3839811A1 (en) * 2019-12-18 2021-06-23 Tata Consultancy Services Limited Systems and methods for shapelet decomposition based gesture recognition using radar
CN112100614A (zh) * 2020-09-11 2020-12-18 南京邮电大学 一种基于cnn_lstm的网络流量异常检测方法
CN114358157A (zh) * 2021-12-24 2022-04-15 科大国创软件股份有限公司 一种基于时序数据LSTM特征的K-Shape聚类方法
CN114372538A (zh) * 2022-03-22 2022-04-19 中国海洋大学 拖曳式传感器阵列中尺度涡时间序列卷积分类方法
CN115037543A (zh) * 2022-06-10 2022-09-09 江苏大学 一种基于双向时间卷积神经网络的异常网络流量检测方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
王子一: "基于子段距离计算的时间序列分类方法", 基于子段距离计算的时间序列分类方法 *

Also Published As

Publication number Publication date
CN116232761B (zh) 2023-07-14

Similar Documents

Publication Publication Date Title
CN110287983B (zh) 基于最大相关熵深度神经网络单分类器异常检测方法
CN109766992B (zh) 基于深度学习的工控异常检测及攻击分类方法
CN109977895B (zh) 一种基于多特征图融合的野生动物视频目标检测方法
CN115618296B (zh) 一种基于图注意力网络的大坝监测时序数据异常检测方法
CN109446804B (zh) 一种基于多尺度特征连接卷积神经网络的入侵检测方法
CN110826642B (zh) 一种针对传感器数据的无监督异常检测方法
CN116167010B (zh) 具有智能迁移学习能力的电力系统异常事件快速识别方法
CN113866455A (zh) 基于深度学习的桥梁加速度监测数据异常检测方法、系统和装置
CN113158722A (zh) 基于多尺度深度神经网络的旋转机械故障诊断方法
CN115580445A (zh) 一种未知攻击入侵检测方法、装置和计算机可读存储介质
CN116756594A (zh) 一种电网数据异常点检测方法、系统、设备及介质
Du et al. Convolutional neural network-based data anomaly detection considering class imbalance with limited data
CN116374645A (zh) 用于斗轮机的运行状态监控系统及其方法
CN117155706B (zh) 网络异常行为检测方法及其系统
Hegazy Tag Eldien, AS; Tantawy, MM; Fouda, MM; TagElDien, HA Real-time locational detection of stealthy false data injection attack in smart grid: Using multivariate-based multi-label classification approach
CN114020811A (zh) 数据异常检测方法及其装置、电子设备
CN111291712B (zh) 基于插值的cn和胶囊网络的森林火灾识别方法及装置
CN116232761B (zh) 基于shapelet的网络异常流量检测方法及系统
CN117034112A (zh) 一种基于样本增强与对比学习的恶意网络流量分类方法
CN117176433A (zh) 网络数据的异常行为检测系统及方法
Alelaumi et al. Cleaning profile classification using convolutional neural network in stencil printing
Chan et al. Feature fusion based human action recognition in still images
Goel et al. Locally optimal detection of stochastic targeted universal adversarial perturbations
Deepa et al. A Reduced Feature-Set OCR System to Recognize Handwritten Tamil Characters using SURF Local Descriptor
CN114584350B (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