◆郭永和 王继业 沈 亮
一种基于网络报文分析的电力工控系统入侵检测方法
◆郭永和1,3王继业2沈 亮3
(1.北京邮电大学 北京 100876;2.国家电网有限公司 北京 100031; 3.国家电网有限公司信息通信分公司 北京 100761)
电力工业是关系着国计民生的重要基础工业,而电力工控系统的安全则决定着电力基础设施能否安全稳定的运行。发生在乌克兰、伊朗的攻击案例显示电力工控系统已经成为网络战的重要打击目标。本文提出一种基于网络报文分析的电力工控系统入侵检测方法。该方法具有准确率高、系统资源占用少的优点。
工控系统;入侵检测;网络报文分析
电力工控系统是由电力网和信息网紧密耦合而成的复杂的CPS系统,信息流的交互使得电力系统面临更多潜在威胁[1-5]。近年来各种针对电力系统的网络攻击事件频发,2010年伊朗布什尔核电站里正在工作的8000台离心机受“震网病毒”攻击,突然出现大面积故障,数据大量丢失,上千台离心机被物理性损毁;2015年12月23日,乌克兰电网遭受网络攻击,其SCADA系统完全瘫痪,结果造成乌克兰西部数十万用户停电数小时[6-7];2016年以色列电力供应系统受到重大网络攻击侵袭,迫使电力供应系统中大量计算机离线运行。国家电网有限公司作为全球最大的能源企业,其关键信息基础设施成为了多个境外组织的攻击目标,每个月拦截的攻击企图多达上万起。从这些事件可以看出现在网络攻击已经成为电力系统面临的一个巨大威胁。
工业控制系统(Industrial Control System, ICS),指的工业生产中采用的所有控制系统的总称。典型的工控系统包括了数据采集与监视控制系统(Supervisory Control and Data Acquisition, SCADA),分布式控制系统(Distributed Control System, DCS),还有其它的更小的系统如可编程逻辑控制器(Programmable Logic Controller, PLC)经常出现在工业控制系统的节点以及关键基础设施中。
(1)SCADA系统
数据采集与监视控制系统(SCADA)是一种使用了电子计算机、网络数据传输和图形人机界面的用于高层过程监视管理的控制系统。SCADA系统使用其他外围设备如可编程逻辑控制器和离散PID控制器来实现生产的过程控制。控制人员可以通过SCADA的计算机系统实现各种过程命令的下发。而监控数据可以由联网的现场设备采集传输。
(2)DCS系统
分布式控制系统(DCS)是一种计算机化的控制系统。DCS最早产生于大型的对安全要求高的工业部门中,主要应用于工业流程控制,比如炼油、发电(水利、火力、核能)、水处理和各类工业生产等。在DCS中,自动化的控制器分布在整个系统中,由一个监管级别的系统所控制。DCS系统相较集中式控制系统而言,提升了生产过程控制中的可靠性、降低了建设成本。
(3)PLC系统
PLC是一种工业数字计算机,主要用于自动化的工业生产流程控制等要求高可靠性、易编程和快速故障定位的场合,如生产线、工业机器人、电力远动设备等。PLC可以提供大量的模拟和数字的I/O接口。由于需要在恶劣环境下工作,PLC通常被设计为能够抵御剧烈冲击、免受强电磁干扰并经受住剧烈的温度变化。其控制程序储存于非易失性的存储器件上,如只读存储器(ROM)。
在电气工程及其自动化中,IEC 60870 标准由国际电工委员会(IEC)制定,目的是定义用于远控的系统(如SCADA),这些系统可以用于控制电力传输系统或者其他的广域分布式部署的工控系统。通过遵循这一标准,来源于不同厂商的的设备可以实现互联互通。IEC61850有6个部分,应用最为广泛的是IEC61860第5部分相关的标准。该部分提供了在两个系统中传输远控信息的通信规约。在国内IEC60870-5被转化成国家和电力行业标准。如《DL/T634.5101-2002》(等效IEC60870-5-101)、《DL/T 634.5104-2002》(等效 IEC60870-5-104)、《DL/T 719-2000 》、《DL/T 667-1999 》(等效 IEC60870-5-103)和《DL/T 719-2000 》(等效 IEC60870-5-102)。
IEC 61850 是一种为变电站中智能电气设备定义的通信协议。IEC61850中的抽象数据模型可以被映射到多种协议上,这些协议包括MMS、GOOSE、SMV和Web服务。这些协议可以运行在TCP/IP协议上或者变电站内部基于高速以太网交换的局域网协议上,以满足继电保护的低延迟保证。在国内,IEC 61850标准的等效标准为 DL/T860 标准。
选取2015年5月~2017年5月我院ICU接受机械通气治疗的新生儿140例作为研究对象,其中,男79例,女61例,平均胎龄(35.36±2.77)d,平均出生体重(2014.05±160.77)g,呼吸窘迫综合征57例,病理性黄疸49例,高胆红素血症21例,缺氧缺血性脑病13例。将其随机分为研究组与对照组,各70例,两组一般资料比较,差异无统计学意义(P>0.05)。
IEC 61850所要实现的目标是:
(1)为变电站内部不同的数据提供单一的通信规约。
(2)为数据传输的基本服务提供定义。
(3)提升不同厂商设备之间的互操作性。
(4)全部数据的通用存储方法和格式。
(5)定义对符合该标准的设备的完整的测试方法。
Modbus协议是一种串行通信协议,最早由施耐德电气于1979年发布,主要用于其PLC产品之间的通信。Modbus现在已经广泛应用各类工控设备上。Modbus可以实现同一网络内不同设备的通信。例如,一个测量湿度和温度的传感器可以通过Modbus协议将结果传送到一台电脑上。Modbus现在常用于SCADA系统,被用来连接监控计算机和远程单元(RTU)。Modbus是一个请求/应答协议,提供的服务由功能码标识。
图1 基于网络报文的工控系统入侵检测算法数据流图
如图1所示,该方案主要包含三个模块,分别是协议分析和报文解析模块,检测模块和告警展示模块。其中,协议分析和报文解析模块负责将来自以太网或者RS485接口的数据报文进行协议分析;入侵检测分析模块是该方案的关键模块,将在下面详细介绍;告警模块通过图形化展示界面将入侵检测分析的结果展示给网络安全操作员。
入侵检测分析模块是该方案的核心模块。该模块采用Anagram算法进行入侵检测分析。工控网络报文在去除TCP/IP的报头后,可以得到一段符合工控协议通信规约的多字节16进制数据。以IEC-104规约的U帧报文为例,其传输的启动报文的16进制数据为68 04 07 00 00 00,共包含了6个字节的数据。Anagram算法首先计算这段数据n-gram集合。一个n-gram指的是一段数据中n个连续相邻的字节所组成的子数据段。这段数据的所有的n-gram组成的集合即为该数据的n-gram集合。以上面的IEC-104报文为例,n取3,则该报文的tri-gram集合为{68 04 07, 04 07 00, 07 00 00,00 00 00}。可见,该集合包含了4个tri-gram。
为了将合法流量和恶意流量区分开来,入侵检测分析算法需要首先学习合法流量的特征,这个阶段被称为入侵检测分析算法的训练阶段。在这个阶段中,入侵检测模块需要部署在无恶意流量的环境中(如测试环境中),记录所有合法流量的所包含的n-gram的总集合。
图2 Bloom-filter结构
对于参数k和m的选择,遵循公式(1)和(2),其中公式(1)中的 为Bloom-filter发生碰撞导致选择错误的概率阈值。
与传统的基于误用的入侵检测方法相比,该方法可自学习合法流量特征而无需人工配置和和更新特征库。由于采用Bloom-filter进行判断某一元素是否属于合法流量的n-gram集合,可有效的减少运算量和存储占用的内存,减少硬件资源的需求,使得采用该方法的系统可以部署在低成本的嵌入式系统上。
近年来,针对电力工控系统的攻击案例不断增多。由于历史原因,工控设备的生产厂家着重解决工控系统的可用性,而忽略了对安全方面的考虑。由于工控系统中存在着大量的遗留的设备,很难通过固件升级解决这些设备的安全问题。因此对工控系统的入侵企图的及时发现和阻断就变得极为重要。传统的广泛应用于信息网络的基于误用检测的入侵检测方法并不能很好的适用于工控网络。本文设计了一种基于网络报文分析的工控系统入侵检测系统,可以通过自学习的方法生成合法流量特征库,实现对未知威胁的检测。
[1]Beddoe M. Protocol information project[J]. 2004-10-05. http://www. 4tphi. net/~awalters/PI/PI.html, 2004.
[2]CHEN P, DESMET L,HUYGENS C.A study on advanced persistent threats[C].Communications and Multimedia Security-15th International Conference,2014.
[3]Leita C, Mermoud K, Dacier M. ScriptGen: an automated script generation tool for honeyd[J]. Computer Security Applications Conf,2005.
[4]TANKARD C. Advanced persistent threats and how to monitor and deter them[J]. Network Security,2011.
[5]KUSHNER D.The real story of stuxnet[J].IEEE Spectru m,2013.
[6]张帅.工业控制系统安全风险分析[J].信息安全与通信保密,2012.
[7]王玉敏.工业控制系统的常见攻击[J].中国仪器仪表, 2012.
[8]WANG K,PAREKH J.J,STOLFO S.J.(2006)Anagram:a content anomaly detector resistant to mimicry attack[C].Internatio nal Workshop on Recent Advances in Intrusion Detection,2006.