CN111669396A - 一种软件定义物联网自学习安全防御方法及*** - Google Patents

一种软件定义物联网自学习安全防御方法及*** Download PDF

Info

Publication number
CN111669396A
CN111669396A CN202010539844.9A CN202010539844A CN111669396A CN 111669396 A CN111669396 A CN 111669396A CN 202010539844 A CN202010539844 A CN 202010539844A CN 111669396 A CN111669396 A CN 111669396A
Authority
CN
China
Prior art keywords
network security
network
value
codes
security feature
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
CN202010539844.9A
Other languages
English (en)
Other versions
CN111669396B (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.)
University of Shaoxing
Original Assignee
University of Shaoxing
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 University of Shaoxing filed Critical University of Shaoxing
Priority to CN202010539844.9A priority Critical patent/CN111669396B/zh
Publication of CN111669396A publication Critical patent/CN111669396A/zh
Application granted granted Critical
Publication of CN111669396B publication Critical patent/CN111669396B/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/1416Event detection, e.g. attack signature detection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/23Clustering techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • 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/1441Countermeasures against malicious traffic

Landscapes

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

Abstract

本发明公开了一种软件定义物联网自学习安全防御方法及***。方法包括(1)嗅探获取软件定义物联网节点发送的包含于介质访问控制层和网络层之间的数据包;(2)进行网络安全特征提取并编码;(3)对网络安全特征值的编码进行聚类;(4)将每一类别与已知安全网络安全特征编码集合、以及已知风险网络安全特征值编码集合中的元素进行比对自动判定并更新;(5)对于未知网络安全特征编码,由网络安全专家组成员鉴定并更新。***包括:嗅探模块、分析模块、检测防御模块、以及知识库;本发明有效减轻了物联网管理员的物联网节点配置管理工作,并且自动更新软件定义物联网安全防御***,对软件定义物联网网络环境的动态变化实现自适应。

Description

