APP下载

面向工业人机界面的信息安全策略设计及实现

2013-09-11秦元庆周纯杰

计算机工程与设计 2013年8期
关键词:白名单人机界面实时性

李 科,黄 双,周 浩,秦元庆,周纯杰

(华中科技大学 控制科学与工程系,湖北 武汉430074)

0 引 言

工业人机界面 (human machine interface,HMI)是应用在工业控制领域的人机交互工具,处于管控一体化现场的核心位置,负责将现场数据汇总后上传到中心管理层,在工业控制系统中具有重要作用。而随着工业人机界面越来越网络化和开放化,其信息安全问题也日益突出。

目前在IT领域的信息安全问题得到了国内外学者的高度重视[1-3]。在工业控制系统中也存在信息安全问题,如系统安全防御机制缺失等[4],但工业控制系统对实时性要求高[5],大多基于嵌入式平台,资源受限,使得IT领域中的信息安全解决方案不能很好地解决其信息安全问题,因而人们提出了一些其他的解决方案,如实施强访问控制策略[6]、设置工业防火墙[7]等,此外IEC制定了IEC62443国际标准[8]来保障其信息安全。但是关于HMI的信息安全策略设计与实现的技术研究还比较少,针对HMI的信息安全策略研究极少有人涉足。

为了保障HMI的信息安全,结合其资源受限、实时性要求高、分阶段运行等特点,本文在基于LPC3250-Linux的触摸屏人机界面平台上探讨了其信息安全问题,从入侵过滤、入侵检测、入侵响应3个阶段设计并实现了其信息安全策略,同时进行了相应的验证。

1 工业人机界面信息安全现状分析

1.1 工业人机界面的典型应用结构

工业控制系统可分为4个层次:现场采集层、现场控制层、本地操作层、中心管理层,各层之间通过网络连接,其结构如图1所示。

图1 工业自动化控制系统层次结构

HMI在工业自动化控制系统中处于本地操作层,负责现场数据的转发,对现场数据信息的传递起到了承上启下的作用。同时,HMI还同本地操作层的PC机、移动存储介质交互信息,并同其他HMI通信,控制其他HMI管理下的设备[9],因而 HMI在本地操作层也是重要的交互工具。

1.2 工业人机界面面临的信息安全问题

HMI的平台为嵌入式结构,其信息安全问题与IT信息安全问题有所不同,面临的攻击类型也不一样[10],存在的信息安全问题有:①采用不充分的访问控制,给予HMI访问者过多或过少的访问权限,造成用户权限的窃取;②HMI中的数据传输和存储未加密,HMI数据未受保护地存储在移动设备中,数据容错能力差,未使用数据验证机制;③HMI容易遭受到网络上存在的各种攻击;④缺乏备份电源,产生安全隐患,降低了系统的可用性。因此需要专门针对HMI的信息安全问题设计相应的解决方案。

2 工业人机界面信息安全策略设计

由于HMI系统中可用资源受限,没有内在的信息安全保障能力,且系统实时性、可用性要求高,单纯移植IT领域的信息安全解决方案并不能解决HMI的信息安全问题,因此本文针对HMI的特点提出了一种适合HMI的入侵检测处理策略。

该策略框架包括入侵过滤、入侵检测和入侵处理3个阶段,策略框架示意图如图2所示。入侵过滤阶段采用“白名单”机制,包括身份认证、IP地址白名单、帧校验,可过滤掉简单的入侵行为。入侵检测阶段采用基于性能模型的异常检测机制,选取反映系统运行状态的性能指标建立性能模型,并对这些指标进行实时监测;同时对于资源丰富的HMI可在入侵检测部分添加内环特征检测机制,以加强检测力度。入侵处理阶段主要通过报警、加密和断开网络连接来处理入侵行为。

图2 HMI信息安全策略框架

系统信息安全策略框架包括:①性能指标监测,对选定的性能指标进行监测,如HMI的任务执行情况、CPU利用率、网口流量等;②性能模型,根据选定的系统性能指标建立相应的性能模型,性能模型作为对性能指标监视的参考;③安全决策,包括时机决策和措施决策,时机决策在HMI发现入侵后选择合适的时机来响应;措施决策指HMI需要执行的措施,如报警、记录攻击数据、阻断攻击等;④数据参数化,对HMI接收的数据进行识别,提取特定信息;⑤特征匹配,参数化后的数据与特征信息采用算法进行匹配;⑥安全策略,HMI针对不同的检测结果选择不同的处理方案,如报警、断开网络连接等;⑦入侵处理,执行安全策略。

