首页 > 威努特工业控制系统网络安全---基于OPC协议的工控网络系统防护浅析

威努特工业控制系统网络安全---基于OPC协议的工控网络系统防护浅析

来源:网络收集  

基于 OPC 协议的工控网络系统防护浅析 1. 协议概述 提到 OPC 协议, 大家想到最多的就是 OPC Classic 3.0, 实际上现在 OPC 协议有两个大类, 一种是基于微软 COM/DCOM 技术的“Classic”,另一种是基于 Web service 的 OPC UA。

前者 在 DCOM 协议之上,诞生较早,已广泛应用在各种工业控制系统现场,成为工业自动化领 域的事实标准。

后者与前者比出生较晚,但在设计时考虑了安全因素,有了加密机制,不过 目前应用范围较小。

本文主要讨论的是前者在工控系统中的防护。

微软的 DCOM 协议是在网络安全问题被广泛认识之前设计的, 而基于 DCOM 协议的 OPC Classic 基本没有增加任何安全相关的特性, 几乎所有著名的工业自动化软件(包括 HMI 软件、 先进控制与优化软件、监控平台软件、综合集成软件等)都是基于 windows 平台开发,都采用 或部分采用了 OPC 技术,所以对使用 OPC 协议进行通信的工控系统进行防护也变得复杂和 困难。

2. 动态端口 与大多数应用层协议不同,OPC 的基础协议 DCOM 协议使用动态端口机制,在真正建 立数据连接之前通讯双方还需要协商需要使用的端口。

示例图如下:

图1

OPC 客户端 5568 5568 5568 5568 5568 5568 5568 5568 5568 5568 5568 5568 5568 5568 5568 5568 SYN SYN ACK ACK DCERPC Bind DCERPC Bind ack IOXIDR ServerAlive2 request IOXIDR ServerAlive2 response SYN SYN ACK ACK DCERPC Bind DCERPC Bind ack DCERPC AUTH3 ISystemActivator RemoteCreateInstance request TCP ACK ISystemActivator RemoteCreateInstance response 此回复报文包含新端口1118 5569 5569 5569 5569 SYN SYN ACK ACK 使用此连接开始后续OPC数据传输 OPC 服务器 135 135 135 135 135 135 135 135 135 135 135 135 135 135 135 135 1118 1118 1118 1118 图 1 OPC 动态端口协商过程 上图中,OPC客户端使用5568作为源端口首先向OPC服务器的135端口发起 连 接 , 连 接 成 功 后 再 经 过 OPC 服 务 器 分 配 新 端 口 1118 , 并 通 过 接 口 ISystemActivator的方法RemoteCreateInstance的应答报文返回给客户端, 之后客户 端使用5569作为源端口向服务器的 1118端口发起新的连接用来后面的真正数据 的传输。

3. 面临的安全威胁 基于 OPC 协议的工控网络系统面临各种各样的威胁。

在“两网”融合的大背景下,工

图2

业控制系统的隔离性被打破,面临来自网络的威胁空前加剧。

无用端口的开放、工业软件依 赖的操作系统本身存在的安全漏洞、 工业协议本身安全性的缺失等等都将给工业控制网络带 来巨大的安全隐患。

在真正接入到企业管理网、互联网之前,基于 OPC 协议的工业控制系 统必须加入相应的安全设备进行防护,才能提高自身网络的安全。

由于 OPC 协议不同于传 统的 IT 应用层协议,对 OPC 协议的解析深度决定了安全产品在工业控制系统安全防护中的 真正作用。

4. 防护方案简介 4.1. 传统 IT 系统防火墙 如果在基于 OPC 协议的工业控制系统中安装传统 IT 系统防火墙(以下简称: 传统防火墙) 进行防护,由于传统防火墙不支持 OPC 协议的任何解析,为了能够保证 OPC 业务的正常使 用,不得不开放 OPC 服务器的所有可开放端口,而 OPC 服务器可以分配的端口号范围很广如果 OPC 服务器安装在 Windows Server 2008,超过 16000 个端口号都可能被使用,早期的 Windows 版本则超过了 48000 个端口号。

APC 办公电脑 OPC客户端 配置策略时,需要开放生产 控制网所有端口以保证OPC客 户端可以正常连接OPC服务器 传统防火墙 企业管理网 生产控制网 操作员站 工程师站 OPC Server PLC RTU 图 2 传统防火墙部署示意图

图3

上图中传统防火墙安装在企业管理网和生产控制网的边界进行防护,由于 OPC 服务器 可能使用任何可使用的端口来进行真正的数据连接, 而具体使用的端口号在响应客户端请求 的应答报文中。

