1 概述
电力行业作为国家关键基础设施,控制系统的网络安全关系到国民经济的正常运行,因而非常重要。国家对电力行业的网络安全非常重视,在网络安全等级保护的基础上,《电力监控系统安全防护规定》、《电力监控系统安全防护总体方案》对电力行业的网络安全工作提出了具体的要求[1]。
遵照“纵向加密、横向隔离”的原则,电力监控系统的边界防护已经较为完善,进一步增强控制系统内部的安全防护,找出控制系统内部存在的网络安全漏洞并进行修补应成为未来的一项重点工作。该项工作对研究平台、研究人员和研究资金的投入要求较高,因此这方面研究开发工作的进展和用户的需求还有很大距离。中国东方电气集团有限公司中央研究院从自身业务需求出发,结合电网行业的实际需要,在过去几年对电站和电网控制系统的网络安全漏洞进行了初步的研究,对发现电力监控系统网络安全未知漏洞后的处理进行了初步的探索。
2 电站控制系统网络安全漏洞研究
2.1 火电控制系统网络安全漏洞
火力发电目前是我国的主要电力来源,通过对火电控制系统的网络安全漏洞研究发现,火电控制系统的网络安全脆弱性不容忽视。
火电控制系统一般是由协调控制系统(CCS)、模拟量控制系统( M C S ) 、锅炉安全监控系统(FSSS)、汽轮机数字电液调节系统(DEH)、汽轮机保护系统(TSS)、顺序控制系统(SCS)、电气控制系统(ECS)、旁路控制系统(BCS)、数据采集系统(DAS)等部分构成[2-3]。随着电厂控制一体化技术的发展,新建电厂项目和已有电厂的改造项目逐渐采用集散控制系统(DCS)实现机、炉、电的一体化控制,以覆盖CCS、SCS、DEH等系统所实现的功能[4-5]。部分项目进一步对控制系统和保护系统进行了一体化改造[6]。
DCS系统主要由过程级、操作级和管理级构成。过程级主要包括分布式控制器、过程仪表、执行机构、I/O单元等,操作级主要包括操作员站、工程师站、历史站、控制服务器等,管理级主要包括生产管理系统等[7]。DCS最小系统如图1所示。
图1 DCS最小系统
DCS采用现场总线技术进行通信,对通信速率和实时性要求高。随着以太网技术的发展,DCS逐渐采用工业以太网替代传统的现场总线实现各个分布式控制器之间、控制器与操作站之间的实时通信,例如IEEE1588、Profinet、Ethernet/IP等。同时,计算机技术的发展助推了DCS操作站和控制器的更新换代。主流DCS系统的操作站多采用基于Windows的操作系统,分布式控制器多采用基于Vxworks或定制Linux的实时操作系统。DCS系统的组态软件采用基于标准库的常用编程语言实现,例如C、Java等。因此,基于DCS技术的火电控制系统可能存在诸多安全隐患。
通过对多个品牌的国内和国外火电控制系统进行漏洞扫描发现,除了我们已经熟知的控制系统操作员站存在大量已知网络安全漏洞,如图2所示,控制系统自身也存在不少已知网络安全漏洞。
图2 DCS操作站漏洞统计
除了已知网络安全漏洞,火电控制系统还普遍存在未知网络安全漏洞,如:弱口令漏洞、拒绝服务漏洞、访问控制漏洞、溢出漏洞等。这些漏洞大多没有被公布到CVE、CNVD、CNNVD等漏洞库成为已知漏洞,因而也就没有漏洞修补方案和对应的防范措施,很容易被恶意利用。
为验证火电控制系统漏洞的危害,在实验室环境中,我们以某火电厂汽轮机组实际控制系统、控制逻辑、汽轮机数学模型搭建了火电汽轮机组的控制系统仿真测试平台,利用该控制系统的一个未知网络安全漏洞对汽轮机电液调速系统进行了攻击。攻击导致汽轮机飞车,但由于控制系统被攻击,监控界面上一切正常,如图3所示。
图3 网络攻击导致汽轮机飞车事故的仿真测试
2.2 风电控制系统网络安全漏洞
随着新能源发电在电力系统中占比的增加,风电控制系统的网络安全漏洞正在成为电力系统新的网络安全风险来源。
风电控制系统的结构较为简单,主要包括就地控制站和SCADA系统,其中,就地控制站包含主控制器、变桨控制器、变流器等部件[8-10]。不同于火电控制系统的分布式控制方法,风电控制系统常常采用集中式控制方法,以可编程逻辑控制器PLC作为控制系统的主体,在集控室以少量操作站搭载SCADA系统作为远程监控手段,实现风力发电机组的监视和控制功能[11]。
借助计算机技术和嵌入式技术的发展,PLC的硬件架构逐步向Intel x86和ARM架构靠拢,操作系统也逐渐统一成Vxworks、Linux、WinCE等主流操作系统[12]。同时,SCADA系统的软件平台亦逐渐统一为基于Windows或Linux商业发布版本的操作系统。因此,风电控制系统的网络安全问题日益严重。
通过对主流风电控制系统产品的研究发现,风电控制系统也存在弱口令漏洞、拒绝服务漏洞、访问控制漏洞、溢出漏洞等网络安全漏洞,由于某些风电控制系统和风电SCADA还采用了B/S架构,因此还存在一些B/S系统自身的网络安全风险。从CVE、CNVD、CNNVD查询结果看,风电控制系统的主流产品公开的网络安全漏洞不多,而从我们的实际研究中可以发现,风电控制系统中存在的大量未知网络安全漏洞,这些漏洞能够造成诸如风机停转等多种安全事故。
为验证风电控制系统漏洞的危害,在实验室环境中,我们以某风电厂风力发电机实际控制系统、控制逻辑、风力发电机数学模型搭建了风电控制系统仿真测试平台,利用该控制系统的一个未知网络安全漏洞对风力发电机主控进行了攻击。攻击可以造成风力发电机立即不受控制的停止运转,如图4所示。
图4 正常运行的风机不受控停机
2.3 智能变电站控制系统网络安全漏洞
除了发电厂控制系统存在网络安全漏洞,电网控制系统同样存在网络安全漏洞。以智能变电站为例,基于IEC61850协议的通信系统、控制保护设备、SCADA系统均存在网络安全隐患。
智能变电站为典型的“三层两网”结构:站控层、间隔层、过程层,站控层网络、过程层网络[13-14]。过程层的设备是直接面向电力系统的一次设备,主要是智能终端和合并单元,部署在一次设备旁。过程层设备主要采用IEC61850 Goose和SV协议与间隔层设备进行数据通信。间隔层设备主要包括测控装置、保护装置、故障录波设备、网络报文分析设备。站控层包括时间同步系统、监控站和远动测控站。站控层与间隔层设备之间通过基于TCP/IP的IEC61850 MMS协议进行数据通信。
智能变电站控制系统自身存在的信息安全漏洞是控制系统信息安全脆弱性的主要来源,这些漏洞主要针对间隔层和过程层的各类设备和终端,包括嵌入式操作系统漏洞、嵌入式应用软件漏洞等。研究表明,智能变电站控制系统存在的未知网络安全漏洞可以被利用进行攻击,攻击可以造成刀闸不受控的开闭,对电网的稳定运行造成很大危害,如图5所示。
图5 智能变电站刀闸分合闸不受控
2.4 电力监控系统网络安全漏洞挖掘方法
电力监控系统的网络安全漏洞挖掘可以分为基于终端软件分析的漏洞挖掘和基于协议测试的漏洞挖掘等。终端软件包括各种业务软件,比如SCADA、HMI、组态软件等,也包括基础软件,比如SSH、Telnet、FTP、HTTP等,还包括实时操作系统,比如Vxworks、定制Linux等。针对SCADA、HMI等直接运行在Windows或Linux类通用操作系统的上位机程序,除了渗透测试,通常还采用行为分析和动态调试方法进行漏洞挖掘。针对电力工控设备中内嵌的实时操作系统和软件,通常采用静态反汇编和程序分析等方法进行漏洞挖掘。
电力监控系统的协议包括工控专用协议和工业以太网中的通用协议,采用模糊测试方法能够实现对电力工控设备网络协议的自动化漏洞挖掘。模糊测试在通用协议测试中已经有成熟的应用,比如SPIKE、PEACH,能直接用于对工业以太网中的通用协议进行漏洞挖掘。针对专用协议,需要根据图6所示的模糊测试测准框架对现有应用进行改造,以适应电力工控协议的规范和工控设备的特性。
图6 模糊测试标准框架
针对某电力系统控制设备,我们基于终端软件分析和协议模糊测试,发现了多个未知漏洞。利用这些漏洞,攻击者可以完全地控制设备,造成严重后果。
3 电力监控系统网络安全漏洞处理
未知网络安全漏洞的发现只是开始,完成漏洞的修补才是终点。从实践中我们发现,当前的工业控制系统网络安全漏洞发现、上报、通知、响应、修补的全流程工作还有待进一步完善。
目前,在发现电力监控系统的网络安全问题后,一般的处理流程是上报漏洞平台,有的漏洞平台在收到通报后会通知厂商进行处理,在厂商推出补丁后进行公布,有的漏洞平台只收集整理上报的漏洞信息,并不跟踪厂商对漏洞的修补。同时我集团以通报的形式下发到使用该控制系统的相关集团内企业,这些企业会联系控制系统的生产厂商,在得到控制系统厂商的修补补丁后,由企业完成测试和最终用户如发电企业的设备补丁升级,从实践的情况看,由企业联系控制系统厂商得到反馈和修补补丁的速度会快于漏洞平台。
这样的处理流程还存在着一些不足:
(1)电力监控系统关键设备使用的控制系统出现的未知网络安全漏洞是否应报送给国外漏洞平台存在争论;
(2)电力监控系统系统关键设备使用的控制系统出现的未知网络安全漏洞报送国内漏洞平台后的处理速度较慢,处理流程尚未形成完全的闭环;
(3)一般网络安全研究人员发现电力监控系统关键设备使用的控制系统未知网络安全漏洞在处理流程中,难以让电力监控系统供应链中的企业及时得到信息;
(4)现有的处理流程中,电力监控系统供应链中的各个角色还没有完全进入到处理流程中,这使得处理流程没有完全形成闭环。
4 结语
电力监控系统的网络安全是电力行业安全稳定运行的关键,是国家关键信息基础设施网络安全的重要组成部分。通过几年发现、验证、通报、修补电力监控系统未知信息安全漏洞的研究和实践工作,我们认识到电力监控系统还存在未知信息安全漏洞等待我们去进一步发现和修补,这项工作还需要电力行业主管部门、生产企业、工程公司、用户单位等都参与进来,进一步完善电力监控系统信息安全。
参考文献:
[1] 国家发展改革委员会. 发改委14号令 电力监控系统安全防护规定[Z]. 2014.
[2] 吴季兰. 汽轮机设备及系统[J]. 北京: 中国电力, 1998.
[3] 栾英, 发电厂, 万云, 等. 火电厂过程控制[M]. 中国电力出版社, 2000.
[4] 范学福, 桑超. 石横电厂# 3 机组 DCS 控制系统一体化改造换型浅析[C]. 全国火电 300MW 级机组能效对标及竞赛第四十二届年会论文集, 2013.
[5] 陈瑞军, 张希洧, 焦鹏. 火电厂主, 辅机 DCS 一体化控制的设计分析[J]. 内蒙古电力技术, 2011, 29(3): 11 – 14.
[6] 徐华艳. 大型机组控制系统改造方案及实施[J]. 电子技术与软件工程, 2014 (19): 117 – 117.
[7] 王常力, 罗安. 分布式控制系统 (DCS) 设计与应用实例[M]. 2004.
[8] 叶杭冶. 风力发电机组的控制技术[M]. 机械工业出版社, 2002.
[9] 绍禹. 风力发电机设计与运行维护[M]. 中国电力出版社, 2003.
[10] 彭滋忠, 邓秋娥. 永磁直驱风电机组控制系统综述[J]. 水电站机电技术, 2015, 38(8): 31 – 35.
[11] 黄建鹏. 论述 PLC 的风电机组控制系统设计[J]. 电子技术与软件工程, 2015 (11): 171.
[12] 李爱英, 张鹏. 基于西门子 S7-300 PLC 的风电机组专用变桨距控制系统设计[J]. 自动化技术与应用, 2011 (7): 45 – 48.
[13] 吴在军, 胡敏强. 基于 IEC61850 标准的变电站自动化系统研究[J]. 电网技术, 2003, 27(10): 61 – 65.
[14] 李孟超, 王允平, 李献伟, 等. 智能变电站及技术特点分析[J]. 电力系统保护与控制, 2010 (18): 59 – 62.
作者简介:
袁晓舒,研究员,硕士,中国自动化学会工控信息安全专委会委员,现就职于中国东方电气集团有限公司中央研究院,负责工控信息安全实验室,先后参与多个工控信息安全国家标准制定,担任企业、省和国家多个工业控制系统信息安全科研项目负责人,目前专注于电力系统发电侧的控制系统信息安全研究。
摘自《工业控制系统信息安全》专刊第四辑
原文始发于微信公众号(控制网):工业安全 | 电力监控系统网络安全漏洞研究和实践