摘 "要: 针对工业控制网络通信信息安全与稳定问题,设计一种基于SDN和集成学习的工业控制网络安全防护系统。该系统采用SDN技术,分为物理层、现场层、转发层、控制层和应用层等5个层次。物理层包含现场终端设备;现场层通过控制模块与操作员站实现对现场终端的控制;转发层使用SDN交换机进行通信数据传输,并将数据镜像传输至应用层进行安全分析;控制层中的SDN控制器管理和控制SDN交换机,并执行应用层下发的安全防护策略;应用层利用集成学习算法对工业控制网络进行入侵行为检测,通过安全响应模块分析入侵信息并选择相应的防御机制。实验结果表明,所设计系统满足工业控制网络通信的实时性要求,能准确地实施入侵检测,从而保障工业控制网络的安全性和正常通信。
关键词: 工业控制网络; 安全防护; SDN技术; 集成学习; 交换机; 控制器; 入侵检测; 防御机制
中图分类号: TN915.1⁃34; TP393 " " " " " " " " " 文献标识码: A " " " " " " " " " "文章编号: 1004⁃373X(2024)06⁃0022⁃05
Industrial control network security protection system based on SDN and
integrated learning
YANG Fan1, DING Zhi2, WANG Yang2, QING Lingyun2
(1. Chengdu Institute of Computer Applications, University of Chinese Academy of Sciences, Chengdu 610123, China;
2. Information Center, Sichuan Tobacco Industry Co., Ltd., Chengdu 610020, China)
Abstract: In allusion to the problem of communication information security and stability in industrial control networks, an industrial control network security protection system based on SDN and ensemble learning is designed. The SDN technology is applied in the system, and the system is divided into physical layer, field layer, forwarding layer, control layer, and application layer. The physical layer includes on⁃site terminal devices. The on⁃site layer can control the on⁃site terminal by means of control modules and operator stations. In the forwarding layer, the SDN switch is used for the communication data transmission and to mirror the data to the application layer for the security analysis. The SDN controller in the control layer is used to manage and control the SDN switch, and execute the security protection policies issued by the application layer. In the application layer, the integrated learning algorithm is used to detect intrusion behavior in industrial control networks, and the security response module is used to analyze intrusion information and select corresponding defense mechanisms. The experimental results demonstrate that the designed system can meet the real⁃time requirements of industrial control network communication and can accurately implement intrusion detection, thereby ensuring the security and normal communication of the industrial control network.
Keywords: industrial control network; safety protection; SDN technology; integrated learning; switch; controller; intrusion detection; defense mechanism
0 "引 "言
工业控制网络中所包含的新型网络技术越来越多,导致其从封闭状态逐渐转向互联状态[1],因此也对工业控制网络的安全保障性能提出了越来越高的要求[2]。
近年来,相关领域学者对于工业控制网络的安全防护问题进行了大量研究。例如,顾兆军等人针对工控网络安全性问题,提出一种基于时间自动机的方法[3],但该方法在实际应用过程中对不同类型的网络入侵与攻击无法做到全面防护。丁朝晖等人在工控网络安全研究过程中,从多维角度出发,通过不同形式保障网络通信安全[4]。但该方法无法满足网络通信的时效性要求。尹彦尚等人提出基于贝叶斯攻击图的SDN安全预测方法[5],但该方法无法满足网络通信的安全性要求。
为解决上述方法中存在的问题,本文设计一种基于SDN和集成学习的工业控制网络安全防护系统,保障网络通信安全。
1 "工业控制网络安全防护系统设计
1.1 "系统整体架构设计
基于SDN和集成学习的工业控制网络安全防护系统共分为5个层次,分别是物理层、现场层、转发层、控制层以及应用层,整体架构如图1所示。
1) 物理层中包含若干个现场终端,这些终端均为工业控制网络的物理对象。
2) 现场层主要包含两部分:一部分是由传感器、控制器以及执行器共同组成的控制模块;而另一部分是操作员站。该层的主要功能是控制物理层中的各物理对象。
3) 转发层内主要有SDN交换机,负责传输现场层生成的控制数据。SDN交换机根据流表转发相应的报文,并将工业控制网络内的通信数据镜像传输给应用层进行安全分析。
4) 控制层内包含SDN控制器,使用Open Flow协议全面管理和控制上一层的SDN交换机,并执行应用层下传的安全防护策略。
5) 应用层主要由两个模块组成,分别是安全监测模块以及安全响应模块。安全监测模块利用SDN镜像获取工业控制网络的控制数据,采用集成学习算法进行入侵检测,实时监测工业控制网络的运行状态;在发现异常入侵的条件下,安全响应模块确定入侵信息防御机制,利用REST API将入侵信息防御指令传输至SDN控制器内,达到工业控制网络安全防护的目的。
如图1所示,基于SDN和集成学习的工业控制网络安全防护系统的核心为:利用SDN镜像得到工业控制网络内的通信流量,并对其进行监测与分析,在发现入侵信息后,触发对应的防护机制,利用SDN执行对应的防护策略,完成入侵检测至安全防护的闭环,由此确保工业控制网络的动态安全。
1.2 "SDN控制器结构设计
SDN控制器是软件定义网络架构的主要组成部分,其掌控工业控制网络的全局信息,对于工业控制网络的路径网络与流量拓扑进行管控。SDN控制器的主要特征描述如下:
1) 可靠性强。SND控制器在实际工业控制网络安全防护系统应用过程中需具备较强的容错、容灾能力,由此符合系统高可靠性需求。
2) 可扩展性。该特性是大规模工业控制网络有效应用的基础[6]。
为满足高度可靠性与可扩展性需求,工业控制网络安全防护系统设计过程中选取ONOS架构为SDN控制器的基础架构,并对控制器内的业务驱动与逻辑进行独立自主设计。
SND控制器的整体架构如图2所示。
分析图2可知,SDN控制器的设计可在麒麟操作系统中进行,中标麒麟服务器操作系统可令SDN控制器内包含64位系列CPU,并令其具备虚拟化功能。SDN控制器的北向接口与南向接口分别采用REST API接口和gRPC接口。
1.3 "基于集成学习的工业控制网络入侵检测
集成学习算法作为一种通过若干个分类器处理同一问题的方法,能够显著提升学习系统的泛化能力[7]。一般情况下,集成学习算法可划分为两个部分:第一部分是通过单一学习算法分别训练样本;第二部分是集成单一网络的输出结果,由此获取最终结果。
应用层中采用集成学习算法对工业控制网络进行入侵检测。针对工业控制网络的特性以及入侵检测的实际情况,选取异构集成模式[8],以及具有优质泛化性能的K最邻近算法、贝叶斯算法、支持向量机算法以及神经网络算法构建分类器模型。为充分增强不同分类器模型间的差异性,结合特征集选择训练集的集成学习入侵检测算法,详细过程描述如下:
1) 按照集成学习算法中一种普遍使用的算法——Bagging算法,对工业控制网络通信数据样本实施重采样,由此获取若干个工业控制网络初始通信数据集的样本子集。
2) 选取特征集方法,随机选取步骤1)中所得的工业控制网络初始通信数据集的样本子集特征,由此获取特征子集。
3) 选取集成学习算法,通过各类学习算法学习所获取的工业控制网络通信数据特征子集,其中集成学习算法内的各分类通过试凑方式确定参数[9],由此得到不同分类器。
4) 针对不同分类器的入侵判断结果,进行加权综合处理。通过萤火虫算法对加权处理过程中的权值进行寻优处理,由此获取最终的工业控制网络入侵检测结果。
基于集成学习的入侵检测流程如图3所示。
1.4 "安全防护算法
采用集成学习方法完成工业控制网络入侵检测后,构建工业控制网络信息安全的防御功能模块,构建动态的工业控制网络入侵信息防御机制。
防御机制子模块的主要功能为对入侵信息进行分析,同时选取对应的防御机制,令工业控制网络运行达到安全、稳定状态。以三元组描述工业控制网络安全防御过程[10],防御机制的主要算法如下:
[θ=Esδξ] " " " " " " " " (1)
式中:[Es]和[δ]分别表示入侵侧同防御侧工业参与数据与效用计算式;[ξ]表示参与数据的对应防护量。
针对入侵信息实施自动追踪与拦截,但入侵信息内包含一定量的噪声信息,导致所选取的入侵信息防御机制并非全部准确。为了解决这一问题,在追踪与拦截入侵数据过程中引入泛化误差,通过泛化误差判断对置信度的误差,公式如下:
[w=θ⋅a,bsconaϕ] " " " " " (2)
式中:[w]和[ϕ]分别表示泛化误差和数据集X内所含数据数量。
基于上述误差判断结果,在误差值大于1的条件下,需再次确定置信度;在误差值小于1的条件下,说明误差对于实际计算结果的影响并不显著,可在不考虑此误差的条件下开展后续工作。由数据库内获取合适的工业控制网络入侵信息防御机制,通过安全响应模块中央处理器的控制单元传输控制命令,触发相应的防御机制,同时在存储器内存储当前的数据信息,达到数据处理的目的,由此完成实时、智能的工业控制网络入侵处理,增强工业控制网络的安全防护性能,为工业控制网络提供安全、稳定的运行环境。
2 "实 "验
2.1 "实验参数设置
本文的实验参数如表1所示。
2.2 "实验方法
本文设计一种基于SDN和集成学习的工业控制网络安全防护系统,为验证该系统的实际应用性能,以某工业控制网络为实验对象,采用本文系统对实验对象进行安全防护测试。
2.2.1 "端口跳变测试
图4所示为本文系统端口跳变测试结果。
分析图4得到,采用本文系统后,实验对象端口跳变时能够实现正常数据通信,跳变前后实验对象通信过程中的延迟大致相同,仅在跳变的一瞬间出现大幅提升。由此说明采用本文系统对实验对象进行控制,可以满足实验对象通信的实时性要求。
2.2.2 "入侵检测结果
本文系统的入侵检测结果如表2所示。分析表2得到,采用本文系统对实验对象进行入侵检测,所得入侵检测结果与实际情况完全一致,由此说明本文系统能够准确实现实验对象的入侵检测。
2.2.3 "攻防性能测试
本文系统进行功能性能测试过程中,利用hping3攻击工具对入侵行为进行模拟仿真,在实验对象运行第5 s时对其进行入侵攻击。采用本文系统针对入侵行为调用防御机制进行安全防御,本文系统的攻防性能测试结果如图5所示。
分析图5得到,实验对象正常运行条件下的通信数据包约为50个/s,当实验对象受到入侵攻击的条件下,其通信数据包数量快速提升至45 000个左右。采用本文系统进行防护后,实验对象内部产生断连现象;采用本文系统进行防护前,实验对象通信数据包在3 s内快速下降。由此说明采用本文系统对实验对象进行安全防护后,能够保障实验对象在内部断联前阻断入侵攻击,由此确保实验对象安全运行效果,令实验对象正常通信。
3 "结 "论
本文整体考虑工业控制网络安全防护需求,设计一种基于SDN和集成学习的工业控制网络安全防护系统,基于SDN设计系统整体架构,通过集成学习进行系统入侵检测,基于检测结果进行入侵处理,实现安全防护目的。实验结果表明,所设计系统满足工业控制网络通信的实时性要求,能准确地实施入侵检测,从而保障工业控制网络的安全性和正常通信。
注:本文通讯作者为丁之。
参考文献
[1] 原锦明.云计算网络安全防护技术在冶金工业控制系统中的应用:评《有色轻金属冶炼过程优化与控制系统》[J].中国有色冶金,2023,52(2):165.
[2] 张春坡.黑岱沟露天煤矿工业控制网络安全防护技术研究与应用[J].煤炭工程,2021,53(z1):144⁃148.
[3] 顾兆军,孙浩然.基于时间自动机的工控系统网络安全研究[J].计算机仿真,2023,40(1):326⁃332.
[4] 丁朝晖,张伟,杨国玉,等.多维工控系统网络安全风险监测预警系统研究与应用[J].电子技术应用,2023,49(2):76⁃79.
[5] 尹彦尚,索同鹏,董黎刚,等.基于贝叶斯攻击图的SDN安全预测方法[J].电信科学,2021,37(11):75⁃85.
[6] 言洪萍,周强,王世豪,等.基于SDN的实际网络流中Tor网页复合特征提取方法[J].通信学报,2022,43(3):76⁃87.
[7] 姚玉坤,任丽丹,任智,等.MSC中基于SDN的拓扑感知RLNC重传方案[J].系统工程与电子技术,2022,44(4):1393⁃1400.
[8] 贾立鹏,王凤英,姜倩玉.基于多特征融合和集成学习的恶意代码检测研究[J].中国科技论文在线精品论文,2021,14(2):168⁃176.
[9] 陈仲磊,伊鹏,陈祥,等.基于集成学习的系统调用实时异常检测框架[J].计算机工程,2023,49(6):162⁃169.
[10] 曹波,李成海,宋亚飞,等.基于Stacking集成学习的网络安全态势预测方法[J].空军工程大学学报,2022,23(5):101⁃107.
[11] 米庆军,冯大鹏,于慧超.工业控制系统网络安全体系的架构设计[J].自动化应用,2023,64(10):88⁃90.
[12] 王乐,刘顺志,韩正.军工企业工业控制系统网络安全防护研究[J].工业信息安全,2023(1):61⁃67.
[13] 贾志强.基于工控网络数据的网络安全态势分析研究[D].北京:华北电力大学(北京),2023.
[14] 杨轶茜,张龙山.大数据背景下工业控制网络信息安全防护存在的问题及措施[J].网络安全和信息化,2023(3):119⁃121.
[15] 张永亮.基于深度学习的工业控制网络安全管理模型应用与研究[J].网络安全技术与应用,2023(11):10⁃12.