对于入侵检测部分,特征匹配检测和性能异常检测各有其特点:特征匹配能够快速地检测到已知的入侵行为,但由于需要建立特征库,占用资源比较多;性能异常检测则不需要占用太多资源,且系统监视性能指标比较方便,在Linux下通过读取相应文件内容就可以实现。因此针对HMI的信息安全策略设计需要考虑HMI中的资源情况,对于中低档产品采用性能异常检测机制,而对于高档产品可添加内环特征检测机制。

3 工业人机界面信息安全策略实现

3.1 工业人机界面的系统结构

HMI的硬件框架包括CPU、存储器、电源、通信接口、移动存储接口、LCD接口等模块,CPU采用NXP的工业级芯片LPC3250。对于电源系统,为了保证HMI的可用性,采用了备份电源。

HMI软件部分基于嵌入式Linux设计,在Linux上开发应用程序,设计多个任务模块,在考虑信息安全的模块中添加安全保障措施。人机界面的软件结构如图3所示。

其中在用户应用层设计了信息安全策略:首先在系统中建立性能模型,然后对触摸输入模块、设备通信模块等的性能指标进行监测,监测结果与性能模型比较并进行安全决策,最后在数据存取模块和下载上传模块部分执行决策方案。

图3 工业人机界面软件结构

系统中采用 “白名单”机制对入侵进行过滤处理,其中安全下载上传模块采用IP白名单、帧校验,安全触摸输入模块采用身份认证;采用基于模型的入侵检测机制对入侵行为进行检测,利用反映系统运行状态的性能指标建立模型,对运行中的性能指标监测并得出检测结果;采用报警、加密、断开网络连接对检测结果进行响应处理。

3.2 基于 “白名单”的入侵过滤处理

入侵过滤模块使用 “白名单”机制来加强对HMI的访问控制和通信,应用的 “白名单”机制包括身份认证、IP地址白名单和帧校验。

身份认证的方式为采用身份证号/工号、密码进行认证,身份证号或工号作为用户名,密码组成包括当前登录的时间戳 (精确到分钟)+用户自行设定的密码,只有符合认证方式的用户才能操作HMI,从而形成身份认证白名单。

IP地址白名单是指只有 “白名单”中规定的IP地址才可访问HMI,其根据HMI操作分时段的特点来设置,IP地址白名单示例如表1所示。数据下载在白天有10个合法地址,晚上不允许下载;数据批量上传用于将白天的运行数据保存,在晚上时段进行,有4个合法地址;上位机监控可24小时进行,有两个网段,每个网段有10个合法地址。

表1 IP地址白名单示例

帧校验是通过在组态数据下载帧中添加安全冗余信息而对其进行安全校验,对于不符合校验规则的帧进行过滤处理。对下载帧添加校验码标识,图4所示为组态工程文件数据帧格式,在其帧首部的系统参数中添加安全校验码(包含两部分),该校验码通过算法计算得出,与帧内部分数据相关。

图4 添加安全校验码的下载帧格式

3.3 基于性能模型的入侵检测策略

本文针对中低档的HMI,采用基于性能模型的异常检测策略,其思路是首先选取能反映系统运行状态的性能监测指标,然后针对不同运行阶段分别建立性能模型,如果在实际运行中发现选取的监测指标之一出现异常,则判断有入侵行为,其流程如图5所示。

图5 入侵检测策略流程

对于HMI系统,任务、CPU利用率、网口流量是体现系统运行状态的主要特征量,因此选取它们作为监测指标比较合适。任务有周期性的和非周期性的,其执行时间可通过系统函数gettimeofday()获取;在Linux中通过读取/proc/stat文件来计算CPU的利用率;在Linux中通过读取/proc/net/dev文件来计算网口通信流量。

HMI系统运行状态分为组态配置阶段和运行监控阶段。在组态配置阶段,利用PC机上的组态软件设置相关参数,保存为特定格式的文件,该文件通过10M以太网下载到HMI的存储空间;在运行监控阶段,HMI利用组态配置阶段下载的参数配置系统中的变量,在触摸屏上再现PC机上的组态内容,同时通过触摸屏的触摸功能实现人机交互,并通过串口与PLC等设备进行通信,另外PC机可通过网口来监视HMI中获取的资源信息。由于不同阶段的监测指标状态有所不同,需要分别针对两个阶段来建立性能模型。

