蒲在毅,张咏梅,贾艳梅
(西华师范大学,南充 637009)
网络控制系统是由执行器、传感器和控制器组成的空间分布系统,其通过通信网络上的信息交换进行协调控制.运输系统、电力系统、化学工艺、水和天然气分配网络、制造和运输网络可被视为网络物理系统(Cyber Physical Systems,CPSs)应用领域示例.CPS是通信能力、计算资源和物理过程的集成.此类系统通常被视为大规模分布式物理过程,可通过使用对各种基础设施中的系统运行至关重要的监控和数据采集(Supervisory Control And Data Acquisition,SCADA)软件进行监控.
考虑到网络控制系统包丢失和包延迟影响的控制系统设计,NCS还容易受到网络物理攻击的影响.文献[1]指出当攻击者阻止控制器接收传感器测量或设备接收控制律时,需要高度重视网络控制系统的拒绝服务(Denial of Service,DoS)攻击.文献[2]指出当攻击者发送关于传感器或执行器的虚假信息时,会引入欺骗攻击.文献[3]讨论了当攻击者产生人工测量延迟时的重放攻击问题.文献[4]通过故障检测和隔离(Fault Detection and Isolation,FDI)技术,考虑了接近传统故障的直接物理攻击问题.CPSs中的协同攻击检测问题似乎与传统的基于模型的FDI方案中的多部件、传感器或执行器故障检测问题密切相关,但也存在多个故障可能被认为是一种随机发生在执行器、传感器或通信通道上的现象.对此,文献[5]提出一种网络攻击检测自适应决策模型(Concept-adpting Very Fast Decision Tree,CVFDT),通过参数自适应过程简化算法设定,具有更广泛的适应性,但是参数自适应过程具有一定随机性,精度受到影响且资源占用较高;文献[6]提出一种网络攻击检测动态概率标记模型(Dynamic Probabilistic Packet Marking,DPPM),将网络的攻击行为简化为一个概率模型,简化了模型表达形式,但是计算精度不高;文献[7]提出一种网络攻击检测快速决策模型(Very Fast Decision Tre,VFDT),提高检测效率,但是检测精度相对较差.
本文研究了利用几何控制理论中的输出置零控制不变子空间设计的一种特殊的隐蔽攻击,即零动态攻击.当攻击者和防御者都考虑同一个设备模型时,检测攻击的唯一机会是假设存在防御行动,迫使攻击者在有限的时间内执行恶意活动,并将有限长时间零动态攻击下的网络物理系统表示为两个连续脉冲作用下的线性时不变系统,提出事件检测的广义似然比(Generalized Likelihood Ratio,GLR)[8]主动测试版本.
在本节中,我们提出了由物理设备和通信网络、线性二次高斯(Linear-Quadratic-Gaussian,LQG)控制器和异常检测器描述的网络控制系统中的网络/物理攻击检测问题[9],如图1所示.
图1 受LQG控制器攻击的网络控制系统Fig.1 Network control system attacked by LQG controller
如图1所示,受LQG控制器攻击的网络控制系统可由以下线性离散时间随机系统表示.
xk+1=Axk+Buk+wk
(1)
yk=Cxk+εk
(2)
式中,xk∈Rn,uk∈Rq和yk∈Rm是状态、输入和测量向量,wk∈Rn和εk∈Rm是零均值不相关高斯随机序列:
(3)
其中,W>0,V>0.假定初始状态x0与ωk和εk不相关,是高斯随机变量,且有
(4)
对于所有的z,状态对(A,C)是可检测的,状态对(A,B)是可稳定的,且有
(5)
(6)
由此可得,网络控制系统的线性二次高斯控制律可定义为
(7)
其中,线性二次高斯控制器设计参数Q≥0和R>0由下式给出.
(8)
其中,
(9)
(10)
(11)
假设恶意代理可在入侵时间k0实现特定的欺骗攻击ak,称为对控制信号的零动态攻击.假设为了计算适当的攻击策略,攻击者可以访问系统的详细模型.在欺骗攻击中,攻击者试图阻止执行器或传感器接收数据完整性.其目的是通过从控制器或传感器发送错误信息,从实际值修改控制信号或传感器测量值.错误信息可能是错误的发送者身份、错误的传感器测量、错误的控制输入或观察到测量时的不正确时间[11-12].
(12)
(13)
(14)
(15)
(16)
基于g=∑ε,利用式(16)可得(A-B∑)ξ=λξ,Cξ=0,表明不变零参数λ成为不可观测的成对模式(A-B∑,C).
提出一种被动攻击检测方案,利用卡尔曼滤波器的创新序列设计的异常检测器来实现网络攻击防御.定义dδk,k0-1作为时刻k0-1触发的d尺寸脉冲,其中δk,k0-1=0、∀k≠k0-1、δk,k0-1=1,对于k=k0-1,攻击模型(14)可改为
(17)
(18a)
(18b)
(19a)
(19b)
(20)
对LQG控制器产生的控制信号进行弹性防御策略注入,可以作用于NCS的状态变量,而对应用于卡尔曼滤波器创新序列的任何被动检测器都不可检测[13].在本节中,我们给出了一个主动攻击检测方案,以揭示零动态攻击的存在,并研究了防御者可用于快速恢复NCS正常行为的弹性控制策略,见图2.
图2 基于弹性LQG控制器的NCS攻击Fig.2 NCS attack based on elastic LQG controller
当攻击在入侵时间kf停止时,ak的后果可以描述为
(21)
(22)
(23a)
(23b)
(24a)
(24b)
可简化为
(25)
基于|λ|>1(以dλT为上界),υδk,kf-1的尺寸υ=dλkf-k0-1大于dδk,k0-1的尺寸d,并且脉冲υδk,kf-1现在有机会从异常检测器中检测到.当设备模型从式(20)切换到式(25)时,基于主动模型的FDI方案可表示为
(26)
(27)
式中,f(k,kf-1)和h(k,kf-1)可递归计算为
(29)
假设H0表示不存在攻击的无效假设;H1表示kf时的攻击结束假设.假设H1可以面对无效假设H0,因为:
(30)
且有E{γj}=0,kf-1>j≥0.令P(γj/H1),P(γj/H0)是γj在H1,H0条件下的高斯概率密度函数,并将似然比定义为
(31)
(32)
(33)
式中,
(34)
(35)
式中,ε是阈值级别.对于(35)的实现,可在有限大小的滑动窗口上实现最大化.假警报、漏检和良好的决策率取决于决策级别的选择和滑动窗口的大小[14].
当T(k)>ε时,通过使用Kalman滤波器更新策略,可以避免多次检测同一脉冲υδk,kf-1,可表示为如下形式.
(36)
(37)
然后,根据卡尔曼滤波器(5)上应用的更新策略(36),可推导出自主弹性LQG控制器.为评估所获得的弹性LQG控制器整体特性,需研究与攻击信号最大持续时间τ相关性能标准.
为了对所提网络控制系统零动态攻击控制过程的有效性进行验证,这里选取Ubuntu 14.04操作系统+硬件设置进行实验平台搭建,系统为64位系统,CPU主频为i5-6500K 2.4 GHz,系统RAM大小为ddr4-1800K 16GB.仿真平台中,安装有Wireshark 1.10.3,并结合ZigBee模块对研究网络数据进行检测和读取,实现数据实时监控.
系统中采用的是Arduino屏蔽,其通过嵌入式802.15.4模块以及Digi XBee802.15.4 RF模块进行实现,其所具有的优点是传输距离长,可达到数百米,主要用于低功耗网络数据传输中,存在的问题容易受到攻击干扰的影响,这也是本文选取其作为实验对象的主要原因.
本实验中选取的网络攻击检测模型精度评价指标是混淆矩阵,一般采用的是攻击检测正确数据数量占总体攻击数据总量的比例,分为网络攻击数据的准确率指标以及网络攻击数据的假阳性率指标,其定义形式分别如下.
(38)
(39)
式中,参数TN是网络攻击检测的真阴性值;TP是网络攻击检测的真阳性值;FN是网络攻击检测的真阴性值;FP是网络攻击检测的假阳性值.为更加充分的验证所提算法有效性,选取以下3种算法进行实验对比分析:网络攻击检测自适应决策模型(CVFDT)、网络攻击检测动态概率标记模型(DPPM)、网络攻击检测快速决策模型(VFDT).实验对比数据见表1所示.
表1 实验对比数据Tab.1 Experimental comparison data
通过对比表1中实验结果可知,网络攻击检测模型精度性能上,所提基于主动弹性防御策略的网络控制系统零动态攻击检测精度保持在95.6%~98.9%结果区间内,该精度指标要显著的优于CVFDT网络攻击检测算法模型(91.4%~96.7%取值区间)、DPPM网络攻击检测算法模型(90.1%~93.4%取值区间)、VFDT网络攻击检测算法模型(88.4%~92.3%).对于选取的假阳性评估指标,本文所提算法网络攻击检测的假阳性率指标为1.2%~3.5%,要明显低于CVFDT算法网络攻击检测的假阳性率指标(2.3%~6.2%)、DPPM算法网络攻击检测的假阳性率指标(4.2%~8.6%)以及VFDT算法网络攻击检测的假阳性率指标(5.7%~9.6%).通过实验分析,结果表明所提网络攻击检测模型相对于选取的对比检测算法模型具有更高的检测精度.
同时,根据表1实验数据中针对攻击信号持续时间的实验结果可知,随着攻击持续时间的增加几种算法的攻击识别精度均不断上升,假阳性率均逐渐下降,表现出相对一致的实验结果变化趋势.从几种算法的横向对比看,本文算法的实验结果要优于选取的几种对比算法,验证了所提算法的有效性.
本节实验中计算资源效率对比选取的指标主要有两个:计算内存占用比例和CPU处理时间.网络攻击数据数量区间是1 000~5 000,计算资源效率对比情况见图3结果所示.
根据图3所示计算资源效率实验结果可知,对于选取的相同数量的网络攻击样本,本文算法模型的样本攻击检测所需要的CPU处理时间要显著的少于选取的CVFDT、VFDT和DPPM三种网络攻击检测算法模型,其中DPPM网络攻击检测算法模型在计算资源效率指标上要优于CVFDT和VFDT网络攻击检测算法模型.CVFDT因为在网络攻击检测过程中增加了概率比较适应过程,因此其CPU处理时间最长.
图3 计算资源效率实验结果Fig.3 Experimental results of computational resource efficiency
采取相似方式,对网络攻击数据数量区间是1 000~5 000内,几种对比网络攻击检测算法模型的内存占用指标实验结果进行对比分析,见图4.
图4 内存占用指标实验结果Fig.4 Experimental results of memory occupancy index
根据图4所示内存占用指标实验结果可知,对于选取的相同数量的网络攻击样本,本文算法模型的样本攻击检测所需要的内存占用指标要显著的少于选取的CVFDT、VFDT和DPPM三种网络攻击检测算法模型,其中DPPM网络攻击检测算法模型在内存占用指标上要优于CVFDT和VFDT网络攻击检测算法模型.CVFDT同样因为增加了概率参数的自适应过程,而导致其内存占用指标相对VFDT模型较高.上述实验结果验证了所提算法在计算效率上的性能优势.
本文研究了线性离散随机系统零动态攻击的弹性控制策略.当网络物理系统的防御机制限制了对手的攻击窗口时,本文的第一部分表明,传统的基于模型的故障检测和隔离方案无法检测到零动态攻击,通过实时数据集攻击检测结果显示,所提算法明显具有更高的攻击检测质量.在第二部分中,设计了一个弹性线性二次高斯控制器,能够快速恢复闭环系统行为,可利用广义似然比检测器给出的信息在线更新卡尔曼滤波器,得到了弹性线性二次高斯控制器,通过算法资源利用效率实验结果显示所提算法具有更佳的计算效率和内存利用效率,验证了算法的有效性.