APP下载

基于PCA的过程控制系统欺骗攻击研究

2015-08-09王亚楠王华忠颜秉勇

关键词:工控反应器建模

王亚楠,王华忠,颜秉勇

(华东理工大学 化工过程先进控制和优化技术教育部重点实验室, 上海 200237)

0 引言

石化、电力等工业生产规模越来越大,生产过程的异常或故障有可能造成重大的经济损失、环境灾难甚至人员伤亡.长期以来,工业界十分重视安全生产,在技术和管理上有一系列的保障措施,工业生产过程的故障检测、状态监控及各种健康诊断系统就属于一类典型的技术手段,这些系统对生产过程状态进行监控,及时发现各种生产异常、设备故障,从而能快速完成检修及后续维护,确保安全生产[1].长期以来,故障检测系统主要是针对非人为攻击控制系统引起的设备失效、故障或工艺参数异常情况.然而,随着控制系统与信息系统的集成度不断提高,大型工业生产过程的工控系统甚至成为互联网中的一部分.因此,广泛存在于IT系统的信息安全问题也出现在工业控制系统.特别是近年来网络攻击手段越来越多样化、越来越隐蔽,出现的工业控制系统攻击事件不断增多,造成较大的损失甚至严重后果,促使国内外十分关注控制系统的信息安全.

作为一类有效的安全防护措施,工控系统攻击检测已成为工控系统信息安全研究重要的组成部分,日益受到重视[2].目前该领域的研究主要可分为两大类研究.一种是基于工控系统上位机上的实时/历史数据,采用状态监控及故障检测算法开展研究.如Amin等人[3]就对水利灌溉SCADA系统进行了欺骗攻击的研究,通过建立被控系统状态模型对攻击检测进行监控.研究表明,上位机无异常警告的情况下,入侵者能打开排水渠阀门偷水. Teixeira等人[4]对电力系统进行研究,发现攻击者可以躲过状态监测系统而对电力看系统展开攻击.另外一类研究则是把工控系统也作一种特殊的信息系统,采用传统信息安全防护中常用的主机及网络入侵检测算法来研究工控系统的攻击检测.由于工控网络具有的确定、静态和数据流可以预测等特性[5],十分有利于入侵检测.目前研究较多的是异常检测算法[6]和基于特征的入侵检测算法[7].这类研究主要是从工控网络上提取工控系统关键信息.由于工控系统中协议众多,还存在许多私有协议,因此存在难以从工控网络中获取有效数据的困难,限制了该方法的应用.本文重点研究了基于主元分析的故障检测算法对于三类攻击场景的性能.

1 故障检测系统欺骗攻击建模

1.1 攻击模式建模

假设攻击者能够接入工控系统,进而改变系统中的传感变量和控制变量,并且不考虑攻击者对控制器中控制逻辑的篡改.在给定上述假设的情况下,就可以在控制系统中引入简化的攻击变量,即只考虑传感变量和控制变量输出的攻击.

攻击建模包括物理传感变量攻击建模和控制变量建模两部分.

1) 传感变量攻击建模

2) 控制变量攻击模型

Huang等人[8]提出的控制系统攻击建模有很多种,包括缩放攻击,添加攻击,替换攻击,最大值、最小值攻击等,这里可以通过改变常量参数来实现.本文将使用添加攻击和替换攻击,以公式(1)为例,令A=0,B=1,若D=0,则为添加函数攻击,若C=0,则为常量添加攻击,此时,

令A=B=0,则描述了替换攻击,此时

1.2 TE过程模型介绍

田纳西-伊斯曼(Tennessee Eastman,TE)过程是一个实际化工过程的仿真模拟,是一个复杂的非线性过程.TE过程是由Downs和Vogel根据伊斯曼化学品公司基于一个真实工业工程创建的,通过对其实际工艺流程作少许修改后用于评价过程控制和监控方法提供一个现实的工业过程,被广泛应用于过程控制研究[9].有大量文献引用TE模型作为数据源,进行过程监控与故障诊断等研究[10].

