基于模糊证据推理的智能变电站多源告警数据的攻击取证方法

2020-12-14 09:16王继业韩丽芳周纯杰
计算机应用与软件 2020年12期
关键词:误报证据变电站

王继业 杨 军 韩丽芳 周 亮 周纯杰

1(中国电力科学研究院有限公司 北京 100192)2(华中科技大学人工智能与自动化学院 湖北 武汉 430072)

0 引 言

随着智能电网建设的全面展开,我国电力系统飞速发展,自动化水平不断提高,人们对电力的需求和依赖日渐增加。近些年,一些黑客或不法分子通过网络攻击手段侵入电力系统内部实施破坏的事件频频发生,给电力系统的稳定运行敲响了警钟。智能变电站作为智能电网的重要组成部分,承载了变电设备状态监测、电网运行数据、相关信息实时采集和发布等任务。智能变电站的运行状态影响着电力系统的稳定运行,而智能变电站系统的通信协议标准化、数字化模式使其极易遭到攻击,变电站系统稳定性面临严峻的挑战[1]。

随着大量电网安全事件的发生,在对安全事件还原的过程中暴露出了告警数据量庞大、误报现象严重等问题。茹蓓等[2]提出一种海量数据干扰下冗余数据高性能消除方法,引入均值漂移传递函数对冗余数据进行分类,并通过获取其活跃程度实现高性能消除。刘自力等[3]提出了一种能够处理大数据的频繁项集挖掘算法,将海量复杂度高的多源异构数据转化为知识。文献[4]利用基于特征重叠的告警去冗模块,有效地去掉了海量告警日志中重复以及冗余的告警信息。

目前告警信息冗余处理大多是针对通信网络的,而面向电力工控系统的告警信息处理的研究较少。针对智能变电站,本文提出基于模糊证据推理的智能变电站多源告警数据的攻击取证方法。首先对数据进行预处理达到统一数据类型减少数据量的目的,再通过特征匹配、模糊化、归一化、相似度匹配等方法去掉智能变电站告警证据中的误报。这样,能够在显著减少告警信息数量的基础上,有效解决单个设备的误报问题,在提高智能变电站数据可靠性、还原攻击场景等方面具有积极意义。

1 智能变电站网络架构

基于IEC61850标准的智能变电站从逻辑结构上分为站控层、间隔层和过程层[2-3]。其中过程层设备包括变压器、断路器、隔离开关、电流电压互感器、合并单元、智能终端、独立的智能电子装置等,主要完成开关量、模拟量采样和控制命令的执行等与一次设备相关的功能;间隔层设备包括继电保护装置、系统测控装置、在线监测装置等二次设备,主要完成对一次设备进行测量、控制、保护的功能;站控层通信设备包括监控主机、数据通信网关机、数据服务器、PMU数据集中器、综合应用服务器、对时系统等,实现面向全站设备的监视、控制、告警和信息交互功能[5]。

智能变电站网络化的成功应用使其以功能、信息的冗余代替了常规变电站装置的冗余。智能变电站网络架构[6]如图1所示,其采用“三层两网”分层分布的结构,这使其站内数据流传递方向具有“纵横交错”的特点,即不仅保持了同一层次内的横向传送,还具有不同层次间的纵向交换。

图1 智能变电站网络架构

2 典型攻击与告警证据

2.1 网络攻击特征描述

智能变电站的典型安全攻击包括远程攻击、本地提权(获取超级权限)、系统数据窃取、伪造控制指令、篡改数据(包括篡改网络数据和本地系统数据等)等。典型攻击过程常常是这些安全攻击的组合,例如首先通过远程攻击获取本地访问权限,然后采用数据窃取获得关键用户的口令、关键系统配置、关键控制组件的控制逻辑。获得并分析电力控制系统的运行逻辑后,通过发送伪造的控制指令,破坏电力控制系统的正常运行。同时,攻击者可以利用篡改数据攻击,替换监控数据,使之符合控制逻辑,并达到隐蔽攻击行为的效果。

因此在攻击取证时要考虑攻击的多种攻击特征。攻击特征主要从攻击目的、攻击机理、攻击后果三个方面进行考虑。针对收集到的攻击种类,首先将攻击进行分类,然后针对每一种攻击类型,从上述三个方面选取相应的特征,以此构建攻击特征库。智能变电站常见网络攻击[7-8]如表1所示。

