安全可信PLC在轨道交通工控系统中的应用研究
2021-07-02金瑞蒙沈青刘虹张雷倪华
文/金瑞蒙、沈青、刘虹、张雷、倪华
随着国民经济持续、快速、健康发展及新型城镇化战略实施,我国城市轨道交通跨入蓬勃发展的黄金机遇期。世界各国广泛采用以信息化促进城市轨道交通发展的战略,信息化已覆盖城市轨道交通的建设、运营、管理、安全、服务等各个方面。我国强力推进“互联网+城市轨道交通”战略,信息化建设已进入大规模开发和应用阶段,自动化、信息化和智能化已成为城市轨道交通发展的必然趋势,同时,也带来了日趋严重的信息安全问题。
工控系统是轨道交通安全稳定运行的核心要素,在当今复杂的网络安全环境下,一旦发生信息安全事件,对轨道交通的工控系统进行破坏,将严重影响国民的出行安全,提升轨道交通工控系统的安全防护刻不容缓。按照工控系统功能层级划分(第0层:现场设备层;第1层:现场控制层;第2层:过程监控层;第3层:生产管理层;第4层:企业资源层),PLC位于轨道交通工控系统的第1层,即现场控制层,直接控制现场设备,同时与主控中心通信,是整个系统的核心,而作为核心控制装置,普通PLC自身信息安全防护能力低下,这会使工控系统面临极大的安全隐患。
因此,对于目前的严峻态势,迫切需要PLC具备以可信计算技术为保障的自身安全防护能力。安全可信PLC基于可信计算3.0技术构建了主动免疫防御体系,对硬件结构、操作系统、应用软件以及网络连接等多方面加强安全防范,并采用国产商用密码,为可信计算3.0相关组件提供密码支撑。
安全可信PLC体系结构
基于可信计算3.0技术的主动免疫防护是指在计算运算的同时进行安全防护,计算全程可测可控,不被干扰,只有这样才能使计算结果总是与预期一样。这种主动免疫的计算模式改变了传统的只追求计算效率,而不讲求安全防护的片面计算模式。
在图1所示的安全可信PLC体系结构中,安全可信PLC控制器通过安全管理平台的统一可信策略管控,构成运算和防护并存的主动免疫计算节点,与可信上位机通过可信连接进行数据交互,以密码为基因实现双向身份鉴别和加密通信,确保接入设备身份的可信及通信数据的完整性和真实性。
图1 安全可信PLC体系结构
安全可信PLC控制器作为主动免疫计算节点,由计算部件和防护部件构成,计算部件和防护部件逻辑相互独立,形成具备计算功能和防护功能并行的双体系结构。将可信计算3.0技术理念,设计并实施到安全可信PLC产品中,要克服嵌入式系统实时性要求高、系统资源紧张等问题。
本文将可信计算3.0双体系架构,创新地应用到工控系统安全可信PLC控制器中,满足可信计算3.0技术要求。
对于安全可信PLC控制双体系架构的描述,可以按照TPCM与其所连接的部件、组件的交互来展开。
TPCM与TSB、TCM、安全管理平台和计算部件进行交互,交互方式如下:
1)TPCM为TSB提供运行环境和TSB功能实现的支撑,为TSB提供可信策略,TSB按照策略解析机制,对可信策略进行解析和使用,并形成可信基准库,TSB实现控制、度量、判定、支撑等功能。TPCM为TSB提供密码服务,支撑TSB实现相关密码运算的能力;
2)TPCM通过访问TCM获取可信密码功能,完成对防护对象的可信验证、加密存储等功能;
3)TPCM通过与安全管理平台建立可信连接,实现可信策略的连接、可信报告的处理等功能;
4)计算部件操作系统中内置的防护代理将相关数据信息提供给TPCM,TPCM将数据信息转发给TSB,由TSB进行分析处理;
5)TPCM为安全可信PLC控制器提供身份鉴别和密码服务的功能,可实现安全可信PLC控制器与可信上位机的可信连接功能,其中计算部件如需与可信上位机建立可信连接,也可通过功能调用接口来实现。
安全可信PLC防护功能
本文根据安全可信PLC体系结构对其进行系统设计和功能实现,使得安全可信PLC具备可信启动、动态度量、可信连接,依托上述内生安全主动防御功能,并结合安全管理平台统一管控,实现安全可信PLC纵深防御的能力。
1.可信启动
在可信计算3.0理论的指导下,基于可信根(TPCM)建立可信链,实现系统可信启动。
普通PLC控制器启动过程如下:处理器直接从非易失存储器加载启动程序和应用程序执行,并不验证这些程序的完整性,如果这部分启动程序代码被未授权的方式篡改,主控制器在不加验证的情况下加载运行则会出现非预期行为,严重情况下会使现场的生产设备置于危险运行状态。
安全可信PLC控制器的可信启动要检查系统的一致性,系统的启动从一个可信根(TPCM)开始,依次验证 bootloader、OS到应用程序,形成一个可信链,通过可信链的传递,保证系统平台处于可信状态中。
2.可信度量
运行阶段,基于可信计算3.0理论,考虑到嵌入式平台有限的资源,在安全可信PLC控制器中,实现了轻量化环境度量功能,并依托对PLC控制器业务功能的技术积累和创新性技术探索,实现了业务行为可信度量和固件可信升级的功能。
(1)轻量化环境度量
安全可信PLC控制器业务运行环境,包括操作系统代码环境、业务代码环境等,根据PLC的业务特点,定制轻量化的度量策略,保证高实时性,有效节省嵌入式计算资源。
轻量化运行环境度量中选取与业务行为相关联的代码区域,通过可信策略配置,作为TSB组件的度量依据。也可以选取快慢度量结合的方式,根据场景需求定制。
(2)业务行为可信度量
基于PLC逻辑控制软件业务行为的动态度量方法,将度量机制的粒度细化到软件行为的层面上,以保障系统运行后的动态可信性,符合可信计算的本质。以工控嵌入式PLC逻辑控制执行,通过内部调度模块,完成指定顺序的任务流程执行。捕获安全可信PLC逻辑控制的周期性的行为迹,形成业务行为迹表,结合环境提取器,构成可信度量元素,以行为可信基准库为依据,展开对业务行为的时间序、行为完整性的可信度量。
(3)固件可信升级
安全可信PLC通过可信上位机进行固件远程升级,为防止待升级的固件被恶意篡改,基于数字证书技术,设计一种固件可信升级方案。
固件可信升级流程如下:
1) 在固件出厂前,生成签名固件;
2) 可信上位机与安全可信PLC控制器,通过双向身份认证机制,建立会话;
3) 可信上位机发起固件升级请求,并发送待升级的固件;
4) 安全可信PLC完成数字签名的验证;
5) 根据验证解决判断固件的可信和合法性。
3.可信连接
安全可信PLC控制器与可信上位机及安全管理平台采用可信连接的方式,保障通信双方的身份可信和通信数据的可信。
安全可信PLC采用自主研发的高实时安全通信组件,组件不仅支持Windows、Linux等通用操作系统,还支持安全可信PLC控制器中的自主可控国产操作系统。单包通信加解密延时小于15ms,适应工控嵌入式应用场景。组件采用高强度国产商用密码。
安全通信组件实现了基于国产商用密码的SSL/TLS协议,能够实现通信双方的身份鉴别和通信加解密功能。
会话建立过程中,通信双方通过数字证书,确认彼此的身份,进行身份鉴别。会话建立结束后,通信双方已就使用的加密算法达成一致,并拥有了一套与对应算法匹配的密钥。可以确信整个过程攻击者无法干扰,实现了可信连接。
安全通信组件采用软硬件结合的密码协同方式实现轻量化高实时性通信加解密,根据CPU的使用率、数据优先级等因素,并结合PLC的使用场景,下发专属调度策略,软件和硬件密码模块协同分担系统繁重的密码服务请求,较为高效、灵活地实现密码模块服务请求的归一化调度。
采用软件结合硬件密码模块的实现方式,一方面安全可信PLC设计中采用硬件密码模块,既满足了行业规范符合性,另一方面软件密码模块又能适应复杂多变的应用场景,软件升级成本低,能够较好地降低产品的改造和维护成本。
安全可信PLC应用分析
等保2.0要求的“一个中心、三重防护”,就是指针对安全管理中心和安全计算环境、安全区域边界、安全通信网络的安全合规进行方案设计,建立以计算环境安全为基础,以区域边界安全、通信网络安全为保障,以安全管理中心为核心的信息安全整体保障体系。
图2是一种典型的轨道交通系统安全可信防护方案设计图,该方案将可信计算3.0技术融入安全防护方案中,形成基于安全可信的“一个中心、三重防护”体系,可以更有效地对轨道交通控制系统网络进行安全防护。从图2中可以看到,安全可信PLC作为可信防护系统设备监控层的核心设备在系统中的安全防护布局位置。
图2 轨道交通系统安全可信防护方案设计图
结合轨道交通系统的应用场景,我们搭建了安全可信PLC的测试环境,并进行防护功能测试。根据中国电子技术标准化研究院的第三方测试报告(表1)显示,各项防护功能均测试通过。
表1 第三方测试报告结果汇总
结论
安全可信PLC基于可信计算3.0技术,实现了计算部件和防护部件并行运行的双体系架构,具备可信启动、可信度量和可信连接的功能,保证了工业控制系统核心代码、数据的内生安全,并实现系统由内向外的主动防御功能。本文研究的安全可信PLC可有效推动国内轨道交通领域控制系统安全防护技术的发展,满足轨道交通工控系统的信息安全需求,这样不但可以节省为引进国外技术和设备所需要花费的大量外汇,而且打破了信息安全PLC产品完全依赖国外的被动局面。安全可信PLC的研制和应用,需要一定的研发和硬件成本,安全可信PLC的应用相比非可信设备会在一定程度上带来成本的增加。但同时,安全可信PLC的应用可减少对其他安全设备的投资,考虑到可信计算具备更好的安全防护有效性及合规价值,因此安全可信PLC的应用是具有经济可行性的。