不同安全等级的工业网络隔离方法及装置
技术领域
本发明涉及一种工业网络安全技术,尤其涉及一种不同安全等级的工业网络隔离方法及装置。
背景技术
随着工业自动化控制的迅速发展,愈来愈多的工业企业使用其内部(或专用)网络将其生产过程专用设备或工业智能设备互联在一起,形成工业生产系统网络,工业生产系统网络的安全等级要求极高。而为了更好地监控和管理工业生产系统网络,需要将系统中生产过程专用设备或工业智能设备的相关数据采集并传递至外部的工业管理网络,工业管理网络一般为外网,其安全等级相对较低。
安全等级低的网络到高安全等级的网络之间需要进行通讯隔离,第一代现有技术通过物理隔绝,由人工使用U盘等介质进行数据传递,确保两者无法直接连通,避免黑客对工业生产系统网络进行操纵和控制。但是该方式效率太低。
为了解决这个问题,第二代现有技术引入了网闸的概念。
网闸是使用带有多种控制功能的固态开关读写介质,连接两个独立主机系统的信息安全设备。由于两个独立的主机系统通过网闸进行隔离,使系统间不存在通信的物理连接、逻辑连接及信息传输协议,不存在依据协议进行的信息交换,而只有以数据文件形式进行的无协议摆渡。因此,网闸从逻辑上隔离、阻断了对内网具有潜在攻击可能的一切网络连接,使外部攻击者无法直接入侵、攻击或破坏内网,保障了内部主机的安全。
尽管作为物理安全设备,安全网闸提供的高安全性是显而易见的,但是由于其工作原理上的特性,不可避免地决定了安全网闸存在一些缺陷:
首先,现有的安全网闸只支持静态数据交换,不支持交互式访问。而工业系统中的通讯规约是在TCP/IP之上的应用协议,80%的工业通讯规约都是问答式的,使用网闸无法实现通信握手。
其次,现有的安全网闸主要用在数据中心等典型的IT环境中,其结构复杂,成本较高,体积较大,耗电量高,对安装所在的机房环境有一定的要求。而工业网络设备的安装所在往往环境恶劣,经常位于生产线、工艺设备间甚至野外监控站点,空间小、供电不稳定(许多场所缺乏市电,通常依靠风力或太阳能发电)。现有安全网闸设备体积大、功耗大,不适用于工业环境。
随着现有技术的发展,工业网络更多采用包含组态软件的工业网关实现对工业生产系统网络中数据点的采集,通过对采集点的过滤和控制实现工业生产系统网络到工业管理网络之间的单向的数据隔离。然而,工业网关只能用工程的方式来实现工业网络的单向隔离,需要工程师去现场进行工程配置,进行完全隔离或部分隔离。其隔离效果完全依靠工程师的认知来配置,如果人为发生失误,则无法达到希望的隔离效果。或者,如果有第三方如后期的维护工程师误操作修改配置,则隔离规则会发生改变。另外不同的组态软件使用的方法也各不相同,对单向隔离这种非常规操作没有一定经验的工程师往往无法胜任。
基于上述缺陷,工业系统更需要符合其自身需求、能满足工业系统特性的可以标准化、产品化的工业安全隔离网闸,从而用产品的方式取代工程的方式实现工业网络中不同安全等级间网络中的安全隔离。
发明内容
本发明的目的在于提供一种不同安全等级的工业网络隔离方法及装置,用于控制工业网络中,第一网络(如高安全等级的工业网络)的数据能够可选择地传输到第二网络(如低安全等级的管理网络),第二网络中反馈的数据能自动剔除其中命令和/或数据报文,而保留网络通信的问答机制,保障工业网络正常通信的同时,确保第一网络的数据安全性。
为解决上述技术问题,本发明的实施方式提供了一种不同安全等级的工业网络隔离装置,包括:
软硬件各自独立的第一主机系统和第二主机系统,所述第一主机系统与第一网络连通,所述第二主机系统与第二网络连通;
所述第一主机系统和第二主机系统之间通信连接;所述第一主机系统包括第一点表和第二点表;所述第一点表用于存储第一网络中各待采集的遥测和遥信数据点的配置和/或待接收遥控和遥调命令的数据点的配置,所述配置至少包括各数据点的设备地址和数据类型;所述第二点表用于存储需转发给所述第二主机系统的各遥测和遥信数据点的配置和待从所述第二主机系统接收遥控和遥调命令数据点的配置;所述配置至少包括需转发的各遥测和遥信的数据点数据在所述第一主机系统的第一存储位置(寄存器地址)和数据类型、待接收的各遥控和遥调命令数据在所述第二主机系统的第二存储位置(寄存器地址)和数据类型;
所述第二主机系统包括第三点表和第四点表;所述第三点表用于存储从所述第一主机系统采集的各遥测和遥信数据点的配置和需返回到所述第一主机系统的遥控和遥调命令数据点配置,所述配置至少包括所采集的各遥测和遥信数据在所述第一主机系统的第二存储位置(寄存器地址)和数据类型、需转发的各遥测和遥信命令数据在所述第二主机系统的第三存储位置(寄存器地址)和数据类型;所述第四点表用于存储从所述第二网络接收的数据点的配置和向所述第二网络转发遥测和遥信数据点的配置,所述配置至少包括所接收的数据点数据在所述第二主机系统的第四存储位置(寄存器地址)和数据类型,向所述第二网络转发的遥测和遥信数据点的数据在所述第二主机系统的第三存储位置(寄存器地址)和数据类型;
所述第一主机系统用于根据所述第一点表从所述第一网络的设备采集遥测和遥信数据,以及将遥控和遥调命令数据传输给所述第一网络的设备;根据所述第二点表将所采集的遥测和遥信数据转发到所述第二主机系统,以及从所述第二主机系统接收遥控和遥调数据;所述第二主机系统用于根据所述第三点表从所述第一主机系统接收遥测和遥信数据,以及将遥控和遥调命令数据发送到第一主机系统;根据所述第四点表将遥测和遥信数据发送给第二网络的设备,以及从第二网络接收遥控和遥调命令数据;
将所述第二点表和所述第三点表中数据类型为遥控和遥调的数据点的配置进行无效化处理,将其余数据类型的数据点依据所使用的工业通讯规约按正常方式进行预设配置;
在所述第一主机系统和所述第二主机系统本地固化所述第二点表和所述第三点表。
本发明的实施方式还提供了一种不同安全等级的工业网络隔离方法,包括本发明各实施方式中任一所述的不同安全等级的工业网络隔离装置,还包括以下步骤:
所述第一主机系统根据所述第一点表中各待采集数据点的设备地址从所述第一网络的设备采集遥测和遥信数据,将所采集到的需要转发的遥测和遥信数据存储在本地指定的转发存储位置(转发寄存器地址),所述指定的转发存储位置(转发寄存器地址)对应所述第二点表中保存的需转发给所述第二主机系统的各遥测和遥信数据点数据在所述第一主机系统的存储位置(寄存器地址);
所述第一主机系统将其转发存储位置的遥测和遥信数据转发到所述第二主机系统;
所述第二主机系统根据所述第三点表中保存的从所述第一主机系统采集各遥测和遥信数据点数据在所述第一主机系统的存储位置(寄存器地址),从所述第一主机系统接收其转发的遥测和遥信数据点数据;将所采集到的需要转发的遥测和遥信数据存储在本地指定的转发存储位置(转发寄存器地址),所述指定的转发存储位置(转发寄存器地址)对应所述第四点表中保存的向所述第二网络转发的各遥测和遥信数据点数据在所述第二主机系统的存储位置(寄存器地址);
所述第二主机系统将其转发存储位置的遥测和遥信数据转发到所述第二网络。
本发明实施方式相对于现有技术而言,通过设置各自独立的第一主机系统和第二主机系统,在第一主机系统和第二主机系统的输入端和输出端分别设置点表控制数据点数据的流通,并且固化第一主机系统和第二主机系统之间的通信点表设置,将控制第一主机系统和第二主机系统之间通信的第二点表和第三点表中数据类型为遥控和遥调的数据点的配置进行无效化处理,将其余数据类型的数据点依据所使用的工业通讯规约按正常方式进行预设配置,使得本发明的单向隔离装置在数据链路上自动隔绝第二网络到第一网络的遥调和遥控工业数据,从而第一网络(如高安全等级的工业网络)的数据能够可选择地传输到第二网络(如低安全等级的管理网络),第二网络中反馈的数据能自动剔除其中命令和/或数据报文,而保留网络通信的问答机制,保障工业网络正常通信的同时,确保第一网络的数据安全性。
并且,通过在第一主机系统和第二主机系统本地固化第二点表和第三点表,从而从使用上,本发明的单向隔离装置可以作为一台设备来进行配置,即只需要分别在第一网络侧和第二网络侧进行一次配置即可。不会增加用户的使用复杂度,提高用户的使用体验。
作为进一步改进,所述将第二点表和所述第三点表中数据类型为遥控和遥调的数据点的配置进行无效化处理至少包括:
将所述数据类型为遥控和遥调的各数据点的配置中存储位置予以空置,或者将存储位置设置为不可识别码;或者将存储位置设置为不可识别地址。
作为进一步改进,在所述第一主机系统和所述第二主机系统本地固化所述第二点表和所述第三点表包括:通过本地烧录固化所述第二点表和所述第三点表;或者,通过加密设置固化所述第二点表和所述第三点表。
作为进一步改进,所述第一主机系统与所述第一网络之间、所述第一主机系统与所述第二主机系统之间、所述第二主机系统与所述第二网络之间采用相同或不同的通信协议;所述通信协议至少包括:标准工业通信协议、标准公共TCP/IP网络通信协议、和/或私有工业通信协议。
作为进一步改进,所述第一主机系统与所述第二主机系统之间的通信采用私有工业通信协议、或经修改的标准工业通讯协议、或已加密未经授权无法更改点表的标准通讯协议。
作为进一步改进,所述第二主机系统与所述第二网络之间通过TCP/IP网口连接,所述第一主机系统与所述第二主机系统之间通过串口通讯链路连接;
所述第二主机系统还包括:
第二协议转换单元,用于根据所述第二主机系统与所述第二网络之间的TCP/IP网络协议对从所述第二网络收到的数据报文进行解析;根据已知的报文格式将解析得到的数据报文中格式对应遥信、遥测、遥控和遥调的数据格式化;根据所述第一主机系统与所述第二主机系统之间的串口通信协议对格式化后的数据报文进行协议转换,得到符合所述串口通信协议格式的数据报文供输出到所述第一主机系统。
作为进一步改进,所述协议转换单元根据已知的报文格式将解析得到的数据报文中格式对应遥信、遥测、遥控和遥调的数据格式化包括:
将所述解析得到的数据报文中对应遥信、遥测、遥控和/或遥调的数据位上数据点位空置;或者
删除所述遥控和遥调报文中除报头和报尾及与通讯有关的内容部分的其余数据。
通过根据报文的通讯规约格式将所述报文格式中对应遥信、遥测、遥控和/或遥调的数据格式化,使得反向报文(即低安全网络到高安全工业网络的报文)中的数据和命令能够被自动过滤,而报文中的应答信息得以保留,从在保留网络通信的应答机制的同时,隔绝了其余遥信、遥测、遥控和/或遥调数据的反向传输,在数据链路隔绝的同时,进一步借助协议的解析和转换,在不增加通信负担的同时,深度保障了高安全等级工业网络中的数据能向低安全网络单向传输。
作为进一步改进,所述第一点表、第二点表、第三点表和第四点表中数据点的配置还包括数据点名称或含义;
所述第二点表和第三点表中所述数据点名称可修改设置。
作为进一步改进,所述第一主机系统还包括:
第一协议转换单元,用于根据所述第一主机系统与第一网络之间采用的通信协议对从所述第一网络收到的数据报文进行解析,将解析得到的报文内容按照所述第一主机系统与第二主机系统之间采用的串口通信协议进行格式转换,得到符合所述串口通信协议格式的数据报文供输出到所述第二主机系统。
作为进一步改进,所述第一网络为高安全等级工业网络,所述第二网络为低安全等级网络;
所述高安全等级工业网络为工业生产网络,所述低安全等级网络为工业管理网络或其他非工业生产网络。
附图说明
图1是根据本发明第一实施方式的工业网络单向隔离装置结构图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明的各实施方式进行详细的阐述。然而,本领域的普通技术人员可以理解,在本发明各实施方式中,为了使读者更好地理解本申请而提出了许多技术细节。但是,即使没有这些技术细节和基于以下各实施方式的种种变化和修改,也可以实现本申请各权利要求所要求保护的技术方案。
本发明一较佳实施方式涉及一种不同安全等级的工业网络隔离装置,如图1所示,包括:软硬件各自独立的第一主机系统和第二主机系统,第一主机系统与第一网络连通,第二主机系统与第二网络连通。一般情况下,第一网络可以为高安全等级工业网络,比如工业生产网络,第二网络可以为低安全等级网络,比如工业管理网络或其他非工业生产网络。
所述第一主机系统和第二主机系统之间通信连接;所述第一主机系统包括第一点表和第二点表;所述第一点表用于存储第一网络中各待采集的遥测和遥信数据点的配置和/或待接收遥控和遥调命令的数据点的配置,所述配置至少包括各数据点的设备地址和数据类型,数据类型一般可以包括遥信数据、遥测数据、遥控数据、遥调数据等;所述第二点表用于存储需转发给所述第二主机系统的各遥测和遥信数据点的配置和待从所述第二主机系统接收遥控和遥调命令数据点的配置;所述配置至少包括需转发的各遥测和遥信的数据点数据在所述第一主机系统的存储位置(如寄存器地址)和数据类型、待接收的各遥控和遥调命令数据在所述第二主机系统的存储位置(如寄存器地址)和数据类型;为了指代清晰,方便后续描述,将需转发的各遥测和遥信的数据点数据在所述第一主机系统的存储位置称为第一存储地址,将待接收的各遥控和遥调命令数据在所述第二主机系统的第二存储位置称为第二存储地址。
所述第二主机系统包括第三点表和第四点表;所述第三点表用于存储从所述第一主机系统采集的各遥测和遥信数据点的配置和需返回到所述第一主机系统的遥控和遥调命令数据点配置,所述配置至少包括所采集的各遥测和遥信数据在所述第一主机系统的第二存储位置(寄存器地址)和数据类型、需转发的各遥测和遥信命令数据在所述第二主机系统的第三存储位置(寄存器地址)和数据类型;所述第四点表用于存储从所述第二网络接收的数据点的配置和向所述第二网络转发遥测和遥信数据点的配置,所述配置至少包括所接收的数据点数据在所述第二主机系统的第四存储位置(寄存器地址)和数据类型,向所述第二网络转发的遥测和遥信数据点的数据在所述第二主机系统的第三存储位置(寄存器地址)和数据类型;
所述第一主机系统用于根据所述第一点表从所述第一网络的设备采集遥测和遥信数据,以及将遥控和遥调命令数据传输给所述第一网络的设备;根据所述第二点表将所采集的遥测和遥信数据转发到所述第二主机系统,以及从所述第二主机系统接收遥控和遥调数据;所述第二主机系统用于根据所述第三点表从所述第一主机系统接收遥测和遥信数据,以及将遥控和遥调命令数据发送到第一主机系统;根据所述第四点表将遥测和遥信数据发送给第二网络的设备,以及从第二网络接收遥控和遥调命令数据;
将所述第二点表和所述第三点表中数据类型为遥控和遥调的数据点的配置进行无效化处理,将其余数据类型的数据点依据所使用的工业通讯规约按正常方式进行预设配置;
在所述第一主机系统和所述第二主机系统本地固化所述第二点表和所述第三点表。
本发明实施方式相对于现有技术而言,通过设置各自独立的第一主机系统和第二主机系统,在第一主机系统和第二主机系统的输入端和输出端分别设置点表控制数据点数据的流通,并且固化第一主机系统和第二主机系统之间的通信点表设置,将控制第一主机系统和第二主机系统之间通信的第二点表和第三点表中数据类型为遥控和遥调的数据点的配置进行无效化处理,将其余数据类型的数据点依据所使用的工业通讯规约按正常方式进行预设配置,使得本发明的单向隔离装置在数据链路上自动隔绝第二网络到第一网络的遥调和遥控工业数据,从而第一网络(如高安全等级的工业网络)的数据能够可选择地传输到第二网络(如低安全等级的管理网络),第二网络中反馈的数据能自动剔除其中命令和/或数据报文,而保留网络通信的问答机制,保障工业网络正常通信的同时,确保第一网络的数据安全性。
并且,通过在第一主机系统和第二主机系统本地固化第二点表和第三点表,从而从使用上,本发明的单向隔离装置可以作为一台设备来进行配置,即只需要分别在第一网络侧和第二网络侧进行一次配置即可。不会增加用户的使用复杂度,提高用户的使用体验。
作为进一步改进,所述将第二点表和所述第三点表中数据类型为遥控和遥调的数据点的配置进行无效化处理至少包括:
将所述数据类型为遥控和遥调的各数据点的配置中存储位置予以空置,或者将存储位置设置为不可识别码;或者将存储位置设置为不可识别地址。
作为进一步改进,在所述第一主机系统和所述第二主机系统本地固化所述第二点表和所述第三点表包括:通过本地烧录固化所述第二点表和所述第三点表;或者,通过加密设置固化所述第二点表和所述第三点表。
作为进一步改进,所述第一主机系统与所述第一网络之间、所述第一主机系统与所述第二主机系统之间、所述第二主机系统与所述第二网络之间采用相同或不同的通信协议;所述通信协议至少包括:标准工业通信协议、标准公共TCP/IP网络通信协议、和/或私有工业通信协议。
作为进一步改进,所述第一主机系统与所述第二主机系统之间的通信采用私有工业通信协议、或经修改的标准工业通讯协议、或已加密未经授权无法更改点表的标准通讯协议。
作为进一步改进,所述第二主机系统与所述第二网络之间通过TCP/IP网口连接,所述第一主机系统与所述第二主机系统之间通过串口通讯链路连接;
所述第二主机系统还包括:
第二协议转换单元,用于根据所述第二主机系统与所述第二网络之间的TCP/IP网络协议对从所述第二网络收到的数据报文进行解析;根据已知的报文格式将解析得到的数据报文中格式对应遥信、遥测、遥控和遥调的数据格式化;根据所述第一主机系统与所述第二主机系统之间的串口通信协议对格式化后的数据报文进行协议转换,得到符合所述串口通信协议格式的数据报文供输出到所述第一主机系统。
作为进一步改进,所述第二协议转换单元根据已知的报文格式将解析得到的数据报文中格式对应遥信、遥测、遥控和遥调的数据格式化包括:
将所述解析得到的数据报文中对应遥信、遥测、遥控和/或遥调的数据位上数据点位空置;或者
删除所述遥控和遥调报文中除报头和报尾及与通讯有关的内容部分的其余数据。
通过根据报文的通讯规约格式将所述报文格式中对应遥信、遥测、遥控和/或遥调的数据格式化,使得反向报文(即低安全网络到高安全工业网络的报文)中的数据和命令能够被自动过滤,而报文中的应答信息得以保留,从在保留网络通信的应答机制的同时,隔绝了其余遥信、遥测、遥控和/或遥调数据的反向传输,在数据链路隔绝的同时,进一步借助协议的解析和转换,在不增加通信负担的同时,深度保障了高安全等级工业网络中的数据能向低安全网络单向传输。
作为进一步改进,所述第一点表、第二点表、第三点表和第四点表中数据点的配置还包括数据点名称或含义;
所述第二点表和第三点表中所述数据点名称可修改设置。
作为进一步改进,所述第一主机系统还包括:
第一协议转换单元,用于根据所述第一主机系统与第一网络之间采用的通信协议对从所述第一网络收到的数据报文进行解析,将解析得到的报文内容按照所述第一主机系统与第二主机系统之间采用的串口通信协议进行格式转换,得到符合所述串口通信协议格式的数据报文供输出到所述第二主机系统。
本发明第二实施方式提供了一种不同安全等级的工业网络隔离方法,包括第一实施方式中任一所述的不同安全等级的工业网络隔离装置,还包括以下步骤:
所述第一主机系统根据所述第一点表中各待采集数据点的设备地址从所述第一网络的设备采集遥测和遥信数据,将所采集到的需要转发的遥测和遥信数据存储在本地指定的转发存储位置(转发寄存器地址),所述指定的转发存储位置(转发寄存器地址)对应所述第二点表中保存的需转发给所述第二主机系统的各遥测和遥信数据点数据在所述第一主机系统的存储位置(寄存器地址);
所述第一主机系统将其转发存储位置的遥测和遥信数据转发到所述第二主机系统;
所述第二主机系统根据所述第三点表中保存的从所述第一主机系统采集各遥测和遥信数据点数据在所述第一主机系统的存储位置(寄存器地址),从所述第一主机系统接收其转发的遥测和遥信数据点数据;将所采集到的需要转发的遥测和遥信数据存储在本地指定的转发存储位置(转发寄存器地址),所述指定的转发存储位置(转发寄存器地址)对应所述第四点表中保存的向所述第二网络转发的各遥测和遥信数据点数据在所述第二主机系统的存储位置(寄存器地址);
所述第二主机系统将其转发存储位置的遥测和遥信数据转发到所述第二网络。
本领域的普通技术人员可以理解,上述各实施方式是实现本发明的具体实施例,而在实际应用中,可以在形式上和细节上对其作各种改变,而不偏离本发明的精神和范围。