工业控制系统多传感器数据攻击检测方法研究

2022-04-25 07:20刘远彬徐茹枝崔东
电子元器件与信息技术 2022年3期
关键词:结点攻击行为矩阵

刘远彬 徐茹枝 崔东

(1.华北电力大学(北京)控制与计算机工程学院,北京 102206;2.内蒙古大唐国际托克托发电有限责任公司,内蒙古 呼和浩特 010205)

0 引言

工业控制系统(ICS,Industrial Control Control System)是指由计算机与工业过程控制部件等共同组成的,以工业生产、提供服务为主要目的的自动控制系统[1],是生产活动的控制中心和神经中枢,负责数据监测和智能控制,涉及能源转化、商品生产、交通运输等众多涉及支撑国家发展的重点行业。在ICS最初发展过程中,极大地忽视了网络安全方面的考虑,采取隔离的方式切断与外界的通信,同时工业控制系统信息化程度有限[2],对于网络安全的需求较低,随着“两化”融合以及工业智能化发展趋势,工业控制系统对于数据通信的需求急剧增加,工业控制系统的网络安全能够对工业控制系统产生严重影响。2010年发生的“震网病毒”事件,证明了网络攻击能够对现实设备产生实质性损坏[3]。相关报道显示,对于工业控制系统的攻击变得越来越频繁[4],且随着“等保2.0”时代的到来,工控安全问题得到了足够重视,但是现实的理论研究与实际需求之间仍有较大差距,主要由于工业控制系统具有自身特殊原因,互联网中成熟的安全方案不适合工业控制系统,例如很多工业控制系统不能轻易加装防病毒软件,系统补丁不能迅速更新、工业控制系统对于数据实时性和网络稳定性要求较高以及工业控制系统中协议众多等[2]。在某国对电网的一次攻击中,黑客被认为在能源公司的IT网络中隐藏了六个月而未被发现,他们在采取有条不紊的步骤使电源脱机之前获得了访问系统的特权[5]。在对某工厂的攻击中,Stuxnet蠕虫使用零时差攻击来感染系统,同时使用复杂的rootkit隐藏其更改,并使用被盗的受信任证书来验证其驱动程序[6]。火电厂是一个复杂的工业控制系统,作为重点电力基础设施,其安全性关乎国家和人民的用电质量。而为了提高电力基础设施网络信息的安全水平,人们对于电力监控系统网络安全防护技术进行了研究,由于电力监控系统属于工业控制系统的一种并且在网络安全研究方面具有较大的相似度,本研究以传统工业控制系统为对象进行建模,说明网络攻击方法和检测技术的有效性。

近些年对于工业控制系统的网络安全研究较多,对于不同的网络攻击形式提出了针对性的检测方法,进行数据攻击的检测往往采用主成分分析、小波分析和机器学习等检测方法。王金焕等人[7]提出一种基于田纳西伊斯曼过程(TE)的数据攻击方式,并采用小波与KPCA方法进行检测。刘大龙等人[8]提出一种基于多尺度主成分的检测方法,用于检测数据的欺骗性攻击,这种检测方法不依赖物理模型,能够很好地检测正弦攻击。Li,Senyu等人[9]适用布谷鸟搜索方法优化BP神经网络,提高了检测的准确性和检测效率。Krotofil,M等人在TE系统的基础上研发了一个DVCP攻击框架,支持Dos攻击和数据攻击,并将TE仿真初始种子设为随机数,使得每次仿真的数据是变化的,便于验证数据攻击的有效性。Krotofil,M等人提出一种基于相关熵的数据攻击检测方法,并说明工控系统数据之间存在一定相关性,这种相关性能够在检测攻击行为时提供帮助。Aoudi等人[10]提出一种基于过程数据的数据攻击检测方法(Pasad),能够适用于数据攻击及具有欺骗性质的数据攻击,具有较高的鲁棒性,利用系统过程参数的矩阵映射,通过判断系统过程数据是否偏离正常值来确定是否受到网络攻击。