两个阶段的任务列表及其详细信息如表2,其中包括各任务的执行时间估计值、CPU占用率平均值。对于表中的任务,有些执行时间较为固定,如下载进度条显示任务,而有些执行时间是根据组态配置决定的,如图形显示任务,其执行时间取决于组态画面的复杂程度;任务的CPU占用率取决于其被调用频率,在组态配置阶段主要是通过网口通信,相关任务的CPU占用率比较大,而在运行监控阶段,图形显示和串口通信是主要的,其CPU占用率相对比较大。同时系统在一定时期的活跃任务数是确定的,因此任务模型根据任务的执行时间、任务对CPU的占用情况和一定时期的活跃任务数来确定。

表2 任务列表及详细信息

通过对任务执行情况的统计可估计出HMI在不同阶段的CPU利用率:在组态配置和运行监控阶段,CPU利用率正常值分别为28%和40%,组态配置阶段的任务数量不多,CPU利用率较低,运行监控阶段的任务数量较多,CPU利用率较高。为建立CPU利用率模型,将两个阶段的CPU利用率安全极限值分别设置为40%和55%。

由于HMI的网络流量在各个运行阶段是基本固定的,因此可统计出在不同阶段的以太网通信流量,如表3所示。在组态配置阶段,接收流量指单位时间内HMI接收到上位机发送的组态数据量,发送流量指在HMI接收到一帧数据后单位时间内发送给上位机的回应数据量,该阶段的流量比较大;在运行监控阶段,接收流量指单位时间内上位机发送的监控指令和数据量,发送流量指单位时间内HMI返回的监控数据量,该阶段的流量不大。

表3 以太网通信流量统计

在HMI系统运行过程中,不断对系统性能指标进行监测,当发现性能指标偏离上述模型之一时,可判断有入侵行为,需要采取入侵处理措施。

3.4 入侵响应处理

响应包括主动响应和被动响应,主动响应阻断入侵并采取措施防止入侵产生的不良后果,被动响应则进行报警和记录所检测到的入侵信息。HMI采用被动和主动相结合的方式进行响应,被动响应采用报警进行处理:当检测到系统异常或有入侵行为时,在报警列表中添加报警事件并将报警信号上传,同时鸣响人机界面中的蜂鸣器;主动响应通过Linux系统中的加密和断开网络连接来实现:当发现有数据窃取行为时,通过调用数据加密任务,对存储和传输的数据进行加密处理,如果入侵影响到系统的实时性,则需要断开与外部的连接,关闭与网口、USB口等的通信任务,并阻塞可疑的任务调用。为保证与设备通信的可靠性,需要在任务中设置重传机制,同时为保障与设备通信的安全性,对于未完成的通信予以撤销。

4 入侵检测处理验证实验

4.1 实验平台与测试方案

测试平台如图6所示,由PC机、HMI、U盘及PLC组成,PC机使用RJ45交叉线与HMI相连,HMI使用串口线与PLC相连,U盘插在HMI的USB接口上。

本文通过PC机上的模拟入侵软件向HMI发送入侵数据,入侵过滤检测的结果保存到连接在HMI上的U盘中。测试内容包括人机交互安全测试和网络通信安全测试。

人机交互安全测试包括:身份认证测试;通过sniffer软件组包对IP白名单测试;修改组态软件中的数据帧格式对通信帧白名单测试。

图6 测试平台

网络通信安全测试采用KDD CUP99数据集[11]来评价,数据 集 样 本 分为 四 类:Probe、DoS (Denial-of-Service)、R2L (Remote-to-Local)、U2R (User-to-Root)。测 试 数据集由正常数据与上述一种或几种类型中的攻击混合组成,选取5组测试数据集,每组包含900个正常数据和100个攻击数据,其中4组分别包含一种类型的攻击,另外1组包含四种类型的攻击。测试时每分钟发送20个数据,并对正常实例和入侵实例计数。

为测试HMI与PLC的通信实时性,选取一组数据集,其中包含N个包含四种类型的攻击数据和1000-N个正常数据,攻击数据个数依次递增,在串口通信任务中设定定时器记录通信延迟时间。

4.2 实验结果及分析

(1)人机交互安全测试

多次登录未成功时产生报警,并禁止再次登录,需要等待一段时间后才能登录;sniffer软件发送IP错误数据包时HMI不回应,而组态软件下载安全校验码不正确的数据包时HMI显示无法下载。

(2)网络通信安全测试

入侵检测性能通过检出率和误检率两个指标来评价,检出率指检测到的入侵数目与总的入侵数目之比,误检率指被误判为入侵的正常数目与总的正常数目之比,实验结果如图7所示。

图7 入侵检测实验结果

