APP下载

IEC 61850的应用层安全防护设计

2018-05-08葛雅川吕佩吾

电力与能源 2018年2期
关键词:句柄应用层报文

汪 洋,张 云,葛雅川,李 楠,吕佩吾

(南京国电南自电网自动化有限公司,南京 211153)

电力系统作为国家关键基础设施,能否安全平稳运行关系到国计民生。近年爆发的乌克兰电网遭受攻击[1],伊朗核设施遭受攻击事件,显示出网络安全在电网运行中的极端重要性。

IEC 61850[2]是变电站的主要通信规约之一,站控层使用明文通信,存在安全隐患。IEC 62351[3]针对这种情况提出MMS的加密措施,极大地提高了安全性,但没有针对报文应用层内容的安全性提出解决方案。本文提出IEC 61850应用层网络安全的解决方案,可作为IEC 62351的补充,可以从语义层面漆层次加强继电保护装置的抗攻击能力。

1 相关技术介绍

1.1 IEC 62351的MMS安全方案

IEC 62351-4提出利用TLS技术[4]对MMS报文的加密安全措施,TLS架设在TCP之上可以提供以下安全防护:认证;机密性;数据完整性;不可抵赖性。

1.2 IEC 62351的局限

IEC 62351指出:“TCP/IP的TLS为通信协议集的传输层提供安全防护。TLS并不提供应用层安全防护,所以应用层安全应由其他安全措施提供。”由于具体应用场景不同,IEC 62351无法提出应用层防护建议,无法检查客户端/服务器交互过程的逻辑性与服务请求的合理性,无法检测出隐藏在应用层的攻击。

1.3 防火墙技术

防火墙是网络之间的安全屏障,保护内网免受非法侵入。防火墙可分为包过滤防火墙、应用层防火墙、代理服务防火墙。

防火墙既可部署在专门的硬件上,也可通过软件形式部署在主机本身。

1.4 深度报文检测(DPI)

传统的报文检测技术仅涉及TCP/IP协议栈各层的头部,如MAC地址、IP地址、TCP端口号。深度报文检测是在传统检测的基础上,增加对应用层具体内容的检测。

DPI技术主要有:基于特征字的识别技术、应用层网关识别技术、行为模式识别技术。

本文提出“MMS行为特征检测(MMS behavior feature detection,简称MMS-BFD)”方案,构造MMS行为特征库,深度解析客户端的服务请求报文,采取安全措施进行防护。MMS-BFD既具备应用层防火墙的深度报文检测功能,又突破了独立硬件防火墙不能解析密文的局限。

2 MMS-BFD防攻击架构

2.1 IEC 61850应用层攻击

IEC 61850应用层攻击主要分为三种。

(1) 畸形报文攻击。通过向目标系统发送应用层有缺陷的报文,使得目标系统在处理这样的报文时会出现崩溃。

(2) DOS攻击。利用合理的服务请求来占用过多的服务资源,目标服务系统无法提供正常的服务或资源访问,停止响应甚至崩溃,从而使合法用户无法得到服务的响应。

(3)错误逻辑请求。利用通信规约和系统逻辑漏洞,制造符合语法要求,但业务逻辑不合理的服务请求。

IEC 61850对装置的行为并没有做出硬性约束。一些ACSI/MMS服务超出一般需求范围,属于DOS攻击和反逻辑请求。

(1) 频繁请求Read服务,如高频率注册报告控制块,高频率总召,超出正常需求。

(2) 频繁请求Write服务,如短时间内连续多次切换定值区、修改定值、投退压板和断路器。

(3) 多客户端服务不合逻辑,如使用FileClose服务关闭其他客户端通过FileOpen创建和FileRead使用的读写句柄(系统总是从一个整数开始按照规则顺序分配句柄,试探攻击者并不需要试探整个句柄空间),一个客户端切换定值区后另一个客户端紧接着切换到另一个定值区。

(4) 频繁通断TCP连接。