传统防火墙无法识别出 OPC 服务器具体使用的端口号,为确保 OPC 客户端 可以正常连接 OPC 服务器, 防火墙需要配置全部端口可访问, 这样的传统防火墙形同虚设, 生产控制网的门口大开,几乎完全暴露在攻击者面前。

4.2. 端口防护工业防火墙 区别与传统防火墙, 近年来发展起来的专门用于防护工业控制现场的工业级防火墙基本 支持了 OPC 的深度解析,但依据解析深度的不同,在 OPC 协议为基础的网络中,工业防火 墙的防护能力也有所不同。

对 OPC 进行简单解析的工业防火墙可以跟踪 OPC 连接建立的动态端口,最小化的开放工业 控制网络的端口。

如下图: APC 办公电脑 OPC客户端 配置策略时,只需要放开OPC 服务器默认的135端口,可动 态开放真正的OPC数据连接 端口防护工业防火墙 企业管理网 生产控制网 操作员站 工程师站 OPC Server PLC RTU 图 3 端口防护级工业防火墙部署示意图 端口防护级工业防火墙同样部署在企业生产网和生产控制网的边界, 此时配置策略只需 要配置开放 OPC 服务器的 135 端口,当 OPC 客户端与服务器建立连接时,端口防护级防火 墙跟踪并解析 OPC 服务器与 OPC 客户端协商出来的动态端口,然后自动将动态端口加入到 防火墙的开放端口中,从而最小化开放生产控制网的端口,与传统防火墙相比,防护能力有 了进一步提升。

图4

4.3. 指令防护工业防火墙 端口防护工业防火墙相比传统防火墙虽然提升了防护能力, 但攻击者仍然可以通过建立 的数据通道发送恶意的 OPC 操作指令,所以仅仅做到动态端口跟踪还无法保证基于 OPC 协 议的工业控制系统的安全。

所以对 OPC 协议的进一步解析, 催生了指令级防护工业防火墙, 这也是目前市面上主流的工业防火墙。

OPC 协议的深度解析要求也加入到了工业防火墙国家 标准的草稿中(此标准尚未正式发布)。

下图是指令级防护工业防火墙的典型部署: APC 办公电脑 OPC客户端 不仅可动态跟踪OPC的数据连接, 还可对OPC的操作指令进行白名单 防护,防护级别高,防护更精准 指令防护工业防火墙 企业管理网 生产控制网 操作员站 工程师站 OPC Server PLC RTU 图 4 指令级防护工业防火墙部署图 部署在企业管理网和生产控制网边界处的指令级工业防火墙,深度解析 OPC 协议到指 令级别,不仅可以跟踪 OPC 服务器和 OPC 客户端之间协商的动态端口,最小化开放生产控 制网的端口,还对 OPC 客户端与 OPC 服务器之间传输的指令请求进行实时检测,对于不符 合安全要求的操作指令进行拦截和报警,极大提升了基于 OPC 协议的工业控制系统的网络 安全。

除了做到指令防护外,还有更人性化一点的工业防火墙内置只读模板,满足使用 OPC 协议的大部分业务场景,因为使用 OPC 协议的工业控制现场一般只是用来采集数据,使用 只读模板来防护完全满足现场安全要求。

工业防火墙内置的只读模板一键部署, 安全、 方便, 降低管理员维护成本,有效保障工业控制系统数据不被恶意篡改。

图5

4.4. 优缺点比较 产品 传统防火墙 端口防护工 业防火墙 指令防护工 业防火墙 功能 无法深度解析 OPC 协议 只能跟踪 OPC 协议 动态端口 深度解析 OPC 协议 到指令级 安全性 低 中 高 实现难度 低 中 高 内置只读 不支持 不支持 有些支持 比较符合工业生产 网边界防护的需求, 备注 基本不适合部署在 工业生产网的边界 5. 结论 随着国家网络安全法的颁布和国家“中国制造 2025”战略的要求,逐渐打破物理隔离的 工业生产网络对安全的需求越来越迫切。

对于生产现场有 OPC 协议的企业来讲,综合自身 实力选择适合自己的安全防护产品显得越来越重要。

而对 OPC 协议的解析到指令级还不够, 后续还需要深度解析到 OPC 协议操作指令所操作的对象是否在安全范围内,对操作对象的 值进行安全检测,确保 OPC 协议发送的每一个字节都是可识别、可控制、安全无害的。

图6
您可能感兴趣。。。
All Rights Reserved 一点知识网
所有数据来自网络,数据只供学习参考 点击这里给我发消息