一种软件定义物联网自学习安全防御方法及***
技术领域
本发明属于物联网安全技术领域,更具体地,涉及一种软件定义物联网自学习安全防御方法及***。
背景技术
当前,物联网已广泛应用于智慧家居、车联网、工业互联网、智慧城市等诸多领域。但是,面对复杂的应用需求,物联网存在多方面网络管理问题,如物联网节点维护问题、节点软件***更新问题、增加新节点后的网络拓扑变化问题等。在网络空间安全方面同样存在不少问题,例如,物联网节点已成为恶意攻击者发动分布式拒绝服务攻击的主要源设备。
“软件定义物联网”建立在“软件定义网络”架构基础上,体现控制与转发分离的思想。使用“软件定义物联网”,能适应不同的物联网各层通信协议,有效减轻物联网节点配置管理工作,从而降低物联网运营成本,创造更多效益。同时,“软件定义物联网”中的控制器实现了物联网节点的集中控制,且拥有比物联网节点更强劲的计算能力,因此,原来物联网中难以付诸实施的安全防御***能方便地部署到控制器中,从而有效增强对包括分布式拒绝服务攻击在内的各种物联网恶意攻击的防御能力。
相对于其他的网络,“软件定义物联网”网络拓扑结构、“软件定义物联网”网关节点中正在运行的服务、“软件定义物联网”网关节点中的开放端口等网络环境动态变化更快。例如,新的物联网节点可能随时会加入或退出,这些新加入的物联网节点可能是恶意的。面对“软件定义物联网”网络环境的动态变化特点,使用人工方式更新“软件定义物联网”安全防御***不仅大大增加了物联网管理员的负担,同时很难跟上“软件定义物联网”网络环境变化的步伐,使得“软件定义物联网”安全防御***经常处于过期状态。为了满足“软件定义物联网”安全防御***能可靠地保障“软件定义物联网”安全运行的需求,迫切需要“软件定义物联网”安全防御***能具备自学习能力,从而对“软件定义物联网”网络环境的动态变化能实现自适应。
当前,关于物联网安全防御***,不同的机构公开了一些方法。专利申请文件CN106713301A公开了一种面向智能终端的物联网安全防御***,该***包括部署于云服务前端的物联网安全网关,所述物联网安全网关包括云服务管理模块、接入终端管理模块、身份认证模块、以及安全策略库。专利申请文件CN108111542A公开了一种基于“软件定义物联网”DDoS攻击防御方法,该方法通过“软件定义物联网”网关收集物联网中不同的物联网设备节点发送的网络流量,再通过“软件定义物联网”应用服务器分析判断物联网中是否存在DDoS攻击,然后,“软件定义物联网”控制器集群根据分析结果协调“软件定义物联网”网关来缓解物联网DDoS攻击。专利申请文件CN108881322A公开了一种物联网***应对DDOS攻击的防御***及方法,该***将物联网终端接入两个以上平行工作且与同一个数据库连接的服务器组,这样,即使一个服务器组被攻击或者宕机,***仍能正常工作且不受影响。专利申请文件CN110113350A公开了一种物联网***安全威胁监测与防御***,该***包括流量异常分析***、物联网终端异常分析***、业务异常分析***、HTTP异常分析***、以及威胁检测与情报生成***。专利申请文件CN111010384A公开了一种物联网终端自我安全防御***及其安全防御方法,该***包括用于实时监控物联网终端***并传递信息至安全防御模块的安全监控模块,以及利用配合终端***的分析模型对传递的信息进行比对、并基于比对结果进行处理的安全防御模块。
综上,现有的物联网安全防御***要么未采用软件定义网络架构,要么不具备自学习能力。这样,导致物联网节点配置管理工作强度大、以及物联网管理员防御恶意网络行为负担重的问题,并且存在难以部署对计算资源要求较高的安全防御***、以及部署的安全防御***经常处于过期状态的技术缺陷。
发明内容
针对现有技术的以上缺陷或改进需求,本发明提供了一种软件定义物联网自学习安全防御方法及***,其目的在于采用软件定义物联网架构、稀疏自编码神经网络自学习数据包特征技术、以及聚类算法聚类数据包特征技术,有效减轻物联网管理员的物联网节点配置管理工作和恶意网络行为防御负担,使软件定义物联网安全防御***具备自学习能力,由此解决难以部署对计算资源要求较高的安全防御***、以及部署的安全防御***经常处于过期状态的技术问题。
为实现上述目的,按照本发明的一个方面,提供了一种软件定义物联网自学习防御方法,包括以下步骤:
(1)嗅探获取软件定义物联网节点发送的包含于介质访问控制层和网络层之间的所有数据包,获得数据包集合:
Figure BDA0002538516570000031
其中,
Figure BDA0002538516570000032
表示第i个数据包;
(2)对步骤(1)中获取的数据包集合
Figure BDA0002538516570000033
中的每个数据包进行网络安全特征提取,并采用稀疏自编码器进行编码,获得所有数据包的各个网络安全特征值对应的编码;
(3)对于步骤(2)中获取的数据包的各个网络安全特征值的编码进行聚类,获得编码类别集合Cluster={cs1,cs2,…,csm},其中csi表示聚类集合Cluster中的第i个聚类,m表示聚类集合Cluster中的聚类个数;
(4)将步骤(3)中获得的编码类别集合Cluster中的每一类别csi与已知安全网络安全特征编码集合Nom、以及已知风险网络安全特征值编码集合Mal中的元素进行比对,自动判定所述分析模块提交的编码为安全网络安全特征编码、风险网络安全特征值编码、或未知网络安全特征编码,并将安全网络安全特征编码和风险网络安全特征编码分别追加到已知安全网络安全特征编码集合Nom、以及已知风险网络安全特征值编码集合Mal中,对于风险网络安全特征值编码执行预设的防御动作,收集未知网络安全特征编码形成未知网络安全特征编码集合Diff;
(5)对于步骤(4)中获得的未知网络安全特征编码集合Diff,由网络安全专家组成员鉴定其中的每一个元素是否为安全的软件定义物联网网络行为,若鉴定为安全,则将该元素追加到已知安全网络安全特征值编码集合Nom中,否则将该元素追加到已知风险数据包编码集合Mal中并设定其预设的防御动作。
优选地,所述软件定义物联网自学习防御方法,其步骤(2)包括:
(2-1)对于数据包
Figure BDA0002538516570000041
采用网络安全监控工具抽取其中网络安全特征,例如采用公开源代码的Zeek网络安全监控工具抽取,并根据网络安全特征与整数的映射关系,将
Figure BDA0002538516570000042
的网络安全特征值映射为整数,组成数据包网络安全特征值集合
Figure BDA0002538516570000043
即:
Figure BDA0002538516570000044
其中
Figure BDA0002538516570000045
为第i个实际嗅探到的数据包
Figure BDA0002538516570000046
的网络安全特征向量,
Figure BDA0002538516570000047
其中
Figure BDA0002538516570000048
为第i个实际嗅探到的数据包
Figure BDA0002538516570000049
的第j个网络安全特征,n表示第i个实际的数据包
Figure BDA00025385165700000410
的网络安全特征向量
Figure BDA00025385165700000411
所具有的网络安全特征个数;
Figure BDA00025385165700000412
为网络安全特征
Figure BDA00025385165700000413
对应的网络安全特征值,
Figure BDA00025385165700000414
为整数。
(2-2)对于步骤(2-1)中获取的数据包网络安全特征值集合
Figure BDA00025385165700000415
采用稀疏自编码器进行编码,获得数据包网络安全特征值集合
Figure BDA00025385165700000416
中每一个数据包网络安全特征值对应的编码,组成数据包编码集合
Figure BDA00025385165700000417
优选地,所述软件定义物联网自学习防御方法,其步骤(2-2)具体为:
(2-2-1)对于步骤(2-1)中获取的数据包网络安全特征值集合
Figure BDA00025385165700000418
中的每一元素
Figure BDA00025385165700000419
进行归一化处理获得归一化后的网络安全特征值
Figure BDA00025385165700000420
Figure BDA0002538516570000051
其中,
Figure BDA0002538516570000052
表示
Figure BDA0002538516570000053
的最大值;
(2-2-2)对于步骤(2-2-1)获得归一化后的网络安全特征值
Figure BDA0002538516570000054
采用稀疏自编码器编码,获得每一个数据包网络安全特征值对应的编码,所有数据包网络安全特征值对应的编码组成数据包编码集合
Figure BDA0002538516570000055
优选地,所述软件定义物联网自学习防御方法,其所述稀疏自编码器优选稀疏自编码神经网络,按照如下方法训练获取:
学习样本收集:仿真建立的安全软件定义物联网环境,与步骤(1)相同的嗅探获取的节点发送的包含于介质访问控制层和网络层之间的所有数据包,获得仿真数据包集合:Δ={Packet1,Packet2,Packet3,…},其中,Packeti表示第i个仿真数据包;与步骤(2-1)相同的获取仿真数据包Packeti的网络安全特征,组成仿真的数据包网络安全特征值集合Θ;即Θ={Feature1,Feature2,Feature3,…},Featurei为第i个嗅探到的仿真数据包Packeti的网络安全特征向量,Featurei={fi1,fi2,fi3,…,fin},其中fij为第i个嗅探到的仿真数据包Packeti的第j个网络安全特征,n表示第i个仿真数据包Packeti的网络安全特征向量Featurei所具有的网络安全特征个数;zij为网络安全特征fij对应的网络安全特征值,zij为整数;与步骤(2-2-1)相同的获取数据包网络安全特征值集合Θ中的每一元素zij,进行归一化处理获得归一化后的网络安全特征值
Figure BDA0002538516570000056
其中,
Figure BDA0002538516570000057
表示zij的最大值;
稀疏自编码神经网络模型:包括输入层、隐含层和输出层;其输入层具有与数据包网络安全特征向量具有的网络安全特征值的个数相同的输入神经元,即具有数量为n的输入神经元,第k个输入神经元的值为相应归一化后的仿真数据包的网络安全特征值,即对于输入神经元集合in={α1,α2,α3,…,αk,…αn},k=1,2,...n,其中αk为稀疏自编码神经网络输入层中第k个输入神经元的值,有:αk=gik;对于隐含层中第l个神经元,其值hl为:hl=∑nαkqkl+bkl,其中qkl表示权值分量,bkl表示偏置分量;具有与数据包网络安全特征向量具有的网络安全特征值的个数相同的输出神经元,即具有数量为n的输出神经元,对于输出神经元集合out={β1,β2,β3,…,βk,…βn},k=1,2,...n,其中βk为稀疏自编码神经网络输出层中第k个输出神经元的值,βk=∑lhlqkl+bkl
稀疏自编码神经网络模型的训练:采用无监督学习,将损失函数最小时的稀疏自编码神经网络模型作为稀疏自编码器;所述损失函数L(IN,OUT)为:
Figure BDA0002538516570000061
其中IN为仿真数据包集合所有元素输入稀疏自编码神经网络模型的网络安全特征值集合,OUT为仿真数据包集合所有元素由稀疏自编码神经网络模型的输出的编码集合,|OUT|表示集合OUT中所有元素的个数,即|OUT|为仿真数据包个数与n的乘积;当损失函数L(IN,OUT)取最小值时,所述神经网络模型的权值分量和偏置分量分别构成权值向量Q和偏置向量B,即:
Q=[q11 q12 q13 … q1l … q21 q22 q23 … q2l …],
B=[b11 b12 b13 … b1l … b21 b22 b23 … b2l …]。
优选地,所述软件定义物联网自学习防御方法,其步骤(3)采用凝聚层次聚类算法进行聚类。
优选地,所述软件定义物联网自学习防御方法,其步骤(4)具体为:
对于步骤(3)中获得的编码类别集合Cluster中的每一类别csi,获取其中心值,与所有已知安全网络安全特征值编码集合Nom中的所有元素值进行比对,如果所述已知安全网络安全特征值编码集合Nom中存在至少一个元素与该类别网络安全特征值编码的中心值相同,则将该类别所有的网络安全特征值编码{e1,e2,e3,…}追加到已知安全网络安全特征值编码集合Nom中;否则,将该类别中的所有元素{e1,e2,e3,…}与已知风险网络安全特征值编码集合Mal中的所有元素进行比对:对于该类别中每一元素,如果已知风险网络安全特征值编码集合Mal中存在至少一个元素与该元素的值相同,则将该元素追加到已知风险网络安全特征值编码集合中并执行预先设定的防御动作,否则将该网络安全特征值编码加入到未知网络安全特征值编码集合Diff中。
优选地,所述软件定义物联网自学习防御方法,其所述已知安全网络安全特征值编码集合Nom优选初始化方法如下:将稀疏自编码器的学习样本采用稀疏自编码器的编码组成的集合OUT作为初始已知安全网络安全特征值编码集合Nom。
按照本发明的另一个方面,提供了一种软件定义物联网自学习安全防御***,其包括:嗅探模块、分析模块、检测防御模块、以及知识库;
所述嗅探模块,与软件定义物联网相连,用于嗅探获取软件定义物联网节点发送的包含于介质访问控制层和网络层之间的所有数据包,并将所述数据包提交给分析模块;
所述分析模块,用于提取所述数据包的网络安全特征,并采用稀疏自编码器进行编码,获得每个数据包的各个网络安全特征值对应的编码并提交给检测防御模块;
所述检测防御模块,用于将所述分析模块提交的编码进行聚类分析,并与已知安全网络安全特征编码集合Nom中的元素、以及已知风险网络安全特征值编码集合Mal中的元素进行比对,自动判定所述分析模块提交的编码是否为安全网络安全特征编码、风险网络安全特征值编码、或未知网络安全特征编码,并将安全网络安全特征编码和风险网络安全特征编码提交给知识库,对于风险网络安全特征值编码执行预设的防御动作,收集未知网络安全特征编码形成未知网络安全特征编码集合Diff提交给专家处理模块;
所述专家处理模块,用于对未知网络安全特征编码集合Diff每一个元素进行人工鉴定,手动判定所述分析模块提交的编码是否为安全网络安全特征编码、风险网络安全特征值编码,并将安全网络安全特征编码和风险网络安全特征编码提交给知识库,对于风险网络安全特征值编码设置防御动作执行并提交给知识库;
所述知识库,用于存储已知安全网络安全特征编码集合Nom、以及已知风险网络安全特征值编码集合Mal,并用于收集所述检测防御模块和专家处理模块提交的安全网络安全特征编码、以及风险网络安全特征值编码,并将其分别追加到已知安全网络安全特征编码集合Nom、以及已知风险网络安全特征值编码集合Mal中,对于专家处理模块提交的风险网络安全特征值编码,将专家处理模块设置的其相应防御动作,作为该已知风险网络安全特征值的预设的防御动作。
优选地,所述软件定义物联网自学习安全防御***,其所述分析模块内置:
Zeek网络安全监控工具,用于提取所述数据包的网络安全特征;
映射表,用于将Zeek网络安全监控工具提取的网络安全特征映射为整数的数据包网络安全特征值
Figure BDA0002538516570000081
按照如下方法生成:
对于Zeek网络安全监控工具提取的网络安全特征的所有可能值进行排列,使得其相应的数据包网络安全特征值从整数1开始顺序赋值,即:
zeek1=1,zeek2=2,zeek3=3,…
其中zeeki为Zeek网络安全监控工具提取的网络安全特征第i个可能的值。
归一化工具,用于将数据包网络安全特征值zij进行归一化处理获得归一化后的网络安全特征值
Figure BDA0002538516570000082
稀疏自编码器,即稀疏自编码神经网络,其具有数量为n的输入神经元,第k个输入神经元的值为相应归一化后的仿真数据包的网络安全特征值,即对于输入神经元集合in={α1,α2,α3,…,αk,…αn},k=1,2,...n,其中αk为稀疏自编码神经网络输入层中第k个输入神经元的值,有:
Figure BDA0002538516570000091
对于隐含层中第l个神经元,其值hl为:hl=∑nαkqkl+bkl,其中qkl表示权值分量,bkl表示偏置分量;具有与数据包网络安全特征向量具有的网络安全特征值的个数相同的输出神经元,即具有数量为n的输出神经元,对于输出神经元集合out={β1,β2,β3,…,βk,…βn},k=1,2,...n,其中βk为稀疏自编码神经网络输出层中第k个输出神经元的值,βk=∑lhlqkl+bkl;权值分量和偏置分量分别构成权值向量Q和偏置向量B,即:
Q=[q11 q12 q13 … q1l … q21 q22 q23 … q2l …],
B=[b11 b12 b13 … b1l … b21 b22 b23 … b2l …]。
优选地,所述软件定义物联网自学习安全防御***,其所述检测防御模块,用于将所述分析模块提交的编码采用凝聚层次聚类算法进行聚类分析。
总体而言,通过本发明所构思的以上技术方案与现有技术相比,能够取得下列有益效果:
本发明采用软件定义物联网架构,解决了计算资源要求较高的安全防御***部署问题,同时,有效减轻了物联网管理员的物联网节点配置管理工作;通过稀疏自编码神经网络自学习数据包特征技术、以及凝聚层次聚类算法聚类数据包特征技术,使软件定义物联网安全防御***具备自学习能力,有效减轻了物联网管理员的恶意网络行为防御负担,并且自动更新软件定义物联网安全防御***,对软件定义物联网网络环境的动态变化实现自适应。
附图说明
图1是本发明提供的软件定义物联网自学习防御方法流程示意图;
图2是本发明提供的软件定义物联网自学习防御***结构示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。此外,下面所描述的本发明各个实施方式中所涉及到的技术网络安全特征只要彼此之间未构成冲突就可以相互组合。
本发明提供的软件定义物联网自学习防御方法,如图1所示,包括以下步骤:
(1)嗅探获取软件定义物联网节点发送的包含于介质访问控制层和网络层之间的所有数据包,获得数据包集合:
Figure BDA0002538516570000101
其中,
Figure BDA0002538516570000102
表示第i个数据包;
(2)对步骤(1)中获取的数据包集合
Figure BDA0002538516570000103
中的每个数据包进行网络安全特征提取,并采用稀疏自编码器进行编码,获得所有数据包的各个网络安全特征值对应的编码;
所述数据包网络安全特征按照以下方法进行网络安全特征提取:
(2-1)对于数据包
Figure BDA0002538516570000104
采用网络安全监控工具抽取其中网络安全特征,例如采用公开源代码的Zeek网络安全监控工具抽取,并根据网络安全特征与整数的映射关系,将
Figure BDA0002538516570000105
的网络安全特征值映射为整数,组成数据包网络安全特征值集合
Figure BDA0002538516570000106
即:
Figure BDA0002538516570000107
其中
Figure BDA0002538516570000108
为第i个实际嗅探到的数据包
Figure BDA0002538516570000109
的网络安全特征向量,
Figure BDA00025385165700001010
其中
Figure BDA00025385165700001011
为第i个实际嗅探到的数据包
Figure BDA00025385165700001012
的第j个网络安全特征,n表示第i个实际的数据包
Figure BDA00025385165700001013
的网络安全特征向量
Figure BDA00025385165700001014
所具有的网络安全特征个数;
Figure BDA00025385165700001015
为网络安全特征
Figure BDA00025385165700001016
对应的网络安全特征值,
Figure BDA00025385165700001017
为整数。
(2-2)对于步骤(2-1)中获取的数据包网络安全特征值集合
Figure BDA00025385165700001018
采用稀疏自编码器进行编码,获得数据包网络安全特征值集合
Figure BDA00025385165700001019
中每一个数据包网络安全特征值对应的编码,组成数据包编码集合
Figure BDA0002538516570000111
具体步骤如下:
(2-2-1)对于步骤(2-1)中获取的数据包网络安全特征值集合
Figure BDA0002538516570000112
中的每一元素
Figure BDA0002538516570000113
进行归一化处理获得归一化后的网络安全特征值
Figure BDA0002538516570000114
Figure BDA0002538516570000115
其中,
Figure BDA0002538516570000116
表示
Figure BDA0002538516570000117
的最大值;
(2-2-2)对于步骤(2-2-1)获得归一化后的网络安全特征值
Figure BDA0002538516570000118
采用稀疏自编码器编码,获得每一个数据包网络安全特征值对应的编码,所有数据包网络安全特征值对应的编码组成数据包编码集合
Figure BDA0002538516570000119
所述稀疏自编码器优选稀疏自编码神经网络,按照如下方法训练获取:
学习样本收集:仿真建立的安全软件定义物联网环境,与步骤(1)相同的嗅探获取的节点发送的包含于介质访问控制层和网络层之间的所有数据包,获得仿真数据包集合:Δ={Packet1,Packet2,Packet3,…},其中,Packeti表示第i个仿真数据包;与步骤(2-1)相同的获取仿真数据包Packeti的网络安全特征,组成仿真的数据包网络安全特征值集合Θ;即Θ={Feature1,Feature2,Feature3,…},Featurei为第i个嗅探到的仿真数据包Packeti的网络安全特征向量,Featurei={fi1,fi2,fi3,…,fin},其中fij为第i个嗅探到的仿真数据包Packeti的第j个网络安全特征,n表示第i个仿真数据包Packeti的网络安全特征向量Featurei所具有的网络安全特征个数;zij为网络安全特征fij对应的网络安全特征值,zij为整数;与步骤(2-2-1)相同的获取数据包网络安全特征值集合Θ中的每一元素zij,进行归一化处理获得归一化后的网络安全特征值
Figure BDA00025385165700001110
其中,
Figure BDA00025385165700001111
表示zij的最大值;
稀疏自编码神经网络模型:包括输入层、隐含层和输出层;其输入层具有与数据包网络安全特征向量具有的网络安全特征值的个数相同的输入神经元,即具有数量为n的输入神经元,第k个输入神经元的值为相应归一化后的仿真数据包的网络安全特征值,即对于输入神经元集合in={α1,α2,α3,…,αk,…αn},k=1,2,...n,其中αk为稀疏自编码神经网络输入层中第k个输入神经元的值,有:αk=gik;对于隐含层中第l个神经元,其值hl为:hl=∑nαkqkl+bkl,其中qkl表示权值分量,bkl表示偏置分量;具有与数据包网络安全特征向量具有的网络安全特征值的个数相同的输出神经元,即具有数量为n的输出神经元,对于输出神经元集合out={β1,β2,β3,…,βk,…βn},k=1,2,...n,其中βk为稀疏自编码神经网络输出层中第k个输出神经元的值,βk=∑lhlqkl+bkl
稀疏自编码神经网络模型的训练:采用无监督学习,将损失函数最小时的稀疏自编码神经网络模型作为稀疏自编码器;所述损失函数L(IN,OUT)为:
Figure BDA0002538516570000121
其中IN为仿真数据包集合所有元素输入稀疏自编码神经网络模型的网络安全特征值集合,OUT为仿真数据包集合所有元素由稀疏自编码神经网络模型的输出的编码集合,|OUT|表示集合OUT中所有元素的个数,即|OUT|为仿真数据包个数与n的乘积;当损失函数L(IN,OUT)取最小值时,所述神经网络模型的权值分量和偏置分量分别构成权值向量Q和偏置向量B,即:
Q=[q11 q12 q13 … q1l … q21 q22 q23 … q2l …],
B=[b11 b12 b13 … b1l … b21 b22 b23 … b2l …]。
(3)对于步骤(2)中获取的数据包的各个网络安全特征值的编码进行聚类,获得编码类别集合Cluster={cs1,cs2,…,csm},其中csi表示聚类集合Cluster中的第i个聚类,m表示聚类集合Cluster中的聚类个数;优选采用凝聚层次聚类算法进行聚类;
(4)将步骤(3)中获得的编码类别集合Cluster中的每一类别csi与已知安全网络安全特征编码集合Nom、以及已知风险网络安全特征值编码集合Mal中的元素进行比对,自动判定所述分析模块提交的编码为安全网络安全特征编码、风险网络安全特征值编码、或未知网络安全特征编码,并将安全网络安全特征编码和风险网络安全特征编码分别追加到已知安全网络安全特征编码集合Nom、以及已知风险网络安全特征值编码集合Mal中,对于风险网络安全特征值编码执行预设的防御动作,收集未知网络安全特征编码形成未知网络安全特征编码集合Diff;具体为:
对于步骤(3)中获得的编码类别集合Cluster中的每一类别csi,获取其中心值,与所有已知安全网络安全特征值编码集合Nom中的所有元素值进行比对,如果所述已知安全网络安全特征值编码集合Nom中存在至少一个元素与该类别网络安全特征值编码的中心值相同,则将该类别所有的网络安全特征值编码{e1,e2,e3,…}追加到已知安全网络安全特征值编码集合Nom中;否则,将该类别中的所有元素{e1,e2,e3,…}与已知风险网络安全特征值编码集合Mal中的所有元素进行比对:对于该类别中每一元素,如果已知风险网络安全特征值编码集合Mal中存在至少一个元素与该元素的值相同,则将该元素追加到已知风险网络安全特征值编码集合中并执行预先设定的防御动作,否则将该网络安全特征值编码加入到未知网络安全特征值编码集合Diff中;
所述已知安全网络安全特征值编码集合Nom优选初始化方法如下:将稀疏自编码器的学习样本采用稀疏自编码器的编码组成的集合OUT作为初始已知安全网络安全特征值编码集合Nom;
(5)对于步骤(4)中获得的未知网络安全特征编码集合Diff,由网络安全专家组成员鉴定其中的每一个元素是否为安全的软件定义物联网网络行为,若鉴定为安全,则将该元素追加到已知安全网络安全特征值编码集合Nom中,否则将该元素追加到已知风险数据包编码集合Mal中并设定其预设的防御动作。
本发明提供的软件定义物联网自学习安全防御***,如图2所示,包括:嗅探模块、分析模块、检测防御模块、以及知识库;
所述嗅探模块,与软件定义物联网相连,用于嗅探获取软件定义物联网节点发送的包含于介质访问控制层和网络层之间的所有数据包,并将所述数据包提交给分析模块;
所述分析模块,用于提取所述数据包的网络安全特征,并采用稀疏自编码器进行编码,获得每个数据包的各个网络安全特征值对应的编码并提交给检测防御模块;
所述检测防御模块,用于将所述分析模块提交的编码进行聚类分析,并与已知安全网络安全特征编码集合Nom中的元素、以及已知风险网络安全特征值编码集合Mal中的元素进行比对,自动判定所述分析模块提交的编码是否为安全网络安全特征编码、风险网络安全特征值编码、或未知网络安全特征编码,并将安全网络安全特征编码和风险网络安全特征编码提交给知识库,对于风险网络安全特征值编码执行预设的防御动作,收集未知网络安全特征编码形成未知网络安全特征编码集合Diff提交给专家处理模块;
所述专家处理模块,用于对未知网络安全特征编码集合Diff每一个元素进行人工鉴定,手动判定所述分析模块提交的编码是否为安全网络安全特征编码、风险网络安全特征值编码,并将安全网络安全特征编码和风险网络安全特征编码提交给知识库,对于风险网络安全特征值编码设置防御动作执行并提交给知识库;
所述知识库,用于存储已知安全网络安全特征编码集合Nom、以及已知风险网络安全特征值编码集合Mal,并用于收集所述检测防御模块和专家处理模块提交的安全网络安全特征编码、以及风险网络安全特征值编码,并将其分别追加到已知安全网络安全特征编码集合Nom、以及已知风险网络安全特征值编码集合Mal中,对于专家处理模块提交的风险网络安全特征值编码,将专家处理模块设置的其相应防御动作,作为该已知风险网络安全特征值的预设的防御动作。
以下为实施例:
实施例1
一种软件定义物联网自学习安全防御***,如图2所示,包括:嗅探模块、分析模块、自学习模块、检测防御模块、以及知识库;
所述嗅探模块,与软件定义物联网相连,用于嗅探获取软件定义物联网节点发送的包含于介质访问控制层和网络层之间的所有数据包,并将所述数据包提交给分析模块;
所述分析模块,用于提取所述数据包的网络安全特征,并采用稀疏自编码器进行编码,获得每个数据包的各个网络安全特征值对应的编码并提交给检测防御模块;所述分析模块,内置:
Zeek网络安全监控工具,用于提取所述数据包的网络安全特征;
映射表,用于将Zeek网络安全监控工具提取的网络安全特征映射为整数的数据包网络安全特征值
Figure BDA0002538516570000153
;按照如下方法生成:
对于Zeek网络安全监控工具提取的网络安全特征的所有可能值进行排列,使得其相应的数据包网络安全特征值从整数1开始顺序赋值,即:
zeek1=1,zeek2=2,zeek3=3,…
其中zeeki为Zeek网络安全监控工具提取的网络安全特征第i个可能的值。
归一化工具,用于将数据包网络安全特征值zij进行归一化处理获得归一化后的网络安全特征值
Figure BDA0002538516570000151
稀疏自编码器,即稀疏自编码神经网络,其具有数量为n的输入神经元,第k个输入神经元的值为相应归一化后的仿真数据包的网络安全特征值,即对于输入神经元集合in={α1,α2,α3,…,αk,…αn},k=1,2,...n,其中αk为稀疏自编码神经网络输入层中第k个输入神经元的值,有:
Figure BDA0002538516570000152
对于隐含层中第l个神经元,其值hl为:hl=∑n αkqkl+bkl,其中qkl表示权值分量,bkl表示偏置分量;具有与数据包网络安全特征向量具有的网络安全特征值的个数相同的输出神经元,即具有数量为n的输出神经元,对于输出神经元集合out={β1,β2,β3,…,βk,…βn},k=1,2,...n,其中βk为稀疏自编码神经网络输出层中第k个输出神经元的值,βk=∑lhlqkl+bkl;权值分量和偏置分量分别构成权值向量Q和偏置向量B,即:
Q=[q11 q12 q13 … q1l … q21 q22 q23 … q2l …],
B=[b11 b12 b13 … b1l … b21 b22 b23 … b2l …]。
所述检测防御模块,用于将所述分析模块提交的编码采用凝聚层次聚类算法进行聚类分析,并与已知安全网络安全特征编码集合Nom中的元素、以及已知风险网络安全特征值编码集合Mal中的元素进行比对,自动判定所述分析模块提交的编码是否为安全网络安全特征编码、风险网络安全特征值编码、或未知网络安全特征编码,并将安全网络安全特征编码和风险网络安全特征编码提交给知识库,对于风险网络安全特征值编码执行预设的防御动作,收集未知网络安全特征编码形成未知网络安全特征编码集合Diff提交给专家处理模块;
所述专家处理模块,用于对未知网络安全特征编码集合Diff每一个元素进行人工鉴定,手动判定所述分析模块提交的编码是否为安全网络安全特征编码、风险网络安全特征值编码,并将安全网络安全特征编码和风险网络安全特征编码提交给知识库,对于风险网络安全特征值编码设置防御动作执行并提交给知识库;
所述知识库,用于存储已知安全网络安全特征编码集合Nom、以及已知风险网络安全特征值编码集合Mal,并用于收集所述检测防御模块和专家处理模块提交的安全网络安全特征编码、以及风险网络安全特征值编码,并将其分别追加到已知安全网络安全特征编码集合Nom、以及已知风险网络安全特征值编码集合Mal中,对于专家处理模块提交的风险网络安全特征值编码,将专家处理模块设置的其相应防御动作,作为该已知风险网络安全特征值的预设的防御动作。
实施例2
应用实施例1的***进行软件定义物联网自学习安全防御方法,如图1所示,包括以下步骤:
S1、构建稀疏自编码器:
S1-1、仿真建立安全的软件定义物联网环境,模拟真实的软件定义物联网节点所有可能的网络行为,从而产生所有可能的正常的软件定义物联网数据包。
S1-2、嗅探模块通过公开的网络嗅探技术捕获步骤S1-1所述的仿真的软件定义物联网节点发送的包含于介质访问控制层和网络层之间的所有数据包。记Δ为所述数据包的集合,Δ={Packet1,Packet2,Packet3,…},其中,Packeti表示第i个数据包。
S1-3对于步骤S1-2中获取的所述数据包,分析模块利用公开源代码的Zeek网络安全监控工具抽取其中的所有网络安全特征,并对所有网络安全特征从整数1开始顺序赋予网络安全特征值,之后,将所有网络安全特征值存入知识库。记Θ为所述网络安全特征的集合,Θ={Feature1,Feature2,Feature3,…},其中,Featurei表示第i个数据包Packeti的网络安全特征集合。Featurei={fi1,fi2,fi3,…,fin},其中,fij表示第i个数据包Packeti的第j个网络安全特征,n表示第i个数据包Packeti的网络安全特征个数。记zij为网络安全特征fij对应的网络安全特征值,采用分析模块内置的映射表将相应Zeek网络安全监控工具抽取其中的所有网络安全特征的值进行映射获得。
S1-4基于稀疏自编码神经网络对步骤S1-3得到的所有网络安全特征进行无监督学习,分别得到权值向量Q和偏置向量B。具体步骤为:
S1-4-1自学习模块从知识库取出由步骤S1-3得到的所有网络安全特征值进行归一化处理,得到归一化后的网络安全特征值。记gil为zij归一化后的网络安全特征值,
Figure BDA0002538516570000181
其中,
Figure BDA0002538516570000182
表示zij的最大值。
S1-4-2设置稀疏自编码神经网络的输入层中各单元值为步骤S1-4-1所述的各个归一化后的网络安全特征值。记αk为稀疏自编码神经网络输入层中第k个单元,in为稀疏自编码神经网络输入层中的所有单元构成的集合,in={α1,α2,α3,…,αk,…αn},k=1,2,...n,其中,αk=gik
S1-4-3对稀疏自编码神经网络的隐含层中各单元值进行编码。记hl为稀疏自编码神经网络隐含层中第l个单元值,hl=∑nαkqkl+bkl,其中,qkl表示权值分量,bkl表示偏置分量。
S1-4-4对稀疏自编码神经网络的输出层中各单元值进行编码,并由得到的编码构成正常“软件定义物联网”网络行为网络安全特征集合,之后,将正常“软件定义物联网”网络行为网络安全特征集合存入知识库。记βk为稀疏自编码神经网络输出层中第k个单元值,out为输出层中的所有单元构成的集合,out={β1,β2,β3,…,βk,…βn},k=1,2,...n,其中,βk=∑lhlqkl+bkl。OUT为仿真数据包集合所有元素由稀疏自编码神经网络模型的输出的编码集合,记已知安全网络安全特征编码集合为Nom,则Nom=OUT。
S1-4-5定义损失函数,并通过最小化损失函数值得到权值向量Q和偏置向量B,之后,将权值向量和偏置向量存入知识库。记L(IN,OUT)为损失函数,
Figure BDA0002538516570000183
其中IN为仿真数据包集合所有元素输入稀疏自编码神经网络模型的网络安全特征值集合,OUT为仿真数据包集合所有元素由稀疏自编码神经网络模型的输出的编码集合,|OUT|表示集合OUT中所有元素的个数,即|OUT|为仿真数据包个数与n的乘积;当损失函数L(IN,OUT)取最小值时,所述神经网络模型的权值分量和偏置分量分别构成权值向量Q和偏置向量B,即:
Q=[q11 q12 q13 … q1l … q21 q22 q23 … q2l …],
B=[b11 b12 b13 … b1l … b21 b22 b23 … b2l …]。
S2、监听实际软件定义物联网
(1)嗅探模块捕获实际的软件定义物联网节点发送的包含于介质访问控制层和网络层之间的所有数据包。记
Figure BDA0002538516570000191
为所述数据包的集合,
Figure BDA0002538516570000192
Figure BDA0002538516570000193
其中,
Figure BDA0002538516570000194
表示第i个实际的数据包。
(2)对步骤(1)中获取的数据包集合
Figure BDA0002538516570000195
中的每一个数据包进行网络安全特征提取,并采用稀疏自编码器进行编码,获得每个数据包的各个网络安全特征值对应的编码;
所述数据包网络安全特征按照以下方法进行网络安全特征提取:
(2-1)分析模块采用Zeek网络安全监控工具抽取步骤(1)所述的所有数据包中的所有网络安全特征,应用映射表将所有网络安全特征映射为数据包的网络安全特征值,之后,将所有数据包的网络安全特征值存入知识库;记
Figure BDA0002538516570000196
为所述网络安全特征的集合,
Figure BDA0002538516570000197
其中,
Figure BDA0002538516570000198
表示第i个实际的数据包
Figure BDA0002538516570000199
的网络安全特征集合。
Figure BDA00025385165700001910
其中,
Figure BDA00025385165700001911
表示第i个实际的数据包
Figure BDA00025385165700001912
的第j个网络安全特征,n表示第i个实际的数据包
Figure BDA00025385165700001913
的网络安全特征向量
Figure BDA00025385165700001914
所具有的网络安全特征个数。记
Figure BDA00025385165700001915
为网络安全特征
Figure BDA00025385165700001916
对应的网络安全特征值。
(2-2)对于步骤(2-1)中获取的数据包网络安全特征值集合
Figure BDA00025385165700001917
采用稀疏自编码器进行编码,获得数据包网络安全特征值集合
Figure BDA00025385165700001918
中每一个数据包网络安全特征值对应的编码,组成数据包编码集合
Figure BDA00025385165700001919
具体步骤如下:
(2-2-1)代用归一化工具对于步骤(2-1)中获取的数据包网络安全特征值集合
Figure BDA00025385165700001920
中的每一元素
Figure BDA00025385165700001921
进行归一化处理获得归一化后的网络安全特征值
Figure BDA00025385165700001922
其中,
Figure BDA00025385165700001923
表示
Figure BDA00025385165700001924
的最大值;
(2-2-2)对于步骤(2-2-1)获得归一化后的网络安全特征值
Figure BDA0002538516570000201
采用步骤S1训练的稀疏自编码器编码,获得所有数据包的网络安全特征值对应的编码,组成数据包编码集合
Figure BDA0002538516570000202
之后将集合
Figure BDA0002538516570000203
存入知识库。
(3)检测防御模块使用公开的凝聚层次聚类算法对步骤S1所述的Nom和步骤(8)所述的
Figure BDA0002538516570000204
进行聚类,得到聚类集合,并自动更新集合Nom和
Figure BDA0002538516570000205
之后,将集合Nom和
Figure BDA0002538516570000206
存入知识库。记Cluster为聚类集合,Cluster={cs1,cs2,…,csm},其中csi表示聚类集合Cluster中的第i个聚类,m表示聚类集合Cluster中的聚类个数。
(4)自动更新集合Nom和
Figure BDA0002538516570000207
的具体操作为:
(4-1)i←1。
(4-2)若i>m,则检测防御模块结束自动更新集合Nom和
Figure BDA0002538516570000208
否则进入步骤(4-3)。
(4-3)检测防御模块将csi的中心值跟集合Nom中的所有元素值进行逐个比较,若相同,则将该聚类中的所有元素{e1,e2,e3,…}并入集合Nom,并从集合
Figure BDA0002538516570000209
中去除,即Nom←Nom∪{e1,e2,e3,…},
Figure BDA00025385165700002010
Figure BDA00025385165700002011
从而自动更新集合Nom和
Figure BDA00025385165700002012
(4-4)i←i+1,返回步骤(4-2)。
(4-5)检测防御模块判断集合
Figure BDA00025385165700002013
是否为空,若为空,则不做任何操作;否则,检测防御模块从知识库中取出已知的恶意“软件定义物联网”网络行为网络安全特征集合Mal,将集合
Figure BDA00025385165700002014
中的所有元素值逐个跟集合Mal中的所有元素值进行比较,若相同,检测防御模块执行预先设定的防御动作;若不同,检测防御模块将不同的元素值集合Diff输入专家处理模块。
(5)专家处理模块收到检测防御模块输入的元素值集合Diff后,由网络安全专家组成员人为鉴定集合Diff中的每个元素d,若为正常“软件定义物联网”网络行为,则将该元素d加入集合Nom;否则将该元素d加入集合Mal,并设置相应的防御动作。之后,将集合Nom和Mal分别存入知识库。
本领域的技术人员容易理解,以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

