黄勇丨作者

北京圣博润高新技术股份有限公司

引言:

我们在设计工控安全产品、实施工控安全项目的同时,更要着重考虑工控网络的特性,其中产品的“安全性”、“可靠性”和“可用性”是重中之重。这里所提的“安全性”是指工控安全产品和体系所提供的“保障工业控制系统的运行,防止非法行为、攻击和病毒的侵害”。

“可靠性”(reliability):按照国家标准GB/T2900.13-2008:可靠性是指:产品在规定的条件下、在规定的时间内完成规定的功能的能力。在计算机领域,一般使用平均无故障时间(MBTF)评价可靠性。提高可靠性需要从产品硬件设计、元器件标准、软件架构设计、软件质量多个角度来实现。

“可用性”(availability):按照国家标准GB/T 2900.13-2008:可用性是指:在要求的外部资源得到保证的前提下,产品在规定的条件下和规定的时刻或时间区间内处于可执行规定功能状态的能力。一般以系统或者局部故障后对业务的影响最小化作为评价依据,可用平均修复时间(MTRF)衡量。

按照国家《GBT22239-2019信息安全技术网络安全等级保护基本要求》,工业控制系统通常对可靠性、可用性要求非常高,在对工业控制系统依照等级保护进行防护的时候要满足“对于高可用性的控制系统,安全措施失效不应中断基本功能等”。因此工控安全产品设计上应该着重考虑如何实现当设备故障、软件故障、操作错误时,保障网络的可用性。提高工控安全产品的高可用性,一般来说有以下几个途径:

尽量采用旁路式部署

旁路部署好处在于对于现有网络的影响最小,但是旁路部署仅仅限于“告警和审计”,并不能实现实时的防护。

采用双机热备技术

当一台设备出现故障时,另外一台设备自动接替工作。

采用bypass(网络继电器)技术

Bypass技术可以实现当电源故障、系统故障时,线路自动旁路通过。bypass技术与双机热备相比,它属于“安装在盒子内的装置”,所以成本要比需要“至少两个盒子”的双机热备技术低,而且布线简单,适用范围更为广泛。Bypass一般按照控制方式或者触发方式区分,分为以下两个方式:

1.通过电源触发:断电情况下,网络继电器进入bypass状态保持网络通讯正常。

2.通过软件控制:设计用于与网络继电器通讯的专用进程,自动保持与网络继电器的心跳信号。当系统出现死机时,该进程也会被系统关闭,那么它与网络继电器通讯被中断。这时网络继电器自动进入bypass状态,数据不再由软件转发,而是直接连通。但是软bypass技术也有其局限性,它通常是当设备断电、系统死机时触发bypass。如果网络故障来自于系统其他与Bypass无关的进程、或者配置错误,现有的bypass技术是不起作用的。

基于现有的bypass技术,我们开发了检测芯片来实现更高级别的可用性。检测芯片是建立在已有的bypass基础上,实现进程绑定和通讯检测等功能,不仅仅是失电和系统级故障,而且实现进程识别和“双重判断原则”的通讯检测。

其逻辑结构如下:

检测芯片采用多种心跳信号

每种心跳信号可以设置其权重。根据需要,关键的系统进程和用户进程植入检测芯片的心跳软件,定时向检测芯片发送心跳信号。并且芯片可以设置阈值,当心跳信号与权重达到阈值后,检测芯片向Bypass发送命令。该方法将关键进程与bypass做绑定,实现了对所关注的进程的检测。心跳权值方式能够体现不同进程的重要性,从而实现正确判断。

检测芯片模拟并检测工控流量通过性

检测芯片可以设置多个“监测点”。每个监测点涉及源IP、目标IP、工控协议等参数。检测芯片根据监测点的参数,模拟出工控协议流量,并且接收从系统返回的流量,来判断系统是否允许该流量通过。当系统出现软件故障或者策略配置错误,那么该流量无法通过,则检测芯片会发出bypass命令。

“监测点”可以视之为“对安全策略的测试”

防止安全策略配置错误或者从集中管理上下发错误。它客观地起到了“双重判断”原则,防止意外操作失误。

综上所述,采用检测芯片能够大幅度提高安全设备的“可用性”,不仅仅解决硬件故障问题,而且可以更深入地解决软件故障和配置错误,从而满足工控网络的严苛需求。

声明:本文来自工业菜园,版权归作者所有。文章内容仅代表作者独立观点,不代表安全内参立场,转载目的在于传递更多信息。如有侵权,请联系 anquanneican@163.com。