表1 常见网络攻击

2.2 多源异构告警证据

现今,通信网络报文已成为智能变电站设备间信息交互和共享的主要方式,可将智能变电站系统的信息流主要分为GOOSE报文信息流、MMS报文信息流、SV报文信息流[9]。为了记录报文事件,智能变电站新配置了网络报文记录分析装置,除此之外,智能变电站还配置了记录电压电流发生突变、开关量变化引起的保护动作波形的故障录波装置,在智能变电站遭到攻击时,服务器中的系统日志及登录日志文件可以提供大量有用的告警信息。不同层次的不同设备都会产生告警数据,它们的来源不同,而且格式多样,如报文数据、日志文件等,由此可见告警数据具有多源异构的特性。正是由于告警数据数量庞大且多源异构,无法将告警数据直接进行告警关联以还原攻击场景。因此,本文先对多源异构的告警数据进行预处理,再将智能变电站的多源告警数据与攻击特征库进行特征匹配,并通过模糊隶属度以及归一化处理得到相同数据格式的告警证据,最终利用余弦相似度算法分析设备之间的证据相似度,得到有效的证据集,解决告警数据量庞大且格式不统一的问题。

3 基于模糊证据推理的攻击取证方法

面对形式各异和不断发展的网络攻击手段,传统的安全事件检测手段日益不能满足变电站安全管理的需求。入侵攻击场景还原可以从整体上反映攻击者攻击意图,为增强网络安全管理效率、制定有效的安全规划和监管策略提供科学依据。然而由于变电站通信链路、设备状态等问题,各设备产生的告警不能保证其正确性,难免会发生误报、漏报等现象。

为了避免过多的错误信息影响攻击场景的还原效率[10],本文提出基于模糊证据推理的智能变电站多源告警数据的攻击取证方法,从实现规则上讲,用模糊证据推理确定目标所属类型的过程共分三步:(1)确定目标信息的模糊隶属函数。(2)用证据理论对目标信息隶属函数进行合成。(3)判决准则选取。此方法在减少误报的同时降低了告警数据的数量,考虑到变电站各设备之间的关联性,应用于变电站的攻击取证方法总体实现思路为:采集智能变电站各个设备的告警证据,经过数据预处理后将其与攻击特征库进行攻击特征匹配,然后通过隶属度函数对告警证据进行模糊隶属度计算,再对每个设备的模糊隶属度进行归一化处理,此时对于各个设备的告警证据具有相同的数据格式。格式统一后,还需利用余弦相似度算法分析设备之间的证据相似度,得到符合要求的攻击证据集,最后通过分析证据集判断其属于哪种类型的攻击。基于模糊证据推理的攻击取证过程示意图如图2所示。

图2 基于模糊证据推理的攻击取证过程示意图

3.1 告警信息预处理

在对智能变电站多源告警数据的攻击取证过程中,一般要保存所有相关信息。由于告警信息数目庞大,因此在取证前需要对数据进行预处理,这样可以节约时间和空间,降低后续成本。预处理分为两个方面,一是减小数据量,二是统一数据类型。由于在数据采集过程中存在数据采集的非同步性、数据来源的不一致性、数据采集的时效性等问题,不可避免会出现数据缺失、冗余、格式不符、含义不明等多种情况,这些不符合分类模型处理规范的数据在攻击取证过程中十分棘手。因此,需要对变电站各类信息(量测信息、状态信息、通信信息、事务日志等)进行预处理,形成可以方便分析处理的数据集。

针对变电站数据本身不符合分析规范的情况进行处理,主要包括数据清洗、数据集成、数值化处理几个方面。

数据清洗主要负责处理数据缺失及噪声问题。对于数据缺失可以采用剔除法或替代法,剔除法虽实现容易但可能造成其他关键数据的缺失,而替代法可以采用均值填补,或用回归、贝叶斯等算法结合一些固定约束估计缺失值。噪声数据则可以采用分箱、聚类、回归、计算机与人工相结合的方法剔除。

数据集成主要负责将要进行综合分析计算的不同格式的数据合并成可用的数据集。

