《一种面向工业控制过程的入侵检测方法.docx》由会员分享,可在线阅读,更多相关《一种面向工业控制过程的入侵检测方法.docx(11页珍藏版)》请在优知文库上搜索。
1、O0引a工业控制系统(IndUStria1.Contro1.System,ICS)是指由计算机与工业过程控制部件组成的自动控制系统,广泛应用于工业、能源、交通、水利等各个领域.随着网络技术的发展,两化融合的需要,工业控制系统需要更多地接入开放的网络空间中,由此带来的风睑也不断增加。近年来,以Stuxnet病毒为代表的针对工控系统的高级持续性威胁(AdvancedPersistentThreat,APT)攻击越来越频繁,旧有的物理隔圈防护策略已不能满足现代ICS防护的需要。APT攻击综合多种先迸的攻击手段,利用工控系统的漏洞,持续隐蔽地对工业控制过程(Industria1.Contro1.Pro
2、cess,ICP)进行干扰和破坏.由于工业控制过程与工业现场的物理设备直接连接,一旦受到攻击将会产生难以估计的后果.由此可见,尽早发现持续隐蔽的攻击行为将能够有力地保护工业安全,避免人员和财产损失。根据国际计算机安全协会(InternatiOna1.ComputerSecurityAssociation,ICSA)的定义,入侵检测是通过从计算机网络或计算机系统中的若干关键点收集信息并对其进行分析,从中发现网络或系统中是否有违反安全策略的行为和遭到袭击迹象的一种安全技术。入侵检测系统(IntrusionDetectionSystem,IDS)被称为防火墙之后的第二道安全闸门,在工业生产过程中,能
3、够检测到攻击者对工业控制过程的内部和外部攻击,发出警告并启动防护措施,以避免物理系统发生损坏.O1.工控系统入侵检窝方法相关研究由于工业控制系统自身与物理世界紧密联系的特殊性,类似Stuxnet一类的病毒攻击往往潜伏于工业控制节点中,修改控制逻辑时,并不会在网络流量中表现出异常,仅体现在工业控制过程的状态信息中,传统的入侵检测方法无法及时发现.根据采集数据的来源,入侵检测方法可以分为基于主机(Host-Based)的入侵检测和基于网络(Network-Based)的入侵检测.基于网络的入侵检测方法是对网络传输数据包进行实时检测,提取分析其中相关的数据特征信息,从而判断网络入侵是否发生.基于主机
4、的入侵检测方法是对系统主机的相关信息进行检测,提取系统审计记录、运行状态、日志内容等信息的关犍特征,识别其中的异常数据,进而中止攻击行为.1.1 基于网络的入侵检测为保证工业控制系统的可用性,工业现场往往采用较为稳定的网络拓扑结构。基于网络的入侵检测可以针对网络流量的规律性变化,通过神经网络,支持向量机(SUPPOrtVectorMachine,SVM)x贝叶斯网络等机器学习算法进行建模,若出现违反该模型/模式的行为出现时,即视为网络入侵并发出警告.针对ModbUS/TCP协议漏洞频出问题,设计了基于卷积神经网络的异常报文检测模型,实现对ModbsTCP异常报文检测.设计并实现基于神经网络的多
5、种工业协议入侵检测模块,并利用神经网络完成对模型的训练和异常检测,将n-gram算法用于特征提取,结合单类支持向量机(One-C1.assSupportVectorMachine,OCSVM)与集成学习,对Modbus网络进行异常检测.文献6J针对电网工控系统的流量异常检测需要,提出了基于燧的动态半监督K-means算法,并通过OCSVM进行了改三.文献提出一种基于布隆过滤器(b1.oomfi1.ter)的入侵检测机制,以应对针对汽车CAN总线的重放和修改攻击。1.2 基于主机的入侵检测基于网络的入侵检测需要实时监听网络传输中的数据流量信息,对带宽的要求较高,基于主机的入侵检测则能有效避免此类
6、问题.从工业控制网络流量中提取行为数据序列,建立控制器的正常行为模型和ICS的受控过程,并比较测试的行为数据和预测行为数据以检测任何异常。研究如何将历史相量测量单元(PhasorMeasurementUnit,PMU)测量结果转换为数据样本以进行学习,建立分布式检测框架以检测整个电力系统中的数据操纵攻击。文献10针对SCADA组件的输入输出时间序列,提出两种基于隐式马尔可夫模型(HiddenMarkovMode1.,HMM)和人工神经网络(Artificia1.Neura1.Network,ANN)算法的网络攻击检测技术.研究通过分布式攻击检测(DistributedAttackDetecti
7、on,DAD)的方法识别工厂物理过程的异常,实时检测针对水处理厂传感器的入侵攻击.文献12将来自制造过程级别和生产系统级别的物理数据与来自基于网络和基于主机的IDS的网络数据集成在一起,采用KNN等机器学习方法,实现网络制造系统(Cyber-ManufacturingSystem,CMS)的恶意攻击入侵检测.文献13介绍了一种完全分布式的通用异常检测方案,该方案使用图论并利用物理过程的时空相关性对通用大型网络工业传翱系统(NetworkedIndustria1.SensingSystems,NISS)进行实时异常检测.针对工业控制系统的入侵攻击,具有信息物理耦合和攻击隐蔽的特点:信息物理耦合使
8、得攻击的设计与业务流程紧密相关,最终体现在对物理系统的巨大破坏上;攻击隐蔽是指攻击者在成功获取工业控制权限前,往往进行长期潜伏,躲避已有的安全防护措施.现有的入侵检测方法往往较少考虑到工业控制过程自身的特点。本文提出一种面向工业控制过程的入侵检测方法,从工业控制过程出发,充分考虑工控攻击的特点,将入侵检测转化为物理系统状态变化检测的最优停止问题。O1.针对工业控制过程的攻击模型根据自动控制理论,对于离散线性控制系统,可以用如下的状态方程进行描述:X(r+1)=4x(/)+Bm(/)+v(t)式中,Mr)=(X,*Z,)e*是系统变量,表示系统在t时刻的状态;q=(q)wb是状态矩阵;=(%)w
9、R”是输入矩阵;M(r)=(M1.r.,Mw)表示t时刻控制器的输出;“(,)R是系统状态的扰动变量.系统的状态*)一股难以直接测量,可以通过传感器的观测值建立联系,观测方程如下:y(t)=Cx(t)+v(f)式中,W)=(w,T)WR表示/个传感器在t时刻的观测值;C=(c,卜是输出矩阵;v(t)eR是观测值的扰动变量.针对工业控制过程的网络攻击,最终目的是通过干扰控制逻迫,造成不可接受的物理破坏.为防止异常情况发生,工业控制过程中往往都会设置一些报萼阈值,物理系统的某些状态监测数值一旦超过这些阈值,保护机制会立刻响应.网络入侵时,高级的攻击者能够规避报警机制,整个攻击过程保持隐蔽,最终使被
10、控对象的物理状态值发生偏图,同时这种偏离又不至于触发安全监控警告,难以发现.工业控制系统遭受到的攻击大致可以分为欺笫攻击和拒绝服务攻击(Denia1.ofServiceiDoS).欺骗攻击是针对传感器、执行器、控制器等节点,通过注入(Injection)、更改(Modification)、重放(Rep1.ay)等方式,发送控制过程中的虚假信息,即VY或UU,实现攻击者想要的系统失控。网络DoS攻击一般是通过阻塞或阻断通信信道、封锁报文等方式,使工业控制过程参与各方无法有效地传输信息.图1表示了工业控制过程可能遭受的潜在攻击。其中:攻击A表示对工业控制过程中的物理装置进行直接的物理破坏;攻击B和
11、攻击D表示欺骗攻击,攻击者通过注入、重播、修改等手段使控制过程中的数据发生变化,即YY或0U;攻击C和攻击E表示DoS攻击,攻击者通过阻断通信信道的方式,使得工业控制过程的参与各方无法正常工作.O3工业控制系统的入侵检浦方法黑客对于工业控制系统的攻击,最终目的是要对物理控制系统产生影响,因此工业控制过程中的物理状态参数在受到入侵攻击后必然发生变化.基于工业控制过程的入侵检测可以抽象成一个统计学上的变点检测问题,即利用一定的统计指标和方法,对物理状态的时序数据进行监测,当某个时刻数据发生异常变化时,尽快检测出来.由于针对ICS的攻击呈现隐蔽性的特点,入侵检测方法需要对微小的数据偏移变化有相当的敏
12、感度.3.1 非参量CUSUM舞法累积和(Cumu1.ativeSum,CUSUM)是变点检测问题的常用分析方法。其设计思想是:将每个样本值与目标值的偏差进行累计求和,过程均值中的微小波动带来累计偏差值的稳定增加(或降低),从而提高检测过程中对小偏移的灵敏度。CUSUM适用于在一个相对平稳的观测序列中,发现异常突变的数据.工业控制过程中的系统状态参数符合特定的物理规律,呈现出相对稳定的特点,适合应用CUSUM算法进行入侵检测.20世纪90年代提出的非参量CUSUM算法,通过对观测统计量均值的正向漂移来判断变化点是否出现,而无须获得攻击状态下的被检测序列的概率分布,是一种独立于黑客攻击统计模型的
13、非参量检测算法,更符合工业实际需要.非参量CUSUM算法判决统计量表达式为:n=1.,2,3.(3)So=O式中,&是判决统计量,也是观测统计量,k是为了降低误报率而选择的一个较小的正数,称作偏移常数。B右上的+表示当aO时,加=。;OIj,11=C;检测结束时刻由下式决定:NinfntSr,h(4)h是报警阈值,若&超过h,判定异常变化出现.3.2 基于非参量CUSUM的ICS入侵检测方法图2是针对传感器欺骗攻击的入侵检测过程.攻击者以隐蔽的方式修改现场传感器的输出值,将真实观测值K修改为攻击设计值无(低于报警阈值).假设控制系统的近似模型已知,能够计算得到物理系统的预期输出旧,则入侵检测模
14、块可以通过CUSUM算法比较无与自,发现传感器数据发生改变的攻击事实.az工业控制过程中的传Siai攻击物理系统传呼器实际输出色和预期输出立的偏差记作观测统计量=一克.假设控制系统的预测模型稳定准确,在未受到攻击时,二,的时序数据应是一个均值近似为O的平稳序列,在遭受黑客攻击时,二,会发生微小波动,其均值会有所增大.非参量CUSUM算法判决统计量表示为:(5)(6)So=OSr=(Sz+W-k)式可以写作nS,=Y=,-nkr-!代入式(4)中,可以得到判决准则:,k+h/n式中Z,下面对判决准则进行分析.在正常状态的工业控制过程中,7的实际观测值与预测值偏差的期望值应该为0,即随着检测时间变
15、长,n越来越大,由大数定律得到二,-。而式(7)的判决准则表示不管时间有多长,二,与均值0都有一个固定的偏移k,这对于检测偏移小于k的攻击是不利的,容易发生漏报.为降低漏报.需要进一步对k进行优化。假设有一服从正态分布N(b的检测序列K,根据统计学的力准则,若第一个观测值%3o,可以判定%】异常,否则继续观察第二个值X1.,若电3。或+x,3+3c,可以判定工十足异常.另外,由于+-N(2”.2bi),若M+x23忘7,也可以判定TE:异常.一股地,对于n个观测值0-X,若13n(8)可判定该观测序列值异常.本文用k替换式(7)中的k,使得偏移常数随着n的增大而变小,达到降低漏报率的目的.面向工业控制过程的入侵检测判决准则为:7,k+hn(9)当大于广*个力时,判定攻击发生,否则正常.式中,h的取值决定若入侵检测的准确性和效率.h选取得越小,系统越容易被判定为受到攻击,引起误报的概率也就越大;h选取得越大,入侵检测所需的时间也越长,难以及时发现攻击.在实际应用时,应选取合适的h,以平衡检测准确性和效率.O4应用举例本节将以高炉热风炉的炉顶温度自适应控制系统为对象,对基于非参量CUSUM的工业控制系统入侵检测方法进行仿亘实验验证。热风炉拱顶温度是热风炉生产中的重要参数,拱顶温度较低时,在送风期将不能保证规定的热风温度,而拱顶温度过高将会对拱顶造成