(5) 不完整流程,如投退压板时仅预选但不执行,读录波文件仅读取其中部分就结束。

这些行为虽完全符合IEC 61850规范,但对一般变电站而言属于异常行为范畴,是隐藏在合法报文中的非法操作。

2.2 MMS的三层安全防护

针对这些攻击,MMS-BFD在TLS解密报文后,接下来先后分三个模块处理,见图1。

(1) MMS解码模块。解析MMS报文,过滤畸形报文。

(2) 特征检测模块。根据具体场景,检测服务请求是否合理,是否允许执行。

(3) 服务模块。执行服务,或拒绝服务(如向客户端发送否定响应报文)。这是最后一道防护,执行服务程序根据装置状态执行成功或失败。

图1 三层安全防护结构

MMS解码模块、服务模块是实现IEC 61850通信必不可缺的基本模块。MMS解码模块对畸形报文检测的强度随系统不同而有所差异,本文不深入探讨。

特征检测模块是防DOS攻击和反逻辑请求的主要模块,是一般IEC 61850程序中不具备的功能。

3 MMS服务请求的特征检测方案

特征检测模块针对解析MMS后得到的客户端服务请求,做深层次行为解析,判断其是否合理,是否符合正常业务逻辑。

3.1 特征的分类

客户端的服务请求可抽象为两类行为特征。

(1) 独立行为特征。这类特征仅跟一个特定客户端的行为有关,不涉及其他客户端。例如:单个客户端注册报告控制块频率、单个客户端获取VMD中的对象列表的次数。

(2) 关联行为特征。这类行为特征跟多个客户端的行为相关。例如:某客户端在其他客户端切换定值区后,又下达切区命令切回去。从单个客户端来看,切区是正常操作;而从多客户端角度连贯起来看,属于可疑操作。

3.2 特征的表示

根据继电保护装置的部署环境,装置行为特征用计数器、计时器、行为链等形式表示,但不局限于这些形式。

(1) 计数器。计数器用于统计客户端在一段时间内同一类行为发生次数。一旦次数超过阈值,装置就启动防护。

(2) 计时器。计时器用于记录一个行为在多久之前发生。

(3) 行为链。行为链记录客户端一连串相关行为及行为的时间间隔。行为链的每个节点表示一个行为的发生,用五元组表示:

Action = {Client,Time,Code,Object,Para}

其中,Client为客户端识别码;Time为距上一行为的时间;Code为操作码;Object为操作对象;Para为操作参数。

例如,把“客户端A切换定值区至1,过了0.5 s后B客户端切至2,再过0.3 s后A又切换至3”,切区为链如图2所示。

图2 切区行为链

为了不占用过多内存,行为链在数据结构上采用队列的形式。节点数达到阈值时,删除最早入队的行为节点。

一条行为链要求操作码Code必须具有关联性,操作码可在装置配置文件中约定。

4 入侵检测和防御策略

MMS-BFD通过入侵检测,来防御客户端攻击。入侵检测采用DPI方法,把客户端报文的语义归结并反映成行为特征,再根据行为特征判断是否遭遇攻击,再通过防御策略抵御攻击。

4.1 部署MMS-BFD

MMS-BFD部署的前提是能够解密报文,暴露应用层内容。根据IEC 62351对MMS报文加密后,只有通信两端能加解密报文。因此,把DPI部署到保护测控装置上,作为IEC 61850程序的一部分。

MMS深度报文检测模块分为四层。

(1)分拣层。接收MMS解析模块的解析结果(参数集),把参数规格化后分拣,形成若干参数子集,输入至特征层节点。

(2)特征层。本层节点是一系列计数器、计时器、行为链。设单客户特征有n个,对应标号为FS1,FS2,…,FSn,n∈[0,+∞),多客户端特征有m个,对应标号为FM1,FM2,…,FMm,m∈[0,+∞)。特征层节点接收分拣层格式化后的参数集,计算相应结果。