Claims (10)

1.一种软件定义物联网自学习防御方法,其特征在于,包括以下步骤:
(1)嗅探获取软件定义物联网节点发送的包含于介质访问控制层和网络层之间的所有数据包,获得数据包集合:
Figure FDA0002538516560000011
其中,
Figure FDA0002538516560000012
表示第i个数据包;
(2)对步骤(1)中获取的数据包集合
Figure FDA0002538516560000013
中的每个数据包进行网络安全特征提取,并采用稀疏自编码器进行编码,获得所有数据包的各个网络安全特征值对应的编码;
(3)对于步骤(2)中获取的数据包的各个网络安全特征值的编码进行聚类,获得编码类别集合Cluster={cs1,cs2,…,csm},其中csi表示聚类集合Cluster中的第i个聚类,m表示聚类集合Cluster中的聚类个数;
(4)将步骤(3)中获得的编码类别集合Cluster中的每一类别csi与已知安全网络安全特征编码集合Nom、以及已知风险网络安全特征值编码集合Mal中的元素进行比对,自动判定所述分析模块提交的编码为安全网络安全特征编码、风险网络安全特征值编码、或未知网络安全特征编码,并将安全网络安全特征编码和风险网络安全特征编码分别追加到已知安全网络安全特征编码集合Nom、以及已知风险网络安全特征值编码集合Mal中,对于风险网络安全特征值编码执行预设的防御动作,收集未知网络安全特征编码形成未知网络安全特征编码集合Diff;
(5)对于步骤(4)中获得的未知网络安全特征编码集合Diff,由网络安全专家组成员鉴定其中的每一个元素是否为安全的软件定义物联网网络行为,若鉴定为安全,则将该元素追加到已知安全网络安全特征值编码集合Nom中,否则将该元素追加到已知风险数据包编码集合Mal中并设定其预设的防御动作。
2.如权利要求1所述的软件定义物联网自学习防御方法,其特征在于,步骤(2)包括:
(2-1)对于数据包
Figure FDA0002538516560000021
采用网络安全监控工具抽取其中网络安全特征,例如采用公开源代码的Zeek网络安全监控工具抽取,并根据网络安全特征与整数的映射关系,将
Figure FDA0002538516560000022
的网络安全特征值映射为整数,组成数据包网络安全特征值集合
Figure FDA0002538516560000023
即:
Figure FDA0002538516560000024
其中
Figure FDA0002538516560000025
为第i个实际嗅探到的数据包
Figure FDA0002538516560000026
的网络安全特征向量,
Figure FDA0002538516560000027
其中
Figure FDA0002538516560000028
为第i个实际嗅探到的数据包
Figure FDA0002538516560000029
的第j个网络安全特征,n表示第i个实际的数据包
Figure FDA00025385165600000210
的网络安全特征向量
Figure FDA00025385165600000211
所具有的网络安全特征个数;
Figure FDA00025385165600000212
为网络安全特征
Figure FDA00025385165600000213
对应的网络安全特征值,
Figure FDA00025385165600000214
为整数。
(2-2)对于步骤(2-1)中获取的数据包网络安全特征值集合
Figure FDA00025385165600000215
采用稀疏自编码器进行编码,获得数据包网络安全特征值集合
Figure FDA00025385165600000216
中每一个数据包网络安全特征值对应的编码,组成数据包编码集合
Figure FDA00025385165600000217
3.如权利要求2所述的软件定义物联网自学习防御方法,其特征在于,步骤(2-2)具体为:
(2-2-1)对于步骤(2-1)中获取的数据包网络安全特征值集合
Figure FDA00025385165600000218
中的每一元素
Figure FDA00025385165600000219
进行归一化处理获得归一化后的网络安全特征值
Figure FDA00025385165600000220
Figure FDA00025385165600000221
其中,
Figure FDA00025385165600000222
表示
Figure FDA00025385165600000223
的最大值;
(2-2-2)对于步骤(2-2-1)获得归一化后的网络安全特征值
Figure FDA00025385165600000224
采用稀疏自编码器编码,获得每一个数据包网络安全特征值对应的编码,所有数据包网络安全特征值对应的编码组成数据包编码集合
Figure FDA00025385165600000225
4.如权利要求3所述的软件定义物联网自学习防御方法,其特征在于,所述稀疏自编码器优选稀疏自编码神经网络,按照如下方法训练获取:
学习样本收集:仿真建立的安全软件定义物联网环境,与步骤(1)相同的嗅探获取的节点发送的包含于介质访问控制层和网络层之间的所有数据包,获得仿真数据包集合:Δ={Packet1,Packet2,Packet3,…},其中,Packeti表示第i个仿真数据包;与步骤(2-1)相同的获取仿真数据包Packeti的网络安全特征,组成仿真的数据包网络安全特征值集合Θ;即Θ={Feature1,Feature2,Feature3,…},Featurei为第i个嗅探到的仿真数据包Packeti的网络安全特征向量,Featurei={fi1,fi2,fi3,…,fin},其中fij为第i个嗅探到的仿真数据包Packeti的第j个网络安全特征,n表示第i个仿真数据包Packeti的网络安全特征向量Featurei所具有的网络安全特征个数;zij为网络安全特征fij对应的网络安全特征值,zij为整数;与步骤(2-2-1)相同的获取数据包网络安全特征值集合Θ中的每一元素zij,进行归一化处理获得归一化后的网络安全特征值
Figure FDA0002538516560000031
其中,
Figure FDA0002538516560000032
表示zij的最大值;
稀疏自编码神经网络模型:包括输入层、隐含层和输出层;其输入层具有与数据包网络安全特征向量具有的网络安全特征值的个数相同的输入神经元,即具有数量为n的输入神经元,第k个输入神经元的值为相应归一化后的仿真数据包的网络安全特征值,即对于输入神经元集合in={α123,…,αk,…αn},k=1,2,...n,其中αk为稀疏自编码神经网络输入层中第k个输入神经元的值,有:αk=gik;对于隐含层中第l个神经元,其值hl为:hl=Σnαkqkl+bkl,其中qkl表示权值分量,bkl表示偏置分量;具有与数据包网络安全特征向量具有的网络安全特征值的个数相同的输出神经元,即具有数量为n的输出神经元,对于输出神经元集合out={β123,…,βk,…βn},k=1,2,...n,其中βk为稀疏自编码神经网络输出层中第k个输出神经元的值,βk=Σlhlqkl+bkl
稀疏自编码神经网络模型的训练:采用无监督学习,将损失函数最小时的稀疏自编码神经网络模型作为稀疏自编码器;所述损失函数L(IN,OUT)为:
Figure FDA0002538516560000033
其中IN为仿真数据包集合所有元素输入稀疏自编码神经网络模型的网络安全特征值集合,OUT为仿真数据包集合所有元素由稀疏自编码神经网络模型的输出的编码集合,|OUT|表示集合OUT中所有元素的个数,即|OUT|为仿真数据包个数与n的乘积;当损失函数L(IN,OUT)取最小值时,所述神经网络模型的权值分量和偏置分量分别构成权值向量Q和偏置向量B,即:
Q=[q11 q12 q13…q1l…q21 q22 q23…q2l…],
B=[b11 b12 b13…b1l…b21 b22 b23…b2l…]。
5.如权利要求1所述的软件定义物联网自学习防御方法,其特征在于,步骤(3)采用凝聚层次聚类算法进行聚类。
6.如权利要求1所述的软件定义物联网自学习防御方法,其特征在于,步骤(4)具体为:
对于步骤(3)中获得的编码类别集合Cluster中的每一类别csi,获取其中心值,与所有已知安全网络安全特征值编码集合Nom中的所有元素值进行比对,如果所述已知安全网络安全特征值编码集合Nom中存在至少一个元素与该类别网络安全特征值编码的中心值相同,则将该类别所有的网络安全特征值编码{e1,e2,e3,…}追加到已知安全网络安全特征值编码集合Nom中;否则,将该类别中的所有元素{e1,e2,e3,…}与已知风险网络安全特征值编码集合Mal中的所有元素进行比对:对于该类别中每一元素,如果已知风险网络安全特征值编码集合Mal中存在至少一个元素与该元素的值相同,则将该元素追加到已知风险网络安全特征值编码集合中并执行预先设定的防御动作,否则将该网络安全特征值编码加入到未知网络安全特征值编码集合Diff中。
7.如权利要求1所述的软件定义物联网自学习防御方法,其特征在于,所述已知安全网络安全特征值编码集合Nom优选初始化方法如下:将稀疏自编码器的学习样本采用稀疏自编码器的编码组成的集合OUT作为初始已知安全网络安全特征值编码集合Nom。
8.一种软件定义物联网自学习安全防御***,其特征在于,包括:嗅探模块、分析模块、检测防御模块、以及知识库;
所述嗅探模块,与软件定义物联网相连,用于嗅探获取软件定义物联网节点发送的包含于介质访问控制层和网络层之间的所有数据包,并将所述数据包提交给分析模块;
所述分析模块,用于提取所述数据包的网络安全特征,并采用稀疏自编码器进行编码,获得每个数据包的各个网络安全特征值对应的编码并提交给检测防御模块;
所述检测防御模块,用于将所述分析模块提交的编码进行聚类分析,并与已知安全网络安全特征编码集合Nom中的元素、以及已知风险网络安全特征值编码集合Mal中的元素进行比对,自动判定所述分析模块提交的编码是否为安全网络安全特征编码、风险网络安全特征值编码、或未知网络安全特征编码,并将安全网络安全特征编码和风险网络安全特征编码提交给知识库,对于风险网络安全特征值编码执行预设的防御动作,收集未知网络安全特征编码形成未知网络安全特征编码集合Diff提交给专家处理模块;
所述专家处理模块,用于对未知网络安全特征编码集合Diff每一个元素进行人工鉴定,手动判定所述分析模块提交的编码是否为安全网络安全特征编码、风险网络安全特征值编码,并将安全网络安全特征编码和风险网络安全特征编码提交给知识库,对于风险网络安全特征值编码设置防御动作执行并提交给知识库;
所述知识库,用于存储已知安全网络安全特征编码集合Nom、以及已知风险网络安全特征值编码集合Mal,并用于收集所述检测防御模块和专家处理模块提交的安全网络安全特征编码、以及风险网络安全特征值编码,并将其分别追加到已知安全网络安全特征编码集合Nom、以及已知风险网络安全特征值编码集合Mal中,对于专家处理模块提交的风险网络安全特征值编码,将专家处理模块设置的其相应防御动作,作为该已知风险网络安全特征值的预设的防御动作。
9.如权利要求8所述的软件定义物联网自学习安全防御***,其特征在于,所述分析模块内置:
Zeek网络安全监控工具,用于提取所述数据包的网络安全特征;
映射表,用于将Zeek网络安全监控工具提取的网络安全特征映射为整数的数据包网络安全特征值
Figure FDA0002538516560000061
按照如下方法生成:
对于Zeek网络安全监控工具提取的网络安全特征的所有可能值进行排列,使得其相应的数据包网络安全特征值从整数1开始顺序赋值,即:
zeek1=1,zeek2=2,zeek3=3,…
其中zeeki为Zeek网络安全监控工具提取的网络安全特征第i个可能的值。
归一化工具,用于将数据包网络安全特征值zij进行归一化处理获得归一化后的网络安全特征值
Figure FDA0002538516560000062
稀疏自编码器,即稀疏自编码神经网络,其具有数量为n的输入神经元,第k个输入神经元的值为相应归一化后的仿真数据包的网络安全特征值,即对于输入神经元集合in={α123,…,αk,…αn},k=1,2,...n,其中αk为稀疏自编码神经网络输入层中第k个输入神经元的值,有:
Figure FDA0002538516560000063
对于隐含层中第l个神经元,其值hl为:hl=∑nαkqkl+bkl,其中qkl表示权值分量,bkl表示偏置分量;具有与数据包网络安全特征向量具有的网络安全特征值的个数相同的输出神经元,即具有数量为n的输出神经元,对于输出神经元集合out={β123,…,βk,…βn},k=1,2,...n,其中βk为稀疏自编码神经网络输出层中第k个输出神经元的值,βk=∑lhlqkl+bkl;权值分量和偏置分量分别构成权值向量Q和偏置向量B,即:
Q=[q11 q12 q13…q1l…q21 q22 q23…q2l…],
B=[b11 b12 b13…b1l…b21 b22 b23…b2l…]。
10.如权利要求8所述的软件定义物联网自学习安全防御***,其特征在于,所述检测防御模块,用于将所述分析模块提交的编码采用凝聚层次聚类算法进行聚类分析。
CN202010539844.9A 2020-06-15 2020-06-15 一种软件定义物联网自学习安全防御方法及*** Active CN111669396B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010539844.9A CN111669396B (zh) 2020-06-15 2020-06-15 一种软件定义物联网自学习安全防御方法及***

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010539844.9A CN111669396B (zh) 2020-06-15 2020-06-15 一种软件定义物联网自学习安全防御方法及***

