1.本发明涉及工业控制系统信息安全技术领域,特别涉及一种工控系统隐蔽 攻击检测方法及装置。
背景技术:
2.工业控制系统(简称“工控系统”,industrial control systems,ics)目前已 经广泛应用于金融、交通、水利、制造、能源、军工等重要领域,是国家关键 信息基础设施中的重要组成部分,直接影响国计民生。
3.近年来,随着工控系统与互联网的不断融合,以及网络空间安全形势日益 严峻,针对工控系统的攻击越来越多。工控领域正成为网络空间安全对抗的主 战场,保障工控系统安全稳定运行已成为国家政治、军事、经济、社会稳定亟 需解决的核心问题之一。
4.入侵检测(intrusion detection system,ids)是工控系统安全防护的重要手段 之一。由于现代工控系统主要采用“互联网-企业网-控制网-现场层”四层架构, 因此传统的it系统入侵检测技术,如网络协议分析、网络流量挖掘等方法可用 于检测针对前三层的网络攻击。而现场层与传统it系统有显著不同,该层与物 理世界紧密关联,涉及工控系统、智能传感器、可编程逻辑控制器、主终端与 远程终端单元等现场设备。虽然工控系统种类繁多,但绝大多数工控系统具有 共性特征,即其动态行为可用关键过程变量表征,且过程变量值在短时间内不 会发生大幅跃变,因此基于工业过程数据分析的入侵检测技术应运而生。此类 技术主要用于检测针对现场设备的攻击行为,利用过程分析技术预测工控系统 的期望行为,再将其与观测行为进行对比,根据两者差异是否超过特定阈值决 定是否发出入侵告警。
5.然而,近年来有研究人员发现了一类针对工控系统的更为隐蔽的攻击行为, 能够躲避现有工控入侵检测技术,并给系统造成致命的破坏。隐蔽攻击充分利 用绝大多数工控系统动态行为不会在短时间内发生大幅跃变这一共性特征,使 工控系统的观测行为与其期望行为非常接近但不完全一致,从而诱导入侵检测 系统将此类精心设计的微小偏差当作正常测量误差或噪声,故不对其作任何处 理,因此攻击者可隐藏其攻击行为。然而,经过较长时间的累积,攻击者仍可 向目标工控系统中注入足够多的错误信息,导致系统崩溃。近几年,针对工控 系统的隐蔽攻击逐渐受到重视,国内外研究团队针对隐蔽攻击做了前期的探索, 取得了初步的成果,如尽可能降低隐蔽攻击对工控系统的不良影响程度,但目 前仍无有效的技术成功检测出隐蔽攻击。
技术实现要素:
6.本发明提供了一种工控系统隐蔽攻击检测方法及装置,以解决现有的工控 系统攻击检测技术难以检测工控系统隐蔽攻击的技术问题。
7.为解决上述技术问题,本发明提供了如下技术方案:
8.一方面,本发明提供了一种工控系统隐蔽攻击检测方法,包括:
9.实时采集被测工控系统的观测输出,将所述被测工控系统同一时刻的观测 输出与期望输出进行对比,得到待检测残差序列;
10.将待检测残差序列分解成多个固定长度的、连续的滑动时间窗口,计算每 个滑动时间窗口内残差序列的短时过零率,得到短时过零率随时间变化的曲线;
11.判断短时过零率随时间变化的曲线是否随时间有下降趋势且下降趋势是否 超过预设阈值,若曲线随时间有下降趋势且下降趋势超过预设阈值,则判断被 测工控系统当前遭遇隐蔽攻击,否则,判断被测工控系统没有遭遇隐蔽攻击。
12.进一步地,在实时采集被测工控系统的观测输出,将所述被测工控系统同 一时刻的观测输出与期望输出进行对比,得到待检测残差序列之前,所述方法 还包括:
13.构建被测工控系统输出时间序列模型;
14.根据所述被测工控系统输出时间序列模型,预测被测工控系统的期望输出。
15.进一步地,所述被测工控系统输出时间序列模型为arima模型。
16.进一步地,所述构建被测工控系统输出时间序列模型,包括:
17.收集被测工控系统处于无攻击状态下的输出序列,并对收集到的被测工控 系统处于无攻击状态下的输出序列进行预处理;
18.通过计算预处理后的输出序列的自相关系数和偏相关系数来识别arima 模型的阶数;其中,自相关系数和偏相关系数的显著不为0的阶数分别决定了 ma模型和ar模型的阶数,arima模型定义如下:
[0019][0020]
其中,yk和y
k-i
分别是当前时刻和历史时刻的被测工控系统输出值,εk和ε
k-i
分别是当前时刻和历史时刻的相互独立且满足正态分布的过程随机误差,φi和θj是arima模型的参数,p是自回归项数,q是滑动平均项数。
[0021]
进一步地,所述对收集到的被测工控系统处于无攻击状态下的输出序列进 行预处理,包括:
[0022]
对于收集到的被测工控系统处于无攻击状态下的输出序列,检测其序列相 关性和平稳性,筛选出满足序列相关性和平稳性要求的输出序列;其中,若输 出序列不满足平稳性要求,则对序列作d阶差分将其转换成平稳序列。
[0023]
进一步地,通过计算预处理后的输出序列的自相关系数和偏相关系数来识 别arima模型的阶数时,是识别出多个可能的arima模型;所述方法还包括:
[0024]
利用极大似然估计法估计各个arima模型参数,包括φi和θj;检验所估计 出的arima模型的参数显著性、模型平稳性和可逆性,以及残差随机性;
[0025]
若模型的参数显著性、模型平稳性和可逆性,以及残差随机性均满足要求, 则确定该arima模型合理;当存在多个合理的候选arima模型时,根据aic (akaike information criterion,赤池信息量准则)准则选出最优arima模型。
[0026]
进一步地,据所述被测工控系统输出时间序列模型,预测被测工控系统的 期望输出,包括:
[0027]
采集并保存工控系统历史输出值,代入arima模型,获得预测的期望输出。
[0028]
进一步地,所述待检测残差序列由被测工控系统的观测输出和期望输出在同 一
时刻的值相减得到。
[0029]
进一步地,所述残差序列的短时过零率r(n)表示为:
[0030][0031]
其中,n为残差滑动窗口中最后一个元素的序号,sgn(x)为符号函数,定义为:
[0032][0033]
w(x)为垂直窗口函数,定义为:
[0034][0035]
其中,x为滑动窗口长度,对于离散时间序列,则为滑动窗口内元素总个数。
[0036]
另一方面,本发明还提供了一种工控系统隐蔽攻击检测装置,包括:
[0037]
残差获取模块,用于实时采集被测工控系统的观测输出,将所述被测工控 系统同一时刻的观测输出与期望输出进行对比,得到待检测残差序列;
[0038]
残差短时过零率计算模块,用于将所述残差获取模块所得到的待检测残差 序列分解成多个固定长度的、连续的滑动时间窗口,计算每个滑动时间窗口内 残差序列的短时过零率,得到短时过零率随时间变化的曲线;
[0039]
隐蔽攻击识别模块,用于判断所述残差短时过零率计算模块所得到的短时 过零率随时间变化的曲线是否随时间有下降趋势且下降趋势是否超过预设阈 值,若曲线随时间有下降趋势且下降趋势超过预设阈值,则判断被测工控系统 当前遭遇隐蔽攻击,否则,判断被测工控系统没有遭遇隐蔽攻击。
[0040]
再一方面,本发明还提供了一种电子设备,其包括处理器和存储器;其中, 存储器中存储有至少一条指令,所述指令由处理器加载并执行以实现上述方法。
[0041]
又一方面,本发明还提供了一种计算机可读存储介质,所述存储介质中存 储有至少一条指令,所述指令由处理器加载并执行以实现上述方法。
[0042]
本发明提供的技术方案带来的有益效果至少包括:
[0043]
本发明通过实时采集被测工控系统的观测输出,将系统同一时刻的观测输 出与期望输出进行对比,得到待检测残差序列;将待检测残差序列分解成多个 固定长度的、连续的滑动时间窗口,计算每个滑动时间窗口内残差序列的短时 过零率,得到短时过零率随时间变化的曲线;判断短时过零率随时间变化的曲 线是否随时间有下降趋势且下降趋势是否超过预设阈值,若曲线随时间有下降 趋势且下降趋势超过预设阈值,则判断被测工控系统当前遭遇隐蔽攻击,否则, 判断系统没有遭遇隐蔽攻击。从而实现了可根据残差短时过零率的变化有效识 别工控系统是否遭遇隐蔽攻击,进而可有效提升工控系统的安全防护水平。
附图说明
[0044]
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所 需要
使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明 的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下, 还可以根据这些附图获得其他的附图。
[0045]
图1是本发明实施例提供的工控系统隐蔽攻击检测方法的实现原理示意图;
[0046]
图2是本发明实施例提供的工控系统隐蔽攻击检测方法的执行流程示意图;
[0047]
图3是液位控制系统的结构示意图;
[0048]
图4是本发明实施例提供的工控系统隐蔽攻击检测方法的检测效果示意图;
[0049]
图5是本发明实施例提供的工控系统隐蔽攻击检测装置的结构框图。
具体实施方式
[0050]
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明 实施方式作进一步地详细描述。
[0051]
第一实施例
[0052]
本实施例针对现有的工控系统攻击检测技术难以检测工控系统隐蔽攻击的 技术问题,提供了一种基于残差短时过零率分析的工控系统隐蔽攻击检测方法, 该检测方法可以由电子设备实现,该电子设备可以是终端或者服务器。该检测 方法的实现原理如图1所示,主要包括:工控系统输出时间序列模型构建及输 出预测、待检测残差序列获取、滑动窗口内残差序列短时过零率计算以及隐蔽 攻击识别步骤。具体地,该检测方法的执行流程如图2所示,包括以下步骤:
[0053]
s1,实时采集被测工控系统的观测输出,将被测工控系统同一时刻的观测 输出与期望输出进行对比,得到待检测残差序列。
[0054]
其中,待检测残差序列由获取的被测工控系统的观测输出yk和期望输出在同一时刻的值相减得到,即从而形成待检测残差序列{rk}。
[0055]
需要说明的是,在本实施例中,被测工控系统的期望输出是通过预先构建 的被测工控系统输出时间序列模型得到的,因此,在s1之前,本方法还包括:
[0056]
构建被测工控系统输出时间序列模型;
[0057]
根据被测工控系统输出时间序列模型,预测被测工控系统的期望输出。
[0058]
其中,本实施例构建的被测工控系统输出时间序列模型为arima模型。构 建被测工控系统输出时间序列模型的过程,包括:
[0059]
收集被测工控系统处于无攻击状态下的输出序列{yk},并对收集到的被测 工控系统处于无攻击状态下的输出序列,检测其序列相关性和平稳性,若满足 序列相关性和平稳性要求(若不满足平稳性要求,可对序列作d阶差分将其转换 成平稳序列),通过计算序列自相关系数(acf)和偏相关系数(pacf)来识别 arima模型的阶数;其中,acf和pacf的显著不为0的阶数分别决定了ma 模型和ar模型的阶数,arima模型定义如下:
[0060][0061]
其中,yk和y
k-i
分别是当前时刻和历史时刻的被测工控系统输出值,εk和ε
k-i
分别是当前时刻和历史时刻的相互独立且满足正态分布的过程随机误差,均值 为0,方差为σ2,φi(i=1,2,
…
,p)和θj(j=1,2,
…
,q)是arima模型的参数,p是 arima模型的自回归项数,q是arima模型的滑动平均项数。
[0062]
而且,此处值得注意的是,本实施例的方法不仅识别出一个arima模型, 而是一系列可能的arima模型;然后利用极大似然估计法估计各个arima模 型参数,包括φi和θj;检验所估计出的arima模型的参数显著性、模型平稳性 和可逆性,以及残差随机性;若模型的参数显著性、模型平稳性和可逆性,以 及残差随机性均满足要求,则该arima模型合理;当存在多个合理的候选 arima模型时,根据赤池信息量准则aic选出最优arima模型。
[0063]
基于上述,根据被测工控系统输出时间序列模型,预测被测工控系统的期 望输出的方式为:采集并保存工控系统历史输出值,将采集的工控系统历史输 出值代入构建好的arima模型,从而获得预测的工控系统的期望输出。
[0064]
s2,将得到的待检测残差序列分解成一系列固定长度的、连续的滑动时间 窗口,并计算出每个滑动时间窗口内残差序列的短时过零率,从而得到残差序 列的短时过零率随时间变化的曲线。
[0065]
其中,残差序列的短时过零率r(n)表示为:
[0066][0067]
其中,n为残差滑动窗口中最后一个元素的序号,sgn(x)为符号函数,定义为:
[0068][0069]
w(x)为垂直窗口函数,定义为:
[0070][0071]
其中,x为滑动窗口长度,对于离散时间序列,则为滑动窗口内元素总个数。
[0072]
s3,判断短时过零率随时间变化的曲线是否随时间有下降趋势且下降趋势 是否超过预设阈值,若曲线随时间有下降趋势且下降趋势超过预设阈值,则判 断被测工控系统遭遇隐蔽攻击;否则,判断被测工控系统没有遭遇隐蔽攻击。
[0073]
需要说明的是,当工控系统受到隐蔽攻击时,残差序列与白噪声显著不同, 残差值集中于某个大于0或小于0的区间内,即短时过零率很小,因此,如果 残差序列的短时过零率曲线显著下降,则表示检测到了隐蔽攻击;因此上述s3 通过判断残差短时过零率曲线是否随时间有显著下降趋势,判断被测工控系统 是否遭遇隐蔽攻击;若残差短时过零率曲线随时间显著下降,则表示被测工控 系统遭遇隐蔽攻击,否则,表示被测工控系统没有遭遇隐蔽攻击。
[0074]
下面,结合实际应用场景对本实施例检测方法的实施过程及效果进行说明。
[0075]
如图3所示的系统为一个典型的工控场景:液位控制系统。该系统主要由 输入泵、液体容器、输出泵、液位传感器、可编程逻辑控制器plc组成。系统 正常运行过程中,当容器液位过低时,控制器启动输入泵,向容器内注入液体; 当容器液位过高时,控制器关闭输入泵,停止液体注入。在这个系统中实行隐 蔽攻击,攻击者持续地小幅度地篡改液位测量值,
直至液位高于容器高度而溢 出,攻击目标达到。隐蔽攻击检测程序可以嵌入此系统的plc中,在plc将传 感器测量的模拟量转换为数字量后进行入侵检测。
[0076]
针对如图3所示的系统的隐蔽攻击检测主要通过以下步骤实现:
[0077]
步骤1,构建该液位控制系统的输出时间序列模型:
[0078][0079]
其中,hk和h
k-i
分别为当前时刻和历史时刻容器内液位高度值,也就是此工 控系统的输出值,通过估计参数φi和θj获得合理准确的arima模型。
[0080]
步骤2,利用arima模型对容器内下一时刻的期望液位进行预测,得到预 测值
[0081]
步骤3,隐蔽攻击检测系统根据液位传感器的测量值得到容器内液位的观测 值hk,并获取液位残差形成待残差序列{rk}。
[0082]
步骤4,将残差序列分解成一系列固定长度、连续的滑动时间窗口,如长度 为100,然后计算每个滑动时间窗口内的残差序列短时过零率,并根据短时过零 率随时间的变化趋势判断是否出现隐蔽攻击行为,如果短时过零率曲线随时间 有显著下降趋势,表示检测到隐蔽攻击,检测系统发出告警信息。
[0083]
对上述系统进行隐蔽攻击模拟,攻击从200s开始,因此图4中的残差短时 过零率曲线从200s开始显著下降,这说明残差短时过零率对隐蔽攻击的出现非 常敏感,短时过零率曲线下降的开始时刻就是隐蔽攻击发生的起始时刻,这证 明了基于残差短时过零率分析的方法对检测工控现场设备隐蔽攻击的有效性。
[0084]
综上,本实施例方法通过判断残差序列的短时过零率是否随时间有显著下 降趋势来判断工控系统是否遭遇隐蔽攻击。其理论依据为:当工控系统受到隐 蔽攻击时,残差序列与白噪声显著不同,残差值集中于某个大于0或小于0的 区间内,即短时过零率很小,因此,如果残差序列的短时过零率曲线显著下降, 则表示检测到了隐蔽攻击,从而发出告警信息。由此可根据残差短时过零率的 变化有效识别工控系统是否遭遇隐蔽攻击,有效提升工控系统的安全防护水平。
[0085]
第二实施例
[0086]
本实施例提供了一种工控系统隐蔽攻击检测装置,该工控系统隐蔽攻击检 测装置的系统结构如图5所示,包括以下模块:
[0087]
残差获取模块,用于实时采集被测工控系统的观测输出,将所述被测工控 系统同一时刻的观测输出与期望输出进行对比,得到待检测残差序列;
[0088]
残差短时过零率计算模块,用于将所述残差获取模块所得到的待检测残差 序列分解成多个固定长度的、连续的滑动时间窗口,计算每个滑动时间窗口内 残差序列的短时过零率,得到短时过零率随时间变化的曲线;
[0089]
隐蔽攻击识别模块,用于判断所述残差短时过零率计算模块所得到的短时 过零率随时间变化的曲线是否随时间有下降趋势且下降趋势是否超过预设阈 值,若曲线随时间有下降趋势且下降趋势超过预设阈值,则判断被测工控系统 当前遭遇隐蔽攻击,否则,判断被测工控系统没有遭遇隐蔽攻击。
[0090]
本实施例的工控系统隐蔽攻击检测装置与上述第一实施例的工控系统隐蔽 攻击
检测方法相对应;其中,本实施例的工控系统隐蔽攻击检测装置中的各功 能模块所实现的功能与上述第一实施例的工控系统隐蔽攻击检测方法中的各流 程步骤一一对应;故,在此不再赘述。
[0091]
第三实施例
[0092]
本实施例提供一种电子设备,其包括处理器和存储器;其中,存储器中存 储有至少一条指令,所述指令由处理器加载并执行,以实现第一实施例的方法。
[0093]
该电子设备可因配置或性能不同而产生比较大的差异,可以包括一个或一 个以上处理器(central processing units,cpu)和一个或一个以上的存储器,其 中,存储器中存储有至少一条指令,所述指令由处理器加载并执行上述方法。
[0094]
第四实施例
[0095]
本实施例提供一种计算机可读存储介质,该存储介质中存储有至少一条指 令,所述指令由处理器加载并执行,以实现第一实施例的方法。其中,该计算 机可读存储介质可以是rom、随机存取存储器、cd-rom、磁带、软盘和光数 据存储设备等。其内存储的指令可由终端中的处理器加载并执行上述方法。
[0096]
此外,需要说明的是,本发明可提供为方法、装置或计算机程序产品。因 此,本发明实施例可采用完全硬件实施例、完全软件实施例或结合软件和硬件 方面的实施例的形式。而且,本发明实施例可采用在一个或多个其中包含有计 算机可用程序代码的计算机可用存储介质上实施的计算机程序产品的形式。
[0097]
本发明实施例是参照根据本发明实施例的方法、终端设备(系统)、和计算机 程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程 图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或 方框的结合。可提供这些计算机程序指令到通用计算机、嵌入式处理机或其他 可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可 编程数据处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或 多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0098]
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端 设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器 中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多 个流程和/或方框图一个方框或多个方框中指定的功能。这些计算机程序指令也 可装载到计算机或其他可编程数据处理终端设备上,使得在计算机或其他可编 程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或 其他可编程终端设备上执行的指令提供用于实现在流程图一个流程或多个流程 和/或方框图一个方框或多个方框中指定的功能的步骤。
[0099]
还需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体 意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者 终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还 包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的 情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过 程、方法、物品或者终端设备中还存在另外的相同要素。
[0100]
最后需要说明的是,以上所述是本发明优选实施方式,应当指出,尽管已 描述了本发明优选实施例,但对于本技术领域的技术人员来说,一旦得知了本 发明的基本创造性
概念,在不脱离本发明所述原理的前提下,还可以做出若干 改进和润饰,这些改进和润饰也应视为本发明的保护范围。所以,所附权利要 求意欲解释为包括优选实施例以及落入本发明实施例范围的所有变更和修改。
技术特征:
1.一种工控系统隐蔽攻击检测方法,其特征在于,包括:实时采集被测工控系统的观测输出,将所述被测工控系统同一时刻的观测输出与期望输出进行对比,得到待检测残差序列;将待检测残差序列分解成多个固定长度的、连续的滑动时间窗口,计算每个滑动时间窗口内残差序列的短时过零率,得到短时过零率随时间变化的曲线;判断短时过零率随时间变化的曲线是否随时间有下降趋势且下降趋势是否超过预设阈值,若曲线随时间有下降趋势且下降趋势超过预设阈值,则判断被测工控系统当前遭遇隐蔽攻击,否则,判断被测工控系统没有遭遇隐蔽攻击。2.如权利要求1所述的工控系统隐蔽攻击检测方法,其特征在于,在实时采集被测工控系统的观测输出,将所述被测工控系统同一时刻的观测输出与期望输出进行对比,得到待检测残差序列之前,所述方法还包括:构建被测工控系统输出时间序列模型;根据所述被测工控系统输出时间序列模型,预测被测工控系统的期望输出。3.如权利要求2所述的工控系统隐蔽攻击检测方法,其特征在于,所述被测工控系统输出时间序列模型为arima模型。4.如权利要求3所述的工控系统隐蔽攻击检测方法,其特征在于,所述构建被测工控系统输出时间序列模型,包括:收集被测工控系统处于无攻击状态下的输出序列,并对收集到的被测工控系统处于无攻击状态下的输出序列进行预处理;通过计算预处理后的输出序列的自相关系数和偏相关系数来识别arima模型的阶数;其中,自相关系数和偏相关系数的显著不为0的阶数分别决定了ma模型和ar模型的阶数,arima模型定义如下:其中,y
k
和y
k-i
分别是当前时刻和历史时刻的被测工控系统输出值,ε
k
和ε
k-i
分别是当前时刻和历史时刻的相互独立且满足正态分布的过程随机误差,φ
i
和θ
j
是arima模型的参数,p是自回归项数,q是滑动平均项数。5.如权利要求4所述的工控系统隐蔽攻击检测方法,其特征在于,所述对收集到的被测工控系统处于无攻击状态下的输出序列进行预处理,包括:对于收集到的被测工控系统处于无攻击状态下的输出序列,检测其序列相关性和平稳性,筛选出满足序列相关性和平稳性要求的输出序列;其中,若输出序列不满足平稳性要求,则对序列作d阶差分将其转换成平稳序列。6.如权利要求4所述的工控系统隐蔽攻击检测方法,其特征在于,所述通过计算预处理后的输出序列的自相关系数和偏相关系数来识别arima模型的阶数时,是识别出多个可能的arima模型;所述方法还包括:利用极大似然估计法估计各个arima模型参数,包括φ
i
和θ
j
;检验所估计出的arima模型的参数显著性、模型平稳性和可逆性,以及残差随机性;若模型的参数显著性、模型平稳性和可逆性,以及残差随机性均满足要求,则确定该
arima模型合理;当存在多个合理的候选arima模型时,根据aic(akaike information criterion,赤池信息量准则)准则选出最优arima模型。7.如权利要求3所述的工控系统隐蔽攻击检测方法,其特征在于,据所述被测工控系统输出时间序列模型,预测被测工控系统的期望输出,包括:采集并保存工控系统历史输出值,代入arima模型,获得预测的期望输出。8.如权利要求1所述的工控系统隐蔽攻击检测方法,其特征在于,所述待检测残差序列由被测工控系统的观测输出和期望输出在同一时刻的值相减得到。9.如权利要求1所述的工控系统隐蔽攻击检测方法,其特征在于,所述残差序列的短时过零率r(n)表示为:其中,n为残差滑动窗口中最后一个元素的序号,sgn(x)为符号函数,定义为:w(x)为垂直窗口函数,定义为:其中,x为滑动窗口长度,对于离散时间序列,则为滑动窗口内元素总个数。10.一种工控系统隐蔽攻击检测装置,其特征在于,包括:残差获取模块,用于实时采集被测工控系统的观测输出,将所述被测工控系统同一时刻的观测输出与期望输出进行对比,得到待检测残差序列;残差短时过零率计算模块,用于将所述残差获取模块所得到的待检测残差序列分解成多个固定长度的、连续的滑动时间窗口,计算每个滑动时间窗口内残差序列的短时过零率,得到短时过零率随时间变化的曲线;隐蔽攻击识别模块,用于判断所述残差短时过零率计算模块所得到的短时过零率随时间变化的曲线是否随时间有下降趋势且下降趋势是否超过预设阈值,若曲线随时间有下降趋势且下降趋势超过预设阈值,则判断被测工控系统当前遭遇隐蔽攻击,否则,判断被测工控系统没有遭遇隐蔽攻击。
技术总结
本发明公开了一种工控系统隐蔽攻击检测方法及装置,适用于工控系统隐蔽攻击检测,所述方法包括:实时采集被测工控系统的观测输出,将系统同一时刻的观测输出与期望输出进行对比,得到待检测残差序列;将待检测残差序列分解成多个固定长度的、连续的滑动时间窗口,计算每个滑动时间窗口内残差序列的短时过零率,得到短时过零率随时间变化的曲线;判断短时过零率曲线是否随时间有下降趋势且下降趋势是否超过预设阈值,若曲线随时间有下降趋势且下降趋势超过预设阈值,则判断工控系统当前遭遇隐蔽攻击,否则,判断工控系统没有遭遇隐蔽攻击。本发明能够实现工控系统隐蔽攻击的有效检测。效检测。效检测。
技术研发人员:胡堰
受保护的技术使用者:北京科技大学
技术研发日:2021.11.29
技术公布日:2022/3/8