(3)状态层。本层节点是一系列状态机,单客户特征有p个,对应标号为SS1,SS2,…,SSp,p∈[0,+∞),多客户端特征有q个,对应标号为FM1,FM2,…,FMq,q∈[0,+∞)。状态层节点接收特征层的特征计算结果,经过状态变迁运算,得出新的状态。

(4)决策层。本层综合各个状态层节点的输出状态,计算出是否提供客户端请求的服务。

MMS深度检测结构见图3。

图3 MMS深度检测结构

基于MMS深度检测结构,装置根据一系列配置的阈值来探测攻击的发生。

4.2 防御策略

决策层为装置是否响应客户端服务请求提供了依据,但决策结果不应仅仅影响本次服务。

决策层应当具有反馈机制,影响前面流程的执行。在拒绝服务后,分拣层的MMS解码模块甚至TCP/IP协议栈,都可对相应客户端采取处罚措施,丢弃相关请求或闭锁相关功能。

4.3 MMS-BFD的配置

控制块的配置与具体应用部署相关。既可将配置以xml格式嵌入扩展的ICD模型文件,也可在装置flash中新建专门的配置文件。

配置的主要目的是设置防御参数,建立检测和防御体系。

5 MMS-BFD在关闭录波文件句柄中的应用

5.1 安全需求

根据典型变电站特性,客户端关闭comtrade文件句柄行为的限制如下。

R1:该句柄必须为本客户端打开;

R2:不能频繁读取同一个录波文件。设1 h内只能读一次;

R3:一个客户端不得关闭其他客户端打开的句柄。

5.2 特征层和状态层的表示

根据这些需求,构造状态层节点。

SS1:该客户端的读文件状态,分为离线、在读、异常三个状态,见图4。

图4 文件操作状态层节点SS1

为R1在特征层设置行为链FS1,行为链节点的Para字段为客户端Client操纵的文件句柄FileID。

为R2在特征层设置计时器FS2,记录从上一次读取该comtrade文件开始所经历的时间t,用min_t表示读同一录波文件的最短间隔时间。

R3复用FS1,若FileClose节点的FileID与前一行为节点一致,则FS1向SS1传入“合法FileClose”信号,否则传入“违反R3的FileClose”。

SS1在状态跃迁后,向决策层传达MMS指令及状态。向装置执行模块程序下达提供或拒绝服务的指令,由执行模块执行相关操作并生产应答报文。

6 结语

本文提出的MMS行为特征检测,是对TLS安全防护的有效补充。即使客户端被物理的、网络的方式攻破,装置也能在一定程度上,从语义层面抵御非法服务请求。

三层安全防护结构需消耗CPU资源,如何在有限的软硬件资源下实现最大化防护,尽量减小对继电保护装置工作效率的影响,是下一步研究内容。

参考文献:

[1] 刘念,余星火,张建华. 网络协同攻击: 乌克兰停电事件的推演与启示[J].电力系统自动化,2016,40(6):144-147.

LIU Nian,YU Xinghuo,ZHANG Jianhua. Coordinated Cyber-attack: Inference and Thinking of Incident on Ukrainian Power Grid[J].Electric Power System Automation, 2016,40(6) :144-147.

[2]IEC 61850:Communication Networks and Systems in Substations [S].

[3]IEC 62351:Data and Communication Security [S].

[4]IETF.RFC 5246:The Transport Layer Security (TLS) Protocol [S].

猜你喜欢

句柄应用层报文
基于J1939 协议多包报文的时序研究及应用
CTCS-2级报文数据管理需求分析和实现
浅析反驳类报文要点
高校图书馆持久标识符应用研究
编译程序语法分析句柄问题分析与探讨
基于分级保护的OA系统应用层访问控制研究
ATS与列车通信报文分析
新一代双向互动电力线通信技术的应用层协议研究
物联网技术在信息机房制冷系统中的应用
Current advances in neurotrauma research: diagnosis, neuroprotection, and neurorepair