TE过程模型主要由反应器、气液分离器、汽提塔、循环压缩机及产品冷凝器五个设备组成.气态反应物进入反应器中反应生成液态产物.反应器通过冷凝水降温,移除反应产生的能量.出来的产物是气态的还混合有未反应物.TE过程模型共有12个操纵变量,41个测量变量,包括15种已知扰动,有 6 种运行模式.该过程是一个大样本的复杂非线性化工系统,它包括21种预先设定好的故障,分别代表阶跃、随机、变化、慢漂移、黏滞和恒定位置等故障类型.

1.3 TE过程硬件在环系统

为了更真实地模拟工控系统及对其实施的攻击分析,构建了TE过程控制器硬件在环测试床,即MATLAB中只对TE过程模型部分进行仿真,而控制回路则在西门子S7-300 PLC中实现.系统主要的控制回路包括反应器温度、反应器压力和反应器液位等.整个系统结构很好地模拟了实际工控系统结构,包括TE模型仿真、OPC服务器、S7-300 PLC以及用WinCC开发的人机界面,其结构如图1所示.

图1 TE过程控制器硬件在环控制系统结构Fig. 1 Hardware in the loop control system structure of TE process

人机界面、OPC服务器及模型仿真在不同的计算机上运行,各个部分通过以太网进行数据交换.模拟的欺骗攻击发生在控制层,假设攻击者能接入控制网络,从而操纵或修改传感器或执行器参数.

1.4 工业过程故障检测

主元分析法是基于数据驱动的一类典型的故障检测算法,被广泛应用于工业控制系统故障检测,它具有不依赖于过程模型、易于实施的特点[11-12].其基本原理是构造原变量的线性组合,以产生一系列互不相干的新变量,从中选取几个新变量,使它们含有尽可能多的信息.PCA将正常工作情况下采集的数据建立主元模型,当控制系统中的数据与主元模型不相符时,则系统可能有异常.本文采用的检测方法是HotellingT2统计法和SPE法(平方预测误差,Square Prediction Error).T2是主元向量的标准平方和,代表每个采样在变化趋势和幅值上偏离模型的程度,如式(5).

T2=tT∧-1t=

[t1,t2,…,tp]∧-1[t1,t2,…,tp]T.

(5)

SPE表示每个采样在变化趋势上与统计模型之间的误差,是模型外部数据变化的一种测度,如式(6).

SPE=‖φ(x)-φp(x)‖2=

‖φN(x)-φp(x)‖2=

正常生产状态下,T2和SPE都应小于其置信限,若有一个统计量超出置信限,则系统有异常.

2 欺骗攻击仿真结果分析

2.1 攻击场景1:操纵传感器

对TE过程中反应器液位y1进行常量添加攻击,攻击值为5%,攻击时间从t=5 h到t=72 h.添加攻击后传感器监测值增加到70%,高于设定值65%,导致反应器流速减小,液位下降至60%左右,最后停留在一个低于正常运行状态值的稳态值上.此时PCA检测系统将其当成是系统故障,能够很好地检测出异常,并一直处于告警状态,如图2所示.随着攻击值的加大,PCA统计值超出阈值越多,表明检测统计量对此类攻击非常灵敏.

对TE模型[9]中A进料流量(y2)进行添加攻击,添加值为0.05 km3(25%).(y2)在t=5 h遭到添加攻击后,A进料流量开始骤降,但控制回路能够补偿这个变化,使流1中A的进料流量返回到设置点(即使攻击在系统中持续存在),大约10 h后逐渐恢复到稳态.

PCA统计量的攻击检测结果如图3所示,显示出了很高的漏检率.统计量在攻击发生后17 h便回归到阈值以下,而检测统计量的持续性是很重要的,设备操作员通常需要花一定量的时间来追踪出异常过程运行的原因.当定位一个异常源的时间超过检测统计量的持续时间时,设备操作员可能会得到系统已经“自动修正”的结论,并认为过程又运转在正常运行状态.这种类型的系统行为会掩饰故障,使得检测系统很难分离系统真正的异常情况,攻击就有可能骗过检测系统而持续对生产设备造成危害.