数值化处理将变电站数据中非数值型转化为数值型,例如通信报文所用的协议类型MMS和SV分别用标号“0”和“1”代替。

为了提高告警信息的通用性和扩展性,选取入侵检测信息交换格式(IDMEF)中权重比较大的属性将告警信息格式标准化,即可以将告警信息的格式表示为Alarm(Alarm_ID,Alarm_Type,Alarm_Source,Alarm_Dest,Alarm_Time,Alarm_Port)。

获取的告警信息中可能包含大量无关告警,通过各类安全设备从网络中采集主机、服务、漏洞等告警校验所需信息判断目标系统与告警信息的相关性,以此去掉无关的告警信息。在告警校验中,需要根据攻击行为的类型,相应地调整元素内容。以拒绝服务攻击为例,给出告警校验函数:

Function DoS-Verification{

alarm:{

Dest : DestIP

/*告警的目的IP集合*/

Port: DestPort

/*目的端口号集合*/

Vulnerability: CVEID

/*告警的漏洞信息*/

Source: SrcIP

/*告警的源IP地址*/

}

Target:{

Active: Hosts

/*活跃主机地址集*/

Ports: ports

/*主机开放端口*/

Vul: CVEID

/*漏洞信息集合*/

RA: RAccessed

/*主机访问控制策略中被访问关系*/

}

Verification:{

If(alarm.Dest∈Target.Active & alarm.Port∈Target.Ports & alarm.Vulnerability∈Target.Vul & alarm.Source ∈Target.RA)

Result=1;

Else

Resut=0;

/*校验未通过,将告警信息滤除*/

}

}

虽然去除掉了告警中的无关告警信息,但是同一攻击在某一瞬时可能在某一设备产生重复的原始告警,因此,在分析告警数据之前还要去除这些冗余的告警。本文采用滑动窗口来消除重复告警,实现如下:

(1)产生新的告警NewAlarm时,从时间窗口中移除开始时间差值大于窗口值的告警,即若存在(NewAlarm.starttime—DeAlarm.starttime)>WindowSize,则将DeAlarm从时间窗口中移除;

(2)按时间顺序匹配新告警NewAlarm与时间窗口中的告警Alarmi;

(3)若两个告警的类型、源IP地址和目的IP地址均相同则将两个告警合并,即若存在(NewAlarm.Alarm_type==Alarmi.Alarm_type)&&(NewAlarm.source==Alarmi.source)&&(NewAlarm.dest==Alarmi.dest),则合并两个告警。

3.2 单一告警证据的模糊化处理

模糊理论是指用到了模糊集合的基本概念或隶属度函数的理论,其应用范围广泛,从工程科技到人文科学都可以发现它的研究踪迹与成果。针对电力系统,在模拟人脑对电力系统进行运行控制时,由于人脑存在识别、推理等模糊性的特点,在采用专家系统、模式识别等技术时均用到了模糊集方法。

当智能变电站某部分运行异常时,可能引发与其相关联的部分发生运行错误,产生大量告警信息。通常情况下,依据0和1来判断某件事情是否发生。然而,针对本文这种情况即告警信息与其产生的根源是一种模糊的、一对多的关系,采用1或者0来判断比较片面和绝对,由此用0到1之间的任意数来表示[11]。本文结合最大隶属法,对告警进行模糊相关性分析,实现告警的精确描述与定位,以解决单个设备误报问题。

定义1设U为论域,一个模糊集合A在U上的一个映射uA表示为:

uA:U→[0,1]

u→uA(u)

(1)

对于u∈U,函数uA(u)称为模糊集合A的隶属度函数即表示u对A的隶属度。通常结合实际选取隶属度函数uA。

将理论应用于智能变电站,告警信息经过预处理后,要确定目标信息的模糊隶属度函数。隶属度函数的确定有多种方法,例如:模糊统计法、例证法、专家经验法、指派方法等。本文采用指派方法,根据问题的性质主观地选用某些形式的模糊分布。

针对不同的变电站设备有不同的模糊集合,隶属度函数有不同的选择,比较典型的隶属度函数包括三角形、梯形、S型等。可以将三角形、梯形的隶属度函数表示为:

(2)

式中:a和c为确定三角形“脚”的参数;b为确定三角形 “峰”的参数。