Publications (2)

Publication Number Publication Date
CN111669396A true CN111669396A (zh) 2020-09-15
CN111669396B CN111669396B (zh) 2022-11-29

Family

ID=72387224

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010539844.9A Active CN111669396B (zh) 2020-06-15 2020-06-15 一种软件定义物联网自学习安全防御方法及***

Country Status (1)

Country Link
CN (1) CN111669396B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114070638A (zh) * 2021-11-22 2022-02-18 安天科技集团股份有限公司 一种计算机***安全防御方法、装置、电子设备及介质
CN114679730A (zh) * 2022-03-15 2022-06-28 国网智能电网研究院有限公司 一种软件定义网络交换节点布局方法及装置

Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108111542A (zh) * 2018-01-30 2018-06-01 深圳大学 基于SDN的物联网DDoS攻击防御方法、装置、设备及介质
CN108737406A (zh) * 2018-05-10 2018-11-02 北京邮电大学 一种异常流量数据的检测方法及***
CN109040141A (zh) * 2018-10-17 2018-12-18 腾讯科技(深圳)有限公司 异常流量的检测方法、装置、计算机设备和存储介质
CN109034020A (zh) * 2018-07-12 2018-12-18 重庆邮电大学 一种基于物联网与深度学习的社区风险监测和防范方法
CN109218223A (zh) * 2018-08-08 2019-01-15 西安交通大学 一种基于主动学习的鲁棒性网络流量分类方法及***
CN109558873A (zh) * 2018-12-03 2019-04-02 哈尔滨工业大学 一种基于变样本栈式自编码网络的模式识别方法
CN109660522A (zh) * 2018-11-29 2019-04-19 华东师范大学 面向综合电子***的基于深层自编码器的混合入侵检测方法
CN110460605A (zh) * 2019-08-16 2019-11-15 南京邮电大学 一种基于自动编码的异常网络流量检测方法
CN110635904A (zh) * 2019-09-16 2019-12-31 绍兴文理学院 一种软件定义物联网节点远程证明方法及***
CN110728320A (zh) * 2019-10-11 2020-01-24 福建工程学院 一种基于自编码和聚类结合的水质监测预警方法及***
US20200106795A1 (en) * 2017-06-09 2020-04-02 British Telecommunications Public Limited Company Anomaly detection in computer networks
CN111144470A (zh) * 2019-12-20 2020-05-12 中国科学院信息工程研究所 一种基于深度自编码器的未知网络流量识别方法及***

