曲正伟,董 杰,赵建军,李 洋,孙文婷
(1.燕山大学电气工程学院,河北 秦皇岛 066099;2.国网冀北电力有限公司智能配电网中心,河北 秦皇岛 066199)
近年来,随着智能电网的加速发展以及建设泛在电力物联网的提出,电力系统已经变得越来越智能化、信息化,而且信息侧设备和电力侧设备关系日益密切,相互依存程度越来越高,电力系统成为了一个将电力系统和信息系统深度融合为一体的电力信息物理系统(Cyber-physical System,CPS),即电力CPS[1]。与此同时,随着智能化程度的加深以及信息侧的融合,电力CPS面临着更严峻的网络安全问题。
针对网络安全问题,电网管理者仅依赖网络攻击发生后被动地采取防御措施是远远不够的,更需要从电力侧和信息侧两方面在攻击未发生前就做好防御措施的部署,建立主动防御[2],即在网络攻击未发生前,进行科学合理的防御资源分配,从而提高电力CPS安全稳定运行能力。文献[3]在假设攻击的最终目标是调度自动化系统的场景下,提出一种采用主动诱骗陷阱的安全防御方法。文献[4]通过隐马尔科夫模型提出了一种电力CPS攻击安全风险预测方法。同时通过细胞自动机模型预测网络攻击跨域风险传播过程,得到网络攻击目标的安全风险预测值。文献[5]针对系统存在虚假数据注入攻击(FDIA)的情况,提出了基于攻防博弈优化防御资源的分配,最终达到保护关键量测点的目的,但是文献忽略了信息侧的防御资源和措施。文献[6]采用多目标模型的帕累托前沿,通过求解得到了帕累托非劣解集,为防御者提供了一个最优防御策略集合,但是这种方法只考虑了一种电力CPS的攻击场景,同时这种基于遍历算法的思路不适用于大规模系统。文献[7]考虑了电力CPS在2种运行状态和攻击资源不同的情况下,预测攻击者可能采用的最优攻击策略,但是文献建立的模型做了大量的简化,降低了模型脆弱性评估的精确度。文献[8]通过分析具体的攻防过程,构建了在有限防御资源下的最优防御规划模型。
综上所述,目前电力CPS安全防护方面的研究不够全面充分,防御手段仅考虑单独的信息侧或电力侧方面,鲜有考虑电力系统和信息系统的高度耦合性,以及跨域攻击造成的影响。就目前的电力CPS结构,电力系统的运行不仅与电网本身的框架结构以及设备状态有关,同时也与信息系统作用在物理节点上的控制和监视功能关系很大。为有效降低电力CPS的风险[9],本文同时从信息侧和电力侧安全防御的角度开展研究,建立更精细的安全防御措施,并对整个电力CPS提出具体的防御资源分配方法。
电力CPS的电力侧是一个连续时变系统,而信息侧属于离散系统,因此电力CPS电力侧、信息侧的时空特性和防御方法存在着本质区别[10]。
为了保证数据传输的安全,我国电力通信网络物理隔离,按照各信息节点的不同业务分类,将信息网络分为管理区、信息区、控制区、非控制区4个安全区域,在各个安全区域电子安全边界(Electronic Security Boundaries,ESP)上配置一定的防御资源,提高电子安全边界抵御网络攻击入侵的能力,从而保障边界区域内的网络安全[11-12]。节点的安全区域划分和设备配置如图1所示。
图1 电力信息网节点安全区域划分
攻击方通常需要成功侵入攻击目标的ESP才能对安全区域内的数据传输产生破坏。因此,为了实现电力信息网络的安全保障,目前采取的信息侧防御措施是:在电力CPS中的信息控制中心,通过采用情报收集、态势感知和监测、调查追溯等技术手段,构建网络安全防御平台,从而对信息层主机、传输数据、终端设备的数据流等进行全面监测,通过采用大数据分析和预测技术,充分利用态势感知,提高对数据的监测和综合分析能力,实现对信息网络的智能监控和全面的动态感知。
目前,关于信息网络安全的防御平台主要包括应用服务器、数据采集服务器、平台探针和大数据平台等组件。其中,应用服务器用于提供访问商业逻辑的途径,数据采集服务器用于收集各类系统的信息和数据,平台探针通常用于监测数据,统一汇总给平台分析处理,而最终对收集到的大量数据和信息进行处理分析的是大数据平台。
同时,可以对系统中关键网络设备采取一系列措施,例如安全接入控制、安全弱点扫描、设备管理和安全加固,提高网络设备处理能力、设备链路冗余等,提升关键网络设备的防御能力。
根据防御方法与攻击过程发生前后顺序的不同,电力侧安全防御方法主要分为保护与检测2个环节。现阶段针对网络攻击的检测方法主要有三大类:基于状态估计的检测、基于轨迹预测的检测和基于人工智能的检测。
目前的网络攻击者,已经对现有的系统数据信息、保护算法和基于最小二乘法的状态估计算法充分熟悉和掌握,以至于攻击者可以构建出成功躲避不良数据检测的虚假数据攻击。因此,对传统状态估计算法进行改进和完善,可在一定程度上提高对虚假数据注入的检测辨识能力。目前此类型的检测方法主要有基于量测相关性、残差检测法和基于量测突变量的方法等[13]。
上述基于状态估计的方法属于静态检测方法,而电力系统的运行是一个持续的动态过程,状态量存在着较强的时间连续性。因此,利用已知的运行状态和参数,分析历史数据之间的联系,在考虑时空关系的情况下对电网当下的状态参数和运行数据分析预测,这种检测方法被称为基于轨迹预测的检测方法[14]。这种方法目前主要有基于传感器的轨迹预测、基于广义似然比的序贯检测器等[15-16]。基于人工智能的检测方法主要分为三类:基于神经网络、基于深度学习、基于模糊聚类[17]。电力侧安全防御方法分类,见图2。
图2 电力侧安全防御方法分类
从图2可以看出,目前针对网络攻击的保护方法分为两大类,一是面向网络攻击的直接防御,二是面向网络攻击的间接防御。前者的保护手段包括物理安全隔离、传输通道加密以及安装防火墙等方法,后者可以通过部署安装大量的冗余量测装置,提高系统量测冗余度,从而提升数据检测的精确度。在部署装置中,最关键的步骤是如何选取合适的量测点。一般是选择系统中的脆弱和关键部分,从而达到对电力系统关键设备重点保护的目的。
在辨识系统中的关键区域过程中,可以通过采用最优潮流规划的方法,从2个角度再度分类。一是规划方法的优化目标不同,例如以发电成本最小为目标或以系统供应最稳定为优化目标;二是规划方法的约束条件不同,其中有直流潮流线性模型和交流潮流非线性模型。混合整数线性规划模型是最常用的模型,这种规划方法往往更适合离线状态下,对保护资源进行优化配置[18]。
为研究不同规模电力CPS抵御网络攻击能力,使其在遭受网络攻击时,能够尽可能地保证系统安全稳定运行,需要从信息侧和电力侧2个角度开展进一步的研究,建立更精细更完整的安全防护措施,并针对物理层、信息层提出具体的防御资源分配策略,完善电力CPS的安全防御策略。
但是由于目前条件、资源、技术的限制,还没有一个完整的、成体系的能够提高电力CPS抵御攻击风险的防御方法,同时,也很难做到为当前复杂多变的电力CPS设备提供一个统一专门的防御手段。因此,本文不再考虑具体的防御资源类型和防御形式,而统一将这些量化的防御费用投资都抽象为防御资源,最终提出一个面向网络攻击的基于脆弱节点和关键节点的防御资源分配方法。
借鉴最小防御资源的概念,提出在安全等级不同区域上考虑装设配置的种类以及数量上的区别。若分配的防御资源没有达到节点所需的最小防御资源需求值时,则判定分配的防御资源对该节点的防御是无效的,该节点的防御效果为0。将分配资源后的防御效果用指数函数表示[19],则防御资源与防御效果的指数函数表示为
式中:qi为节点i上配置的防御资源值;yi为节点i在分得防御资源后的防御效果值;λi为节点i的防御投资费用与防御资源值的换算系数;μi为节点i能够在网络攻击下不受侵入的最小防御资源需求值。yi∈[0,1),yi=0表示分配的防御资源没有办法抵御网络攻击,该节点的防御效果为0。yi=1为理想状况,是在防御资源情况远远满足的情况下,即无限资源下的资源分配,此时可抵御城市电网所面临的各种故障。
实际上,不受客观环境约束,防御方具有无限多的防御资源只是一种理想状态,现实中,防御方所拥有的防御资源总数量往往是有一定限制的。因此,本文研究在有限的资源条件下的防御资源分配策略更符合工程实际,也更具有现实意义。
本文首先建立网络攻防博弈模型,博弈参与者分别是网络攻击方和电网管理者,即防御方,网络攻击方的策略集合是脆弱节点、关键节点以及故障路径频繁途径的高危节点的所有组合;防御者的防御选择集合是系统中各个节点可能分配到的资源值的所有组合。设定攻击者对于电力CPS各个节点的资源分配是不知情的,同时,防御方也不清楚攻击方所采用的具体攻击策略,只是对网络攻击者的攻击部位进行了预测。因此,此次攻防博弈的过程属于非完全信息博弈。式(2)为攻击方数学模型,攻击方的角度是以当前防御资源分配下会给城市电网带来损失最大节点作为目标节点,对并该节点发动网络攻击。
式中:Li为协同攻击节点i造成的破坏程度;Ri(Li)为攻击目标节点i的损失,为Li的相关函数;a为攻击方希望此次攻击带来的收益最小期望。
防御方通过提前对各脆弱节点分配防御资源,将系统损失降至最低,式(3)为防御方的数学模型。
式中:Rsys为系统受到攻击后的损失;qi为节点i经过分配后得到的防御资源数量;n为节点数;Q为总防御资源。
所有需要考虑的攻击路径共有m×n条,所有路径包含节点数量z个,其中共有b个攻击路径含有节点i,本文按照各攻击目标失效损失占需要考虑的全部攻击目标失效总损失之比,分配防御资源至各攻击目标节点。节点i经过分配后得到的防御资源数量qi的计算公式表达为
式中:Qx为网络攻击路径x分得的防御资源值;Ax为节点i在网络攻击的路径x中的损失比例系数;Rx为网络攻击路径x的带来的损失;cx为一条网络攻击路径x中包含的节点数量。
假设初始情况下所有节点分配的防御资源值为0,防御资源分配流程见图3,具体分布策略如下。
图3 防御资源分配流程示意
步骤1:将总防御资源Q分为M份,每次取防御资源进行分配,进行M次迭代。
步骤2:计算各攻击目标节点失效后的损失与全部攻击目标n个节点失效总损失之比,并将给防御资源按此比例依次分配给n个攻击目标节点。
步骤3:计算到达该攻击目标节点的所有预测攻击路径的节点数cx,将各攻击目标节点上的防御资源Qx平均分成cx份开始分配。
步骤4:遍历全部攻击路径,对路径所含节点i分配份资源。含有节点i的路径有b条,则节点i迭代一次分配的资源为。
步骤5:防御资源未分配完,返回步骤2继续迭代;如果防御资源已分配完,输出结果,节点i最终分配的资源为。
算例使用电力14节点、信息14节点的系统作为电力CPS的模型。电力CPS的拓扑结构和整体框架如图4所示。其中,电力系统中节点1、2、3、6和8代表发电厂,信息系统中相对应的节点编号代表发电厂信息节点。
图4 电力14节点-信息14节点系统模型
为验证本文提出的防御资源分配方法的有效性以及能够提高城市电网CPS抵抗网络攻击和故障的能力,将本文方法与在单个节点遭受网络攻击时按各节点带来的损失大小来分配防御资源的方法进行对比。假设给定的防御资源均只有10 000个,2种分配方案的分配精度M都是100。通过计算可得到在相同总资源、相同分配精度下,2种方法系统各节点分得的防御资源计算数值见表1。
表1 不同分配方法下各节点防御资源值结果对比
在表1中,第1列和第4列为该电力CPS中信息节点和电力节点的编号,第2列和第5列是在本文提出的分配方法下各节点计算分得的防御资源数量,第3列和第6列是在单个节点遭受网络攻击时按各节点带来的损失大小来分配的对比方案下各节点分得的防御资源数量。
通过对比表1中的第2、3列和第5、6列的各节点分配的防御资源数量可以看出,在2种不同分配方法下都分配了较多的防御资源给系统中发电站节点,是其他普通节点分得的几倍。但是本文提出的分配方法与按单一节点受损大小分配的对比方法相比,分配给发电站节点的资源数量是少一些的,而把剩余的资源分配给了其他脆弱节点,相比之下,脆弱节点在本文方法下分得了较多的防御资源,例如,电力节点12、13、14等以及相对应的信息节点12、13和14。之所以会产生这种差别,是因为对比方法仅仅考虑了单个节点遭受到攻击的情况,在这种情况下,若发电厂被成功攻击,带来的后果和损失与其他节点相比是非常巨大的,因此,对比方法把更多的防御资源分配给了发电厂节点。而本文提出的分配方法是考虑了多个节点遭受网络攻击的情况下,网络攻击路径会包含多个节点。同时,脆弱节点会变成网络攻击成功入侵的切入节点,若脆弱节点被保护免遭攻击破坏,则直接避免了网络攻击成功的可能性,因此,与对比方法相比较,本文方法对脆弱节点和网络攻击路径高频节点分配了较多的防御资源。
为了验正本文提出的防御资源分配方法可有效提高城市电网CPS各个节点抵御攻击的能力,提升城市电网CPS在网络攻击下的稳定性能,算例模拟将防御资源按照本文方案进行分配后,系统在遭受网络攻击后的负荷损失量。本算例包含14个电力节点,系统中每个电力节点都分别被作为网络攻击的最终目标节点,那么算例1共包含14个攻击目标。表2对实施防御策略前和实施防御策略后的损失负荷量作对比。表2中第1列为各攻击目标即各电力节点的序号,第2列为实施防御策略前系统遭受到网络攻击后的负荷损失,第3列为在本文防御资源方案分配下系统的损失负荷量与第2列形成对比。从表2第2、3列数据可以看出,通过本文提出的防御资源在各个节点的分配方案,能够有效降低系统的失负荷量,提升城市电网CPS在遭受网络攻击和故障后保持安全稳定运行的能力。通过以上算例的结果,可以得到结论:本文所提的资源分配方法能有效保护防御薄弱的关键脆弱节点,并且对其优先分配防御资源,能够有效降低城市电网CPS风险。
表2 实施防御策略前后的损失负荷量对比
为了解决电力CPS面临的网络安全威胁,使其在遭受网络攻击时,能够尽可能地保证安全稳定运行,本文通过分析总结实际电网CPS的安全防御方法,从信息侧和物理侧研究分析提高电力系统抵御攻击能力的防御资源分配策略,为研究不同规模电力CPS系统抵御网络攻击能力,将具体投资的设备、软件和人力等统一抽象为防御资源,基于系统的高风险脆弱节点和关键节点,进而合理优化资源,将其重点分配在这些节点上,最终得到了一种可有效提高电力CPS抵御网络攻击能力的资源分配方法。通过算例分析验证,本文提出的防御资源分配方案能够有效降低系统的失负荷量,提高电力CPS的稳定性和容侵性能,有效抵御网络攻击。