图2 反应器液位添加攻击PCA统计量Fig.2 PCA statistics of add attack on reactor level

将常量添加攻击换成锯齿波攻击,检测结果见图4.最大值依然为0.05 km3,如式(7)所示.

此时PCA统计量在t=7 h左右检测到异常,并且直到t=24 h才恢复正常值.也就是说,PCA统计量检测到系统异常到攻击结束之间的时间只有3 h.攻击结束之后PCA统计量反而大幅度上升并持续了14 h,持续的检测统计量会继续通知操作员过程异常.这说明缓慢增大的添加攻击PCA统计量更难以发现,并且在攻击结束后的漏检率和误检率很高,这将对操作员造成很大干扰.

图3 流1中A的进料流量常量添加攻击PCA统计量Fig. 3 PCA statistics of add constant on flow A

图4 流1中A的进料流量锯齿波添加攻击PCA统计量Fig. 4 PCA statistics of add sawtooth wave on flow A

2.2 攻击场景2:操纵执行器

对控制变量输出值进行攻击,从t=5 h开始添加一个锯齿波,最大值为5 km3/h(16.7%),如式(8)所示.

如图5所示,PCA检测系统在攻击时段内没有任何反应,但是在攻击结束后1.8 h PCA统计量显示异常,该现象将对操作员产生干扰.

图5 分离器罐液流量添加攻击PCA统计量Fig. 5 PCA statistics of add attack on separator tank liquid

2.3 攻击场景3:隐藏故障

PCA用于故障检测时表现出了良好的性能,但对于部分故障PCA统计量漏检率较高,接下来对TE模型[9]中所预设的故障4进行欺骗攻击测试.故障4涉及反应器冷却水入口温度的一个阶跃变化,这个温度是不可测量的,它会引起反应器冷却水流速的阶跃变化.故障发生后,反应器中温度会突然增高,冷却水流速会突然增大,其余50个测量变量和控制变量基本保持稳定.此时,对反应器温度和反应器压力进行替换攻击,将原先会增加的值替换成无故障时候的值,冷却水流速将保持不变.如式(9)和式(10)所示.

此时再用PCA统计量进行检测,结果见图6.

图6 故障4欺骗攻击PCA检测Fig. 6 PCA statistics of Fault 4 detection

PCA未能检测出故障的存在,攻击将系统本身的故障隐藏了,PCA检测系统一直显示无异常,而持续存在的故障将对生产造成很大伤害.

3 结论

构建了控制器硬件在环的测试床来更真实地模拟工控系统及开展相关的工控信息安全研究.虽然对于传感器和执行器的人为攻击导致的被控过程参数变化与这类设备故障有一定的相似性,故障检测系统在一定情况下仍能做出生产异常的判断,但对于更加复杂多变的人为攻击,故障检测系统就存在显著的误判和漏判,对于安全生产的指导意义大大降低,甚至会导致操作人员错误操作,从而造成安全生产事故.此外,由于欺骗攻击的存在,上位机上的应用层数据存在被篡改的可能,基于这些数据开展的在线优化及其他先进控制算法的实现也面临较大的风险.因此,在工控系统也成为攻击目标后,非常有必要加强控制系统攻击检测及防护研究,通过建立边界隔离、主机防御以及安全管理平台等措施来降低工控系统受到攻击的风险,减少控制系统受到攻击后的损失.

猜你喜欢

工控反应器建模
聚丙烯环管反应器升密操作与控制
联想等效,拓展建模——以“带电小球在等效场中做圆周运动”为例
基于PSS/E的风电场建模与动态分析
不对称半桥变换器的建模与仿真
EGSB反应器处理阿维菌素废水
工控速派 一个工控技术服务的江湖
工控速浱 一个工控技术服务的江湖
上旋流厌氧反应器在造纸废水处理中的应用
热点追踪 工控安全低调而不失重要
基于攻击图的工控系统脆弱性量化方法