Patent Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20200106795A1 (en) * 2017-06-09 2020-04-02 British Telecommunications Public Limited Company Anomaly detection in computer networks
CN108111542A (zh) * 2018-01-30 2018-06-01 深圳大学 基于SDN的物联网DDoS攻击防御方法、装置、设备及介质
CN108737406A (zh) * 2018-05-10 2018-11-02 北京邮电大学 一种异常流量数据的检测方法及***
CN109034020A (zh) * 2018-07-12 2018-12-18 重庆邮电大学 一种基于物联网与深度学习的社区风险监测和防范方法
CN109218223A (zh) * 2018-08-08 2019-01-15 西安交通大学 一种基于主动学习的鲁棒性网络流量分类方法及***
CN109040141A (zh) * 2018-10-17 2018-12-18 腾讯科技(深圳)有限公司 异常流量的检测方法、装置、计算机设备和存储介质
CN109660522A (zh) * 2018-11-29 2019-04-19 华东师范大学 面向综合电子***的基于深层自编码器的混合入侵检测方法
CN109558873A (zh) * 2018-12-03 2019-04-02 哈尔滨工业大学 一种基于变样本栈式自编码网络的模式识别方法
CN110460605A (zh) * 2019-08-16 2019-11-15 南京邮电大学 一种基于自动编码的异常网络流量检测方法
CN110635904A (zh) * 2019-09-16 2019-12-31 绍兴文理学院 一种软件定义物联网节点远程证明方法及***
CN110728320A (zh) * 2019-10-11 2020-01-24 福建工程学院 一种基于自编码和聚类结合的水质监测预警方法及***
CN111144470A (zh) * 2019-12-20 2020-05-12 中国科学院信息工程研究所 一种基于深度自编码器的未知网络流量识别方法及***

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114070638A (zh) * 2021-11-22 2022-02-18 安天科技集团股份有限公司 一种计算机***安全防御方法、装置、电子设备及介质
CN114070638B (zh) * 2021-11-22 2023-07-18 安天科技集团股份有限公司 一种计算机***安全防御方法、装置、电子设备及介质
CN114679730A (zh) * 2022-03-15 2022-06-28 国网智能电网研究院有限公司 一种软件定义网络交换节点布局方法及装置