(3)

式中:a和d为确定梯形“脚”的参数;b和c为确定梯形“肩膀”的参数。

将攻击特征库中的攻击类型集合假设为Θ={θ1,θ2,…,θn},并将某一节点设备A的告警证据集表示为eA={e1,e2,…,eNA},则设备告警对攻击θi的支持度表示为:

(4)

式中:NA,θi代表符合攻击特征的异常告警数量;NA代表该设备异常告警的总数量。则该设备对攻击的支持度为:uA={uA(θ1),uA(θ2),…,uA(θn)}。

本文采用偏大型上升函数S型隶属函数[12],即将攻击θi的告警证据的隶属度函数表示为:

(5)

式中:a、b的值需要自定义。通过隶属度函数计算设备对各不同攻击支持度的模糊隶属度,得到的结果为fA={fA(θ1),fA(θ2),…,fA(θn)}。

为了让数据尺度统一将上述结果作归一化处理,即将有量纲的表达式经过变换化为无量纲的表达式,其目的是可以用数值来直接进行比较。归一化后的形式如下:

(6)

3.3 多源告警证据相似度分析

通过对单一告警证据的模糊化处理,得到某个设备可能遭受的攻击情况,由于智能变电站各设备模块间有信息传递,若仅凭某一个设备遭到攻击的情况就下定论可能不符合实际。由此,可以通过判断智能变电站各设备间告警信息的相似程度以得到有效的告警证据集。

相似度度量即计算个体间的相似程度,相似度度量的值越小则说明个体间相似度越小,反之说明个体相似度越大。典型的相似度算法包括欧几里得距离、Jaccard相似系数、余弦相似度等。欧几里得距离的计算是基于各维度特征的绝对数值,指的是在m维空间中两个点之间的真实距离。Jaccard相似系数主要用于计算符号度量或布尔值度量的个体间的相似度,其无法衡量差异具体值的大小,只关心个体间共同具有的特征是否一致。余弦相似度算法则用向量空间中两个向量夹角的余弦值作为衡量两个个体间差异的大小的度量,其更加注重两个向量在方向上的不同,相比于其他算法更适合应用在智能变电站的各设备间多源告警证据的相似度的衡量上。因而,本文用余弦相似度算法[13]衡量智能变电站任意两个节点设备间的相似度:

(7)

dAB越高则智能变电站中设备A、B发生相同攻击的概率越大。计算完成后,将所有符合要求的告警证据集表示为:

E={(ei,ej)|dij≥δ,∀i,j,i≠j}

(8)

式中:δ表示证据相似度阈值。进一步,假设智能变电站中有k个设备符合要求,通过分析证据集E={e1,e2,…,ek}中的证据,可以得到证据集隶属于某种攻击θi的概率:

(9)

通过将单一告警证据模糊化处理,分析不同设备告警证据的相似度,得到有效的攻击证据集,避免因错误告警过多而影响攻击取证的有效性,最后通过分析有效证据集判断其属于不同类型攻击的概率。

4 案例分析

4.1 智能变电站多源告警数据

以图1所示智能变电站网络架构来说明本文所提方法的可行性和有效性。实验以UDP Flood攻击[14-15]为例。当间隔层设备收到UDP数据包时,检测目的端口是否有正在等待的应用程序,若不存在,其会给该伪造的源地址发送ICMP数据包。随着不断向间隔层设备的开放端口发送UDP数据包,导致整个系统负担过重,通信缓慢甚至崩溃,不能处理合法的传输任务。具体流程如下:

(1)构造UDP数据包。构建与间隔层各类UDP数据包具体内容相似的UDP数据包,以确保实验的有效性;

(2)检测间隔层设备端口的开放性,为UDP攻击作准备;

(3)向间隔层设备的开放端口发送大量UDP报文,占用网络资源,导致无法正常通信;

(4)监控主机抓取数据包。

当实际系统遭到攻击时,首先从智能变电站的各层设备中得到多源异构的告警数据,对智能变电站而言,同一设备产生的告警类型可能不同,通过分析智能变电站不同设备的告警信息,我们将告警类型分为事故告警、异常告警、变位告警、越限告警、告知告警,某一时间段内,变电站的部分告警信息如表2所示。