为了提高火电厂机组安全运行的稳定性,本文提出一种多传感器攻击方法,其攻击数据与原始正常数据尽可能相似,传统的检测方法难以检测出攻击行为,并提出一种基于过程稳定性的检测模型以检测控制器和传感器信号是否被恶意操纵,以便及时发现问题进行报警,检测模型通过引入相关性特点,对异常数据进行放大,并对Pasad模型优化,使其适用于全厂数据的检测,通过weiszfeld算法求矩阵的中位中心,增强检测的准确性和及时性,并使用田纳西伊士曼模型进行验证,证明检测方法的有效性。

1 系统模型

1.1 实验对象

本文选取的实验对象为田纳西-伊斯曼模型,是由美国伊斯曼化学公司开发的一个基于matlab的仿真平台,模拟了一个真实的化工生产过程,其中包括反应釜、冷凝器、分离器、汽提塔和压缩机等设备,构成了一个复杂的非线性控制过程,常被用于多变量控制、故障诊断等领域,Downs和Vogel[11]于1993年对该控制过程进行详细的描述。这使得TE系统成为一个很好的案例,支持研究人员在此基础上开展各种研究。

该生产过程主要为通过使用A、B、C、D、E五种反应物生产G和H两个主要产品,其中B为一种惰性气体,F为一种副产品,该过程所有反应都是放热、不可逆过程。TE系统共有41个传感器变量(19个成分测量值和22个连续数据测量值)、12个控制器变量和15个环境扰动,其中根据G/H的出产率不同TE系统有六种工作模式。

其反应过程为:

本文采用的DVCP攻击框架将Ricker[12]的初始模型的传感器信号和执行器实施数据攻击和Dos攻击,并且通过修改原始代码,为每次模拟运行生成随机数,从而在模型中允许模拟中的随机性,保证数据运行有随机干扰,每次仿真所产生的数据都有所不同。

单个模拟时间设为72小时,仿真数据的实时信号采样为fs=2000s/h的采样速率进行采样,数据输出数据的采样为100s/h存储在Matlab的工作空间。

传感器的时序数据M是一个t×n的矩阵,表示n个传感器在时间t中每个时间点数据值的大小。

1.2 Pasad模型

Pasad模型为Aoudi[12]等人提出的一种数据驱动的检测技术,Pasad方法主要分为两部分,第一部分为训练部分,其将传感器测量的连续时间序列作为输入,通过获取正常时间段的稳定状态,将待检测时间段的数据映射到状态矩阵中,检测异常行为。

假设有一个单个传感器中连续的时序数据,设滞后参数为L,其中K=N-L+1,将其嵌入L×K的hankel矩阵中,得到如下的矩阵X成为轨迹空间:

矩阵X包含系统运行中产生的误差信息,为了获取数据,将稳定时间段的数据X进行奇异值分解,获得L个特征向量的正交集,保留r个前导正交特征向量(r

将时序数据进行计算时序的平均值:

通过将时序数据投影到投影矩阵中,得到此数据对应的状态中心,则数据状态中心为:

1.3 相关系数

对于工业控制系统来说,传感器的数据所反映的状态变换具有相互关联性,例如同一区域相似类型的传感器比来自其他区域传感器之间变化的关联更加紧密。为了分析传感器信号的相关性,使用皮尔逊相关系数(Pearson Correlation Coefficient)计算独立的两个传感器之间的相关程度,其数值大小介于-1和1之间,具体公式如下:

相关系数的引入能够区分不同数值之间的密切程度,通过对不同信号进行区分,将数据趋势变化密切的信号划分为一种信号簇,同簇的信号变化呈大致相同的趋势,在攻击者进行网络攻击的过程中会导致数据进入紊乱的状态,导致信号之间的相关性减小。本文将对于同簇之间传感器变化进行有选择的放大,以达到放大攻击的目的,方便检测装置检测进行更好的检测。

2 多传感器攻击模型

对于工业控制系统的攻击往往是对单个控制器或传感器进行攻击,为了最终实现系统中断生产过程,往往需要修改控制值或传感器值以与正常值产生较大程度的偏离,且为了构建一种更加难以被监测到同时能产生较大危害的攻击行为,本文采取将传感器或控制器进行组合的方式来攻击。

为了产生攻击组合,本文提出一种基于相关系数来构造多传感器攻击的方法,使得攻击能够尽可能减少被检测到的可能性。本文在重放历史数据的基础上增加选取均值为0的白噪声作为攻击信号。

ω(k)为正常数据最大值与最小值差的1/5与能量为0.01的白噪声的乘积,这样在保证能够干扰适中的情况下,躲避常规的检测手段同时能够对系统产生影响。Δd数值为20,y1(k-Δd)表示2小时前此结点数据的参数,利用历史数据重放能够在确保数据最大可能的接近正常数据的同时使得数据进行欺骗,达到难以被检测的效果。

为了确定攻击结点,首先,对系统确定响应的攻击对象,从被攻击对象中选取被攻击的目标,通过执行攻击行为达到攻击效果,确定攻击结点个数;其次,根据系统各参数之间的相关性数据尝试增加被攻击结点;最后,验证攻击是否能够引起系统失衡。

3 基于过程稳定性的检测模型

对于系统内n结点时序数据M,表示n个结点在时间为N范围内的所有时序数据:

第一步:对每个结点的数据,将数据以10为步长求时序数据的滑动平均值,将数据进行平滑处理,减少系统噪声和设备测量误差带来的影响。为了方便数据后续叠加计算,将数据进行标准化处理,将数据变成以100为均值、以10为方差的时序数据。

第二步:根据3.2中计算数据相关性公式,计算系统中各个数据的相关性,当相关性绝对值大于等于0.8时,说明数据之间存在较强的相关关系,对于数据的升降变化存在联系。将相关性大于0.8的结点归类为同簇数据,通过随机设定一个结点作为标准结点,200减去与其相关性呈负相关所对应结点的数据,目的使其对应数据进行翻转,使数据的相关性均统一变为正相关。然后利用下式对同簇的数据进行放大,作为训练数据,mean(st)表示同簇数据相同时间所有结点对应的数据的均值,stj表示同簇数据中第j个结点的数据,data为数据空间矩阵。

第三步:将每个结点对应的放大后的数据x_j分别嵌入L为1100、K为1101的hankel矩阵中,形成如下矩阵。

第四步:将每个结点所对应的hankel矩阵数据进行运算并叠加,得到轨迹空间。

其中,

第六步:取训练数据的2小时后逐渐稳定的数据,投影到投影空间矩阵中,得到状态矩阵c。

对于状态矩阵c中数据x通过weiszfeld算法求状态矩阵的中位中心,其中y(i+1)表示下一个时间点的中心,第一个y可以选取算数平均数中心,‖xj-yi‖表示第j个时间的数据与第i个中心值的欧式距离,最后通过迭代优化的限值让迭代停止,本文设置当迭代优化步长低于0.0001视为已获得最优中位中心值。本文中位中心的获取比Aoudi等人[12]所提出方法均值获取的数据更能准确地表达数据的稳定状态。

第七步:取长度为L的数据data作为训练数据,通过对data中同一时间所有结点数据求二范数,获得当前系统状态距离。

通过投影空间进行投影得到稳定状态,然后将稳定状态中心与获得的新的稳定状态矩阵进行做差,求矩阵的欧式距离,得到稳定状态空间与形心之间的距离ΔD。将训练数据ΔD+δ的最大值作为距离上限,用来检测测试数据是否存在异常,本文δ取值为100。

3.2 攻击检测

第一步:按照训练部分对数据进行平滑处理的运算方式对待检测时序数据进行平滑处理,然后使用训练部分获取的均值和方差对待检测数据进行标准化处理,得到时序数据st。

第二步:如训练部分第二步所示,利用公式(17)~(18)得到待检测部分的数据空间矩阵data。

第三步:如训练部分第七步所示,利用公式(25)~(27)得到状态矩阵w,然后利用训练部分获得的稳定状态中心Y和投影空间P,进行公式(28)的运算,得到稳定状态空间与形心之间的距离,通过检测每个时间点的距离ΔD值的大小判断是否存在异常行为。

基于过程稳定性的检测方法主要结合Pasad方法所提出的投影矩阵思想,将适用于单个结点的检测方法改进为适用于全厂大量结点数据的对象,同时结合相关性思想,将攻击行为进行放大,增强检测算法对于隐藏性较强的攻击行为的检测能力,同时能够减少检测时间,增强检测攻击行为的实时性,能够使得运行维护人员及时发现攻击行为,对于减小损失和及时的灾后重建具有重要意义。

4 结果实验与分析

4.1 多传感器攻击结果

为了说明攻击方法的有效性,本文选取攻击对象为TE模型中的反应器,为了对TE生产过程产生破坏,实现攻击途径为主要对反应器液位进行攻击,最终导致系统生产过程中断,并确定攻击结点个数为4。本文按照第2部分多传感器攻击模型描述步骤,通过实验确定对于一个多结点的系统,有众多攻击方式组合可以达到对攻击对象产生严重影响的目的。本文列举三种攻击方式,攻击方式1(xmv8、xmeas1、xmeas4、xmeas8)、攻击方式2(xmeas1、xmeas5、xmeas7、xmeas8)、攻击方式3(xmv8、xmeas1、xmeas4、xmeas8)和攻击方式3(xmv1、xmeas5、xmeas7、xmeas8)均可导致系统生产过程中断。其中对于攻击方式1中xmv5中加的ω(k)(噪声)取正值,目的是增大给进量,同时结点xmeas1、xmeas4、xmeas8噪声均为负,使采集数据低于正常水平,这种噪声增加方式能够缩短攻击引起系统中断的时间;对于攻击方式2,只有对于xmeas8采用负值的噪声,其余均为正值的噪声,这样能够激化测量值的矛盾,缩短攻击引起系统中断的时间。为展示攻击效果本文以攻击方式1和2为代表进行展示,结果如图1和图2所示。

图1 攻击方式1

图2 攻击方式2

为了说明本文提出的攻击方式具有较强的欺骗性,本文使用Aoudi等人[12]所提出的Pasad模型对于以上攻击方式1和攻击方式2检测攻击行为,检测结果如图3和图4所示。

图3 检测攻击方式1

图4 检测攻击方式2

根据检测结果可知,对于多传感器构造的攻击模型,适用Pasad方法均检测不出攻击结点遭受攻击的情况。

为了说明基于过程稳定性检测模型的有效性,利用此模型对于攻击方式1和攻击方式2分别进行检测,检测结果如图5所示。

图5 基于过程稳定性的检测结果

对于攻击方式1,在5008时间检测到攻击行为;对于攻击方式2,在5008时间检测到攻击行为。根据TE模型仿真时间每小时有100个数据点,所以对于以上两种攻击方法,均在攻击发生后的4.8分时检测到攻击行为,检测时间较常规方法有较大提升。

4.2 其他攻击数据分析

为了说明基于过程稳定性检测方法的性能,同时对于Aoudi等人[12]提出Pasad方法文中所列的网络攻击所有行为进行检测,结果证实均能检测出攻击行为,结合文中描述的DA1攻击数据,将基于过程稳定性检测模型与Pasad模型的检测结果进行比较,检测结果如图6所示。

图6 检测结果对比

如图6所示,攻击在4小时的时间点发生,使用Pasad模型检测,在4363时间点检测到攻击行为,使用基于过程稳定性的检测模型进行检测,在4190时间点检测到攻击行为,检测到的时间较之前提前1.5小时。由于基于过程稳定性的检测模型能够对系统所有数据进行分析,相较于之前的算法能够极大节省算力。综上所述,基于过程稳定性的检测模型在检测准确性、及时性以及计算性能上都有显著提升。

5 结论

本文提出一种多传感器攻击模型,在对控制系统进行攻击时具有较高的隐藏性,并能够导致系统中止生产过程,为了应对这种多传感器攻击方式,本文结合相关性特点改进一种Pasad检测模型,提出一种基于过程稳定性的检测模型,使其适用于全厂设备同时检测,并在TE系统中进行实验论证,实验结果表明基于过程稳定性的检测模型能够提高检测网络攻击的准确性、及时性和计算性能。

猜你喜欢
结点攻击行为矩阵
癫痫伴发精神障碍患者攻击行为发生状况及高危因素
为何有人动辄大打出手
住院精神病人暴力攻击行为原因分析及护理干预
LEACH 算法应用于矿井无线通信的路由算法研究
基于八数码问题的搜索算法的研究
如何应对阿尔茨海默病患者的攻击行为
多项式理论在矩阵求逆中的应用
矩阵
矩阵
矩阵