Also Published As

Publication number Publication date
CN111669396B (zh) 2022-11-29

Similar Documents

Publication Publication Date Title
CN111970309B (zh) 基于Spark车联网组合深度学习入侵检测方法及***
CN111510433B (zh) 一种基于雾计算平台的物联网恶意流量检测方法
CN111818052B (zh) 基于cnn-lstm的工控协议同源攻击检测方法
CN100536411C (zh) 基于改进的自适应提升算法的互联网入侵检测方法
Le et al. Data analytics on network traffic flows for botnet behaviour detection
Peng et al. Network intrusion detection based on deep learning
CN112822189A (zh) 一种流量识别方法及装置
CN111669396B (zh) 一种软件定义物联网自学习安全防御方法及***
CN111585948A (zh) 一种基于电网大数据的网络安全态势智能预测方法
CN109951462B (zh) 一种基于全息建模的应用软件流量异常检测***及方法
CN110868404B (zh) 一种基于tcp/ip指纹的工控设备自动识别方法
CN114553475A (zh) 一种基于网络流量属性有向拓扑的网络攻击检测方法
Khedr et al. FMDADM: A multi-layer DDoS attack detection and mitigation framework using machine learning for stateful SDN-based IoT networks
CN111935134A (zh) 一种复杂网络安全风险监测方法和***
CN112019529A (zh) 新能源电力网络入侵检测***
CN116684877A (zh) 一种基于gyac-lstm的5g网络流量异常检测方法及***
CN111224998A (zh) 一种基于极限学习机的僵尸网络识别方法
CN114445671A (zh) 一种基于设备类型的异常流量检测方法及装置
CN116662184B (zh) 一种基于Bert的工控协议模糊测试用例筛选方法及***
Akshaya Intrusion detection system using machine learning approach
Luo et al. Realistic internet traffic simulation through mixture modeling and a case study
Nash et al. Simulation of self-similarity in network utilization patterns as a precursor to automated testing of intrusion detection systems
CN112866267B (zh) 一种网络业务动态识别与划分的***、方法、设备及存储介质
CN115766081A (zh) 一种电力工控云平台的异常流量检测方法及装置
CN113542222B (zh) 一种基于双域vae的零日多步威胁识别方法

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