基于混合随机边缘计算的工控入侵检测系统设计
2022-03-30魏巍巍
魏巍巍
(北京信息职业技术学院 数字商务学院,北京 100015)
0 引言
近年来,工业控制网络的入侵和攻击事件日益增多,信息安全受到破坏,为此研究工业控制网络入侵检测系统具有重要意义[1]。具体地说,入侵检测系统在保障工控网络安全方面起着重要作用。例如,防火墙只能允许或阻止特定的端口访问,但却无法阻止开发端口的攻击入侵[2]。工控网络内部攻击往往比外部攻击更加强大和具有破坏性,而入侵检测系统能够阻止网络内部的攻击,因此入侵检测系统能够对工业控制网络的安全保护起到很大的作用[3]。
当前相关领域学者已对工控入侵检测系统做出了研究。文献[4]提出了基于深度Q网络的工控网络异常检测系统,融合深度学习算法及Q-learning方法对工控网络进行训练,及时发现入侵攻击行为并作出预警。然而由于工业控制网络对于网络操作具有特殊要求,如果只对正常运行状态下的工控网络进行训练,会导致入侵行为漏报现象,一旦入侵行为稍作调整,就可以躲避系统检测;文献[5]提出基于优化极限学习机的工业控制系统入侵检测模型,利用混合自适应量子粒子群算法,对入侵行为输入权值和隐含层结点阈值进行优化,增强了算法的全局优化能力,建立了基于 HAQPSO优化的工业控制入侵检测模型。虽然使用该系统的全局寻优能力较强,但一旦出现边缘入侵问题,那么使用该系统就无法有效检测,导致检测效果较差。
基于上述检测系统存在的无法及时准确检测到边缘入侵行为,威胁工控系统网络安全的问题,提出了基于混合随机边缘计算的工控入侵检测系统设计,分别对系统硬件模块及软件流程做出设计。利用边缘计算将云计算的计算能力渗透到数据端,将边缘云协作融入混合随机边缘计算中,通过混合随机边缘计算得到入侵检测信号的能量,构建动态模型实现工控入侵检测。
1 工控入侵检测系统硬件结构设计
鉴于工业控制系统的特殊性,系统中的每一种设备都需要根据业务逻辑在固定的时间内完成其具体的操作,对实时性要求很高,不能有任何差错,否则将威胁工控系统的正常运行,甚至破坏系统的功能[6]。为了避免工业控制环境下的入侵检测系统受到外界干扰影响,提出了一种基于混合随机边缘计算的工业入侵检测系统,并对其进行了详细的设计。系统硬件结构如图1所示。
图1 系统硬件结构
由图1可知,本系统采用一台中央服务器和分布在各个工控子网上的多路网探头分布式结构,通过独立交换机构成网络入侵检测系统,利用分布式网络探针,将网络流量接入系统,实现系统的零干扰。中央服务器能够实现工控网络数据大容量存储并提供性能良好的处理器,实现数据的高速处理;分布式网络探针包括网络流量采集器、数据预处理器及入侵检测引擎,能够实现工控网络入侵的实时、可靠检测;核心交换机可实现的网络流量数据的可靠、高速传输。
1.1 中央服务器
系统采用一台中央服务器作为管理和控制中心,通过任务分配机制实现对网络探测器的管理,探测器通过网络发送和接收报警信息,形成一个统一的报警日志,并在一个友好的可视世界中为管理人员显示各种报警统计数据[7]。
中央服务器结构如图2所示。
图2 中央服务器结构
由图2可知,中央服务器是通过代理服务器连接到互联网上的局域网,主板使用了Catalina型号缓冲器,可扩展CPU通道,将2个扩展成8个,每条通道内包含DDR3内存子通道,每条内存通道有两个 CPU,因此总共有48个内存插槽[8]。中央服务器需要多个网卡接口,以及大容量存储和一个性能良好的处理器。采用多种网卡接口连接不同的网络探头,采用大容量存储器存储各种报警信息和日志记录[9]。另外,为了保证良好的用户体验,还必须对处理器的性能提出了要求。
1.2 分布式网络探针
分布式网络探头部署在各种工控子网上,具有监听、捕获、解析网络包的功能。选用JY211-QTQ-04型光缆检测仪,它由一台变送器和一台接收机组成,能够自动检测并显示电池的电压,在低于10 V时报警迅速停止。关电后,阻抗匹配自动启动,启动时实时显示信号强度。接收者接收来自光纤的信号,并检测线路和深度。操作人员根据指针显示,蜂鸣器发出声音提示确认电缆线路,埋设部门进行埋深[10]。
经晶形振子处理后,产生5 M的正弦波,再将其分解为7.8 k左右的正弦波,电流通过晶体管和线圈发出强大的电磁波。每一区域的线圈都可以接收到电磁波,而中心控制器在电磁波发送期间,可以扫描5张采集卡,并在界面上显示其结构。每个网络检测器至少有两个端口,一个端口用于工控交换机镜像通信,另一个用于连接中央服务器[11]。
1.2.1 网络流量采集器
为了提高网络流量捕获效率,使用网络 I/O结构,避免数据丢失,结合开源函数库,在1 000 MHz单核 CPU下处理10 G网络流量。基于零复制思想,结合网络地图设计的网络流量采集器,相对于传统的网络流量采集方式,可以显著提高网络数据采集速度,有效地节约了系统设计费用。网络流量采集器中,网卡通过网卡环对入站和出站组进行管理。每个网卡都要维护至少几个小空间,每一个空间都包含大量的缓冲信息,主机网络堆栈通过一个网卡直接访问缓冲区存储区域,使数据按顺序依次进行接收[12]。
1.2.2 数据预处理器
主要包括会话解析数据处理、工业控制协议数据处理、协议解析数据处理等,其中会话解析数据处理主要包括对提取源 IP、源数据、目的 IP、目标日期、传输层协议等信息进行处理;工业控制协议数据处理主要包括对用于识别行业协议的特征域进行处理;协议解析数据处理主要包括对开放源码的处理以及工控协议代码。
1.2.3 入侵检测引擎
入侵检测引擎为系统的核心引擎,具备实时、可靠检测功能,入侵检测引擎如图3所示。
图3 入侵检测引擎
由图3可知,入侵检测引擎通过获取和分析通信数据包,采用规则自学习、特征提取、分类、入侵检测等技术,建立了一个工业控制系统,以实现分布式入侵检测功能。
1.3 核心交换机
采用S5720S-28P-SI-AC型号,24口全千兆网络核心交换机,可直接与网络用户连接。核交换接入层与核心层之间设有汇合层,其中接入层的作用是支持终端用户直接接入网络,其特点是端口高、密度低;汇流层的作用是将多个节点数据汇合到一层,处理所有从接入层传送的流量数据;核心层的作用是提供可靠的网络流量传输结构,实现数据高速传输[13]。
2 基于混合随机边缘计算的工控入侵检测系统软件设计
在硬件结构的基础上,设计工控入侵检测系统软件流程。客户机根据所需完成的服务生成任务来执行请求包,在这个请求包中,使用跟踪身份表示正在执行服务,而边缘计算会将云计算的计算能力渗透到数据端。所以,局部边缘计算具有高实时性,能够存储短期数据,而云计算则能存储大量数据,远距离进行大数据分析,以及本地支持边缘计算的决策能力[14]。本文通过边缘计算和云计算在入侵检测业务中的应用,分析了边缘云协作在入侵检测业务中的作用。
设计的基于混合随机边缘计算的工控入侵检测系统,主要步骤包括:
步骤1:由于网络中可以有多个节点处理某项任务中的一个步骤,因此请求包中任务执行的每一个服务也需要指明它将在哪个节点上执行。当发送给网络的任务执行请求包时,如果是按串行顺序执行的,那么服务序列中的每个项都是连续执行的[15]。在边缘节点上,跟踪标志指向子服务序列中的下一个服务。
步骤2:根据所构建的业务网络拓扑图和当前需要执行的业务,客户选择具有最佳指标的边缘节点,将任务执行请求包发送到相关的边缘节点。
服务网络拓扑图如图4所示。
图4 服务网络拓扑图
步骤3:关联边缘节点解析任务执行请求包,当相关服务出现局部执行结果时,直接读取相应的执行结果。而且,如果服务队列中的同一个服务等待执行,那么队列就跳到请求包执行相关任务的位置[16-18]。不然,在服务队列之后重复这个过程,直到服务完成。
步骤4:基于混合随机边缘计算的入侵检测动态建模,分析一段待检测的工控网络入侵信号W,其计算公式为:
(1)
公式(1)中,λi表示待检测信号中各个检测点的有效幅值;m表示待检测信号的有效长度。
由于工控系统中存在随机噪声扰动,通过分数阶变换对随机噪声扰动进行自相关特征匹配,抑制噪声输出,得到去噪后的检测信号。
(2)
公式(2)中,λ(m)表示去噪后的检测信号,k为调频斜率,S(t)为零均值高斯噪声。
基于混合随机边缘算法计算噪声去除后的功率psl,计算公式为:
(3)
设maxW1表示待检测某段R1的最高能量,该段能量所对应的信噪比为maxSNR1,maxW2为表示待检测某段中剩下部分的R2最高能量。
基于上述内容,构建的入侵检测动态模型为:
(4)
当入侵信号满足公式(4)时,则检测到的R1信号段为入侵信号段,否则R2为入侵信号段。通过该模型实现工控系统入侵检测。
综上所述,基于混合随机边缘计算的工控入侵检测系统软件流程如图5所示。
图5 基于混合随机边缘计算的工控入侵检测系统软件流程
3 实验结果与分析
3.1 实验环境
为了验证基于混合随机边缘计算的工控入侵检测系统设计合理性,利用上位机结合具体工况业务逻辑,分析燃气管网的工作模式,其拓扑结构如图6所示。
图6 实验环境拓扑结构
由图6可知,为了方便入侵检测系统移植,在控制层设置了两种PLC,并部署在控制子网中。
3.2 实验数据集
KDD CUP 99数据集包含了TCP dump网络数据和审计数据,模拟多种用户种类,使其看起来像是在真实环境下构建的网络环境。其中TCP dump网络数据主要分为两个部分,分别是包含5 000 000个训练数据和200万条的测试数据。
联网连接是指在某一时期内,从头到尾的 TCP数据组成序列协议,将数据从源 IP地址传输到目标 IP地址。未知攻击出现在测试集内,主要包括4种异常情况,如下所示:
1)拒绝攻击模式,比如受到畸形报文攻击、协议缺陷、IP欺骗;
2)远程主机未授权访问,比如密码猜测;
3)未授权本地用户访问,比如缓冲溢出攻击;
4)端口监视,比如端口扫描。
3.3 实验结果与分析
在上述4种异常情况下,触发基于混合随机边缘计算的工控入侵检测系统的告警日志记录,如图7所示。
图7 4种异常数据下入侵检测系统的告警日志记录
由图7可知,图7(a)拒绝服务攻击下的入侵检测报告:在局域网中可能存在攻击畸形报文攻击、协议缺陷、IP欺骗行为的主机,直接通过强制断网操作,就可阻断入侵行为;图7(b)远程主机未授权访问下的入侵检测报告,通过对局域网中运行的影响网速的软件检测,可及时发现入侵行为;图7(c)未授权本地用户访问,通过在安全工具窗内,选择自动向局域网发送攻击免疫信息,由此开启入侵检测功能;图7(d)为端口监视,通过将IP地址和MAC进行静态绑定来实现端口扫描,阻断入侵行为。
分别采用文献[4]方法、文献[5]方法作为实验对比方法,对比分析不同入侵时间段下系统的潜伏期,对比结果如图8所示。
图8 3种系统不同入侵时间段下系统潜伏期对比分析
由图8可知,使用文献[4]方法在入侵时间为13 s时,潜伏期达到最长为6.4 s,并且随着入侵时间增加,潜伏期也在5~6.4 s间波动;使用文献[5]方法的入侵检测系统在入侵时间为40 s时,潜伏期达到最长为5.8 s,潜伏期时间较长;使用基于混合随机边缘计算的入侵检测系统在入侵时间为7 s时,潜伏期达到最长为2.4 s,随着入侵时间增加,该系统有效抵抗了黑客入侵,虽然在20~30 s范围内出现小幅度的变化,但最终成功抵抗了外界入侵。分析可知,文献[4]方法采用深度强化学习算法训练工控网络入侵数据,输出入侵攻击行为数据,该方法未对不同运行状态下的工控网络进行训练,因此存在入侵行为漏报现象;文献[5]方法采用混合自适应量子粒子群算法,在HAQPSO的基础上优化入侵行为的输入权值和隐含层节点阈值,增强了算法的全局优化能力。但该方法无法有效地检测出边缘入侵行为。而本文方法采用混合随机边缘计算方法,将边缘云协作融入混合随机边缘计算中,获取入侵检测信号的能量并判断入侵信号段,因此能够得到准确的入侵检测值。
4 结束语
设计工控入侵检测系统,将混合随机边缘计算方式融合到工控入侵检测系统中,可将检测任务划分到检测环节中,在工控环境下对入侵信号段进行精准识别与监测,实现对工控系统的全面检测。实验结果表明,所设计系统能够准确监测到实验设置的4种异常情况,其入侵检测潜伏期最长为2.4 s,能够成功抵御外界入侵,使其更加适用于工控网络。
虽然所设计系统发挥了良好的作用,但还存在许多有待改进的地方,值得进一步研究:在应用场景中,如何设计出适合于工业网络安全的模式匹配算法,对进一步提高检测效率具有重要意义。