由图7可看出,Probe和DoS类型攻击的检出率达到85%以上,主要是因为这两类的大部分攻击比较常见,容易引起系统异常,而且一些攻击被 “白名单”过滤掉了,两类的误检率低于20%;对于U2R和R2L类型攻击的检出率不高,只有60%左右,这是由于很多攻击难以很快引起系统异常,而当系统异常又将正常数据误检,导致误检率比较高。

HMI与PLC的通信实时性测试结果如图8所示。

图8 HMI与PLC通信实时性测试结果

由图8可知攻击数量对于通信实时性有影响,攻击数量越多,通信延迟时间越长,当入侵对实时性造成较大影响时 (延时达到2s),HMI会关闭与上位机的通信接口,以保证与PLC的正常通信,此时延迟时间为正常的通信延时。

5 结束语

本文分析HMI系统的信息安全问题,结合其资源有限、实时性要求高、分阶段运行等特点,设计了相应的信息安全策略。该策略采用白名单机制实现入侵过滤,基于HMI系统性能模型进行入侵检测,主被动响应相结合完成入侵处理。结果表明,该安全策略能够有效地检测入侵行为并保持较低误检率,同时保证系统实时性要求得到满足。所设计安全策略对于保障其他工业控制系统的信息安全同样具有一定的参考价值。

[1]SHEN Changxiang,ZHANG Huanguo,FENG Dengguo,et al.Summary of information safety[J].Science in China,2007,37(2):129-150 (in Chinese).[沈昌祥,张焕国,冯登国,等.信息安全综述 [J].中国科学,2007,37 (2):129-150.]

[2]CHENG Jianhua.Research on information security risk management,evaluation and control[D].Changchun:Jilin University,2008:28-60 (in Chinese).[程建华.信息安全风险管理、评估与控制研究 [D].长春:吉林大学,2008:28-60.]

[3]Wolfgang Boehmer.Toward a target function of an information security management system [C]//Bradford:Proceedings of the 10th IEEE International Conference on CIT,2010:809-816.

[4]TANG Wen.The information security research of industrial automation control system [J].Network and Computer Security,2012,12 (4):2-7 (in Chinese).[唐文.工业自动化控制系统信息安全研究 [J].计算机安全,2012,12 (4):2-7.]

[5]WANG Yumin,DING Lu.Industry control system (ICS)overview and comparison with the IT system [J].China Instrumen-tation,2012,32 (2):37-43 (in Chinese).[王玉敏,丁露.工业控制系统 (ICS)概述和与IT系统的比较 [J].中国仪器仪表,2012,32 (2):37-43.]

[6]HU Yangyang,ZHANG Hongguang,ZHANG Yong.The design of role-based and PMI-based database access control strategy [C]//Guangzhou:Proceedings of IEEE International Conference on ICIS,2011.

[7]CHEN Junhua,CAI Wen,ZHANG Lingling,et al.Analysis for information security in industrial control systems triggered by stuxnet[C]//Proceedings of IEEE,2011.

[8]IEC62443,Guide to industrial control systems security[S].

[9]FANG Xu.Research on human-computer interface design for virtual assembly system [D].Wuhan:Huazhong University of Science and Technology,2009:17-20 (in Chinese).[方旭.面向虚拟装配的人机界面设计技术研究 [D].武汉:华中科技大学,2009:17-20.]

[10]WANG Yumin.The general attacks and how to protect the ICS [J].China Instrumentation,2012,32 (3):60-65 (in Chinese).[王玉敏.工业控制系统的常见攻击 [J].中国仪器仪表,2012,32 (3):60-65.]

[11]ZHANG Xinyou,ZENG Huashen,JIA Lei.Research of intrusion detection system dataset-KDD CUP99[J].Computer Engineering and Design,2010,31 (22):4809-4812 (in Chinese).[张新有,曾华燊,贾磊.入侵检测数据集 KDD CUP99研究 [J].计算机工程与设计,2010,31 (22):4809-4812.]

猜你喜欢

白名单人机界面实时性
核电厂仪控系统安全防护策略研究及应用
UAC提示太烦 教你做个白名单
2019年“移动互联网应用自律白名单”出炉
航空电子AFDX与AVB传输实时性抗干扰对比
计算机控制系统实时性的提高策略
CBTC系统车载人机界面的设计与实现
移动互联网白名单认证向中小企业开放
CTCS-3级列控车载人机界面的系统设计与实现
达人机界面DOP-B10VS511
简谈使用BoundsChecker进行计算机联锁系统人机界面软件可靠性测试