表2 变电站的部分告警信息

攻击实施后,先对多源异构的告警数据进行预处理,再截取某段时间内智能变电站各设备的告警信息如表3所示。

表3 某段时间内智能变电站各设备告警信息统计表

然后进行攻击类型匹配。具体流程如下:先逐条分析设备告警信息判断是否属于某种攻击特征,如果属于,则将对应的NA,θ数量增加1。以典型的两种攻击为例,其在攻击特征库中的表现形式如表4所示,如果告警信息中出现表4所示情况,则可以判断其隶属的攻击类型。另外,由于不同攻击类型的攻击特征可能具有相似性,例如“安全日志异常”均符合两种示例攻击的特征,因此某一设备攻击支持度之和可能不为1,即∑μA(θ)≠1。

表4 变电站的部分告警信息

4.2 取证分析

攻击特征库中包含UDP Flood和重放攻击两种攻击类型,即表示为Θ={θ1,θ2}。统计表中的五个节点设备用A、B、C、D、E来表示,并将设备A的告警证据集表示为eA={e1,e2,…,eNA},以此类推。将节点设备的告警证据集与攻击特征库相匹配,得到的统计结果如表5所示。

表5 攻击特征匹配结果

表5中,u(θ1)、u(θ2)代表各设备对攻击θ1、θ2的支持度。将隶属度函数a、b的值设为0.3和0.7。即可以将攻击θi的告警证据的隶属度函数表示为:

(10)

通过隶属度函数分别计算各设备对不同攻击类型支持度的模糊隶属度并进行归一化处理,得到的结果如表6所示。

表6 支持度的模糊隶属度以及归一化结果

采用余弦相似度算法计算任意两节点设备间的相似度即[AB,AC,AD,AE,BC,BD,BE,CD,CE,DE],其结果为[1,1,0.72,0.09,1,0.72,0.08,0.73,0.11,0.71]。

将相似度阈值δ置为0.8,由此可见,设备A、B、C相似度比较高,即智能变电站的这三个设备发生相同攻击的概率比较大。现智能变电站中有三个设备符合E={(ei,ej)|dij>δ,∀i,j,i≠j},通过分析告警证据集E={eA,eB,eC}中的证据,计算出证据集隶属于攻击θ1、θ2的概率,即p(θ1)=0.68、p(θ2)=0.32。

若考虑到设备D、E,则可以将告警证据集表示为E={eA,eB,eC,eD,eE}。分别计算出证据集隶属于攻击θ1、θ2的概率:p′(θ1)=0.58、p′(θ2)=0.42。本次实验采用的UDP Flood攻击,依据本文方法将攻击隶属于UDP Flood攻击的概率由0.58提升至0.68,可见通过将证据模糊化的取证方法可以有效去掉误报。为了验证此方法对不同攻击的有效性,分别采用UDP Flood、SYN Flood、重放攻击、中间人攻击、错误数据注入攻击[8-9,14]进行测试,实验结果如图3所示。

图3 误报消除效果对比实验

由此可见,本文提出的基于模糊证据推理的智能变电站多源告警数据的攻击取证方法可有效减少不同攻击对智能变电站产生的误报。

5 结 语

本文提出基于模糊证据推理的智能变电站多源告警数据的攻击取证方法。首先介绍智能变电站的网络架构、告警数据的多源异构特性,以及常见的攻击。通过对智能变电站各个设备的告警证据进行预处理和模糊化处理,将多源异构的告警证据统一化,再利用余弦相似度算法分析设备之间的证据相似度,得到符合要求的攻击证据集以减少误报。最后以UDP Flood攻击为例,对方法的有效性进行验证。

本文方法能够有效解决单个设备无法解决的误报问题,对提高工控系统的数据可靠性、还原攻击场景等方面具有积极意义。

猜你喜欢
误报证据变电站
变电站五防系统临时接地桩的设置
智能箱式变电站的应用探讨
变电站巡检机器人控制系统设计
船舶消防传感器的应用初探
某水电站励磁系统误报导致机组事故停机原因分析
安全监控系统误报警故障的排除思路与方法
手上的证据
家庭暴力证据搜集指南
手上的证据
电解铝降压整流变电站综合自动化的运行