CN104660593B - Opc安全网关数据包过滤方法 - Google Patents
Opc安全网关数据包过滤方法 Download PDFInfo
- Publication number
- CN104660593B CN104660593B CN201510066430.8A CN201510066430A CN104660593B CN 104660593 B CN104660593 B CN 104660593B CN 201510066430 A CN201510066430 A CN 201510066430A CN 104660593 B CN104660593 B CN 104660593B
- Authority
- CN
- China
- Prior art keywords
- opc
- rule
- communication
- client
- security
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/02—Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
- H04L63/0227—Filtering policies
- H04L63/0236—Filtering by address, protocol, port number or service, e.g. IP-address or URL
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/02—Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
- H04L63/0227—Filtering policies
- H04L63/0263—Rule management
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1408—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Business, Economics & Management (AREA)
- General Business, Economics & Management (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种OPC安全网关数据包过滤方法,用于解决现有工业控制系统安全防护差的技术问题。技术方案是将OPC安全网关部署在企业信息网与工业控制网之间的网络链路上,对经过OPC安全网关的OPC数据包进行检查,并对OPC客户端进行安全认证;利用OPC通信规则检查OPC客户端与OPC服务器之间的通信是否符合安全策略;对于一次OPC客户端与OPC服务器之间的通信,OPC安全网关在转发数据包时,按照安全检查规则进行处理,禁止违反安全规则的OPC数据包进入工业控制系统。本发明通过部署OPC安全网关,实现了对工业控制系统进行安全防护,过滤掉恶意的OPC通信操作及其数据包,提高了工业控制系统安全防护能力。
Description
技术领域
本发明属于网络信息安全领域,具体涉及一种OPC安全网关数据包过滤方法。
背景技术
在工业控制领域中,为了实现工业控制系统的应用软件和硬件产品之间的互操作性,需要在应用层面上解决系统集成和数据通信问题。为此,国际上成立了一个称为OPC基金会的国际组织,制定了OPC标准,OPC是Object Linking and Embedding for ProcessControl的简称。现在,OPC基金会的会员已超过220家,包括世界上所有主要的自动化控制系统、仪器仪表及过程控制系统的公司,因此OPC标准成为事实上的国际标准。
OPC标准的核心是微软公司的组件对象模型COM和分布式组件对象模型DCOM技术,它是一种基于客户/服务器模式的通信协议,定义了OPC客户端与OPC服务器之间的通信协议和数据包格式,包括一整套相关的接口、属性和方法,在Windows应用程序和现场过程控制设备之间建立起一个桥梁,使两者很容易实现系统集成和数据通信。因此,OPC标准已成为工业控制系统集成和互连的首选方案,绝大多数的工业控制设备和应用软件都支持OPC标准,否则就会被淘汰。
随着工业和信息化的深度融合,在电力、能源、化工、水利、制药、污水处理、石油天然气、交通运输以及航空航天等工业企业中,通常建有企业信息网和工业控制网两种网络系统,通过OPC协议,实现企业信息网与工业控制网的互连,用户使用企业信息网中的计算机能够远程地监控工业控制网中的工业设备,并获取相应的生产数据。
另一方面,在企业信息网与工业控制网的互连中,也存在着一些安全风险,企业信息网中常见的安全威胁被引入到工业控制网中,如网络病毒、黑客攻击以及恶意操作等,给工业控制网带来严重的信息安全问题,“震网”病毒事件就是典型的例子。
由于工业控制系统与普通信息系统在系统结构和通信协议上存在一些差异,现有的防火墙等网络安全产品并不能直接应用于工业控制系统中,需要研究和开发适合于工业控制系统的网络安全技术和产品,确保工业控制系统的信息安全。
发明内容
为了克服现有工业控制系统安全防护差的不足,本发明提供一种OPC安全网关数据包过滤方法。该方法将OPC安全网关部署在企业信息网与工业控制网之间的网络链路上,通过设置OPC安全网关的安全策略和通信规则,对经过OPC安全网关的OPC数据包进行检查;利用接口标识符、客户端IP地址、用户名、域名、主机名等特征字段对OPC客户端进行安全认证;利用OPC通信规则检查OPC客户端与OPC服务器之间的通信是否符合安全策略;对于一次OPC客户端与OPC服务器之间的通信,OPC安全网关在转发数据包时,按照安全检查规则进行检查和处理,禁止违反安全规则的OPC数据包进入工业控制系统。本发明通过部署和运行OPC安全网关,可以实现对工业控制系统进行安全防护,过滤掉恶意的OPC通信操作及其数据包,提高了工业控制系统安全防护能力。
本发明解决其技术问题所采用的技术方案:一种OPC安全网关数据包过滤方法,其特点是包括以下步骤:
步骤一、将OPC安全网关部署在企业信息网与工业控制网之间的网络链路上,通过设置OPC安全网关的安全策略和通信规则,对经过OPC安全网关的OPC数据包进行检查。
步骤二、建立OPC协议规范,包括OPC协议相关的特征字段,即接口标识符、客户端IP地址、用户名、域名和主机名。利用这些特征字段对OPC客户端进行安全认证,禁止不符合OPC协议规范的OPC客户端与OPC服务器进行通信。
步骤三、建立OPC通信规则,一条OPC通信规则定义如下:
Rule:{parameter1,parameter2,parameter3,……,parameter N:Action};
其中,Rule为通信规则名称;parameter1,2,3,…,N为参数名称,每个参数代表OPC通信的一个特征,如源IP、目的IP、源端口和目的端口;Action表示对符合该通信规则的通信所采取的动作,允许通过和禁止通过。
步骤四、对于一次OPC客户端与OPC服务器之间的通信,OPC安全网关在转发数据包时,按照下列安全检查规则进行检查和处理:
①首先依据OPC协议对该数据包进行特征识别,检查是否为OPC数据包,如果是则做下一步检查;否则禁止该数据包通过;
②根据OPC通信过程和动态端口解析方法,解析出动态分配的端口号以及其它的特征参数,为下一步检查做准备;
③依据OPC协议规范,对OPC客户端进行认证,禁止不符合OPC协议规范的数据包通过;
④依据OPC通信规则,对OPC数据包进行深度分析和检查,如果与通信规则集中的一条通信规则相符合,则执行该通信规则所规定的动作;如果与通信规则集中的任何一条通信规则都不符合,则禁止该数据包通过。
⑤将本次检查结果记录在日志中,供事后审计和追踪。
本发明的有益效果是:该方法将OPC安全网关部署在企业信息网与工业控制网之间的网络链路上,通过设置OPC安全网关的安全策略和通信规则,对经过OPC安全网关的OPC数据包进行检查;利用接口标识符、客户端IP地址、用户名、域名、主机名等特征字段对OPC客户端进行安全认证;利用OPC通信规则检查OPC客户端与OPC服务器之间的通信是否符合安全策略;对于一次OPC客户端与OPC服务器之间的通信,OPC安全网关在转发数据包时,按照安全检查规则进行检查和处理,禁止违反安全规则的OPC数据包进入工业控制系统。本发明通过部署和运行OPC安全网关,实现了对工业控制系统进行安全防护,过滤掉恶意的OPC通信操作及其数据包,提高了工业控制系统安全防护能力。
下面结合附图和具体实施方式对本发明作详细说明。
附图说明
图1是本发明OPC安全网关数据包过滤方法涉及的OPC安全网关部署示意图。
图2是本发明OPC安全网关数据包过滤方法的流程图。
具体实施方式
参照图1-2。本发明通过开发OPC安全网关来实施,OPC安全网关的核心是基于本发明的OPC数据包过滤系统,可采用软件或硬件方式来实现。在OPC安全网关部署和运行时,可通过一个远程控制台进行管理,远程控制台主要提供如下的功能:
1.远程控制台与OPC安全网关之间采用串口通信方式,并提供一个图形化用户界面,用于支持远程管理操作。
2.远程控制台提供了身份鉴别功能,用户必须输入正确的用户名和口令,并通过身份认证后才允许登录到系统中,执行管理操作,并允许合法的用户修改用户名和口令。
3.远程控制台提供了系统配置功能,包括建立OPC协议规范和OPC通信规则、配置系统运行环境参数以及其它的系统参数等,当OPC安全网关配置完成后,即可投入正常运行,还可以根据系统参数变化来调整系统配置。
4.远程控制台提供了安全监控功能,包括系统工作状态监控以及日志查看与审计等,通过安全监控功能来监控和评估系统的安全状态。
一、本发明所涉及的基本概念如下:
1.OPC数据包格式。
一个OPC数据包主要由三个部分组成:
(1)头部:用于定义不同类型的数据包,共有20种,不同类型的数据包用于执行不同的操作。OPC客户端向OPC服务器发送的数据包称为请求包,而OPC服务器向OPC客户端返回的数据包称为应答包。
(2)载荷:在不同类型的数据包中,用于传输相应的数据或参数。
(3)认证:用于对某种类型的数据包进行数据完整性认证,并非所有类型的数据包都需要数据认证部分。
2.OPC通信过程。
OPC通信过程主要分为两个阶段。
(1)OPC通信发起阶段。在发起阶段,OPC客户端向OPC服务器发起通信,获取服务器的基本信息和绑定信息,具体操作流程如下:
①OPC客户端使用随机端口(如14963)向OPC服务器135端口发起TCP连接请求,经过三次握手,建立TCP连接;
②OPC客户端使用bind请求包向OPC服务器发送绑定请求;绑定接口为IOXIDResolve,其接口标识符为:99fcfec4-5260-101b-bbcb-00aa0021347a;
③OPC服务器使用bind-ack应答包向OPC客户端返回绑定结果,其中包含有绑定是否成功的标志;
④OPC客户端调用接口IOXIDResolve中的serverAlive2函数,向OPC服务器请求执行远程过程调用;
⑤OPC服务器返回serverAlive2函数的执行结果,其中包括OPC服务器的基本信息和绑定信息。
(2)创建远程对象实例阶段。OPC客户端获取了OPC服务器的基本信息后,OPC客户端便可以向OPC服务器发起数据通信,创建远程对象实例,具体操作流程如下:
①OPC客户端使用14964端口向OPC服务器的135端口发起TCP连接请求,经过三次握手,建立TCP连接。
②OPC客户端使用bind请求包向OPC服务器发送绑定请求;绑定接口为IsystemActivator,其接口标识符为:000001a0-0000-0000-c000-000000000046;
③OPC服务器用bind-ack应答包向OPC客户端返回绑定结果,其中包含有绑定是否成功的标志;
④OPC客户端利用Auth3请求包向OPC服务器发送认证信息,包括OPC客户端的域名、用户名、主机名以及认证信息等;
⑤OPC客户端调用接口IsystemActivator的RemoteCreateInstance函数,向OPC服务器请求执行远程过程调用,创建OPC Server Browser对象实例;
⑥OPC服务器返回RemoteCreateInstance函数的执行结果,其中包括OPC服务器动态分配的端口号。
3.动态端口解析。
在OPC客户端与OPC服务器通信过程中,OPC服务器通过动态分配的端口号与OPC客户端进行通信。为了识别OPC客户端及其数据包,OPC安全网关必须能够解析出OPC服务器动态分配的端口号。根据OPC协议,当OPC服务器接收到OPC客户端发出的RemoteCreateInstance请求包后,便处理该请求包,然后向OPC客户端返回RemoteCreateInstance response应答包来通知处理结果,其中包含有动态分配的端口号。因此,通过解析Remote CreateInstance response应答包,便可以获得OPC服务器动态分配的端口号。其中,RemoteCreateInstance请求包和Remote CreateInstance response应答包都是OPC协议定义的方法。
4.OPC安全网关。
OPC安全网关是一种类似防火墙的网络安全设备,通常部署在企业信息网与工业控制网之间的网络链路上,企业信息网与工业控制网之间的数据通信都要经过OPC安全网关的转发才能实现,参见附图1。这样,通过设置OPC安全网关的安全策略和通信规则,对经过OPC安全网关的OPC数据包进行检查,禁止违反安全规则的OPC数据包进入工业控制系统。
二、根据OPC协议体系结构和工作机制,本发明具体包括以下步骤:
(1)将OPC安全网关部署在企业信息网与工业控制网之间的网络链路上,通过设置OPC安全网关的安全策略和通信规则,对经过OPC安全网关的OPC数据包进行检查。
(2)建立OPC协议规范。OPC协议规范是指能够标识OPC通信特征信息的一组规则,主要包括OPC协议相关的接口标识符、客户端IP地址、用户名、域名、主机名等特征字段。利用这些特征字段对OPC客户端进行安全认证,禁止不符合OPC协议规范的OPC客户端与OPC服务器进行通信。
(3)建立OPC通信规则。OPC通信规则用于检查OPC客户端与OPC服务器之间的通信是否符合安全策略。一条OPC通信规则定义如下:
Rule:{parameter1,parameter2,parameter3,……,parameter N:Action};
其中,Rule为通信规则名称;parameter1,2,3,…,N为参数名称,每个参数代表OPC通信的一个特征,如源IP、目的IP、源端口、目的端口等;Action表示对符合该通信规则的通信所采取的动作,这里定义了两种动作:允许通过和禁止通过。
(4)建立安全检查规则。对于一次OPC客户端与OPC服务器之间的通信,OPC安全网关在转发数据包时,按照下列安全检查规则进行检查和处理:
①首先依据OPC协议对该数据包进行特征识别,检查是否为OPC数据包,如果是则做下一步检查;否则禁止该数据包通过;
②根据OPC通信过程和动态端口解析方法,解析出动态分配的端口号以及其它的特征参数,为下一步检查做准备;
③依据OPC协议规范,对OPC客户端进行认证,禁止不符合OPC协议规范的数据包通过;
④依据OPC通信规则,对OPC数据包进行深度分析和检查,如果与通信规则集中的一条通信规则相符合,则执行该通信规则所规定的动作;如果与通信规则集中的任何一条通信规则都不符合,则禁止该数据包通过。这里执行的是“凡是不符合的都是禁止的”白名单安全策略;
⑤将本次检查结果记录在日志中,供事后审计和追踪。
Claims (1)
1.一种OPC安全网关数据包过滤方法,其特征在于包括以下步骤:
步骤一、将OPC安全网关部署在企业信息网与工业控制网之间的网络链路上,通过设置OPC安全网关的安全策略和通信规则,对经过OPC安全网关的OPC数据包进行检查;
步骤二、建立OPC协议规范,包括OPC协议相关的特征字段,即接口标识符、客户端IP地址、用户名、域名和主机名;利用这些特征字段对OPC客户端进行安全认证,禁止不符合OPC协议规范的OPC客户端与OPC服务器进行通信;
步骤三、建立OPC通信规则,一条OPC通信规则定义如下:
Rule:{parameter1,parameter2,parameter3,……,parameter N:Action};
其中,Rule为通信规则名称;parameter1,2,3,…,N为参数名称,每个参数代表OPC通信的一个特征;Action表示对符合该通信规则的通信所采取的动作,允许通过或禁止通过;
步骤四、对于一次OPC客户端与OPC服务器之间的通信,OPC安全网关在转发数据包时,按照下列安全检查规则进行检查和处理:
①首先依据OPC协议对该数据包进行特征识别,检查是否为OPC数据包,如果是则做下一步检查;否则禁止该数据包通过;
②根据OPC通信过程和动态端口解析方法,解析出动态分配的端口号以及其它的特征参数,为下一步检查做准备;
③依据OPC协议规范,对OPC客户端进行认证,禁止不符合OPC协议规范的数据包通过;
④依据OPC通信规则,对OPC数据包进行深度分析和检查,如果与通信规则集中的一条通信规则相符合,则执行该通信规则所规定的动作;如果与通信规则集中的任何一条通信规则都不符合,则禁止该数据包通过;
⑤将本次检查结果记录在日志中,供事后审计和追踪。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510066430.8A CN104660593B (zh) | 2015-02-09 | 2015-02-09 | Opc安全网关数据包过滤方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510066430.8A CN104660593B (zh) | 2015-02-09 | 2015-02-09 | Opc安全网关数据包过滤方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104660593A CN104660593A (zh) | 2015-05-27 |
CN104660593B true CN104660593B (zh) | 2017-10-10 |
Family
ID=53251296
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510066430.8A Expired - Fee Related CN104660593B (zh) | 2015-02-09 | 2015-02-09 | Opc安全网关数据包过滤方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104660593B (zh) |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106559382B (zh) * | 2015-09-25 | 2019-10-11 | 北京计算机技术及应用研究所 | 基于opc协议的安全网关防护系统访问控制方法 |
CN106936801B (zh) * | 2015-12-31 | 2020-09-18 | 北京网御星云信息技术有限公司 | 一种实现报文过滤的方法和装置 |
CN105704145B (zh) * | 2016-03-22 | 2019-01-01 | 英赛克科技(北京)有限公司 | 针对opc协议的安全防护方法和系统 |
CN105721499A (zh) * | 2016-04-07 | 2016-06-29 | 周文奇 | 一种工业通信安全网关的信息安全系统 |
CN105933350A (zh) * | 2016-07-01 | 2016-09-07 | 浪潮(北京)电子信息产业有限公司 | 一种串口协议的安全增强方法及装置 |
CN109104424B (zh) * | 2018-08-13 | 2021-03-23 | 浙江中控技术股份有限公司 | 一种opc通讯的安全防护方法及装置 |
CN109639701B (zh) * | 2018-12-25 | 2021-06-29 | 杭州迪普科技股份有限公司 | 基于opc协议的访问控制方法、装置、设备及存储介质 |
CN110113356A (zh) * | 2019-05-22 | 2019-08-09 | 北京明朝万达科技股份有限公司 | 一种数据监测方法及装置 |
CN112003861B (zh) * | 2020-08-24 | 2022-11-08 | 宝牧科技(天津)有限公司 | 一种用于opc da数据包低时延穿透安全设备的方法 |
CN112637143B (zh) * | 2020-12-08 | 2023-03-24 | 浙江国利网安科技有限公司 | 安全控制方法、装置及工控数据采集网关 |
CN112910910B (zh) * | 2021-02-08 | 2022-07-19 | 深圳融安网络科技有限公司 | Opcda协议报文处理方法、装置、设备以及存储介质 |
CN116318863B (zh) * | 2023-02-14 | 2023-10-13 | 深圳市利谱信息技术有限公司 | 一种opc工业安全网关系统 |
CN117579390B (zh) * | 2024-01-16 | 2024-04-05 | 四川高速公路建设开发集团有限公司 | 一种可变信息情报板安全防护方法、系统及存储介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101247391A (zh) * | 2007-12-28 | 2008-08-20 | 上海电力学院 | Opc安全代理系统及其代理方法 |
CN103401756A (zh) * | 2013-08-21 | 2013-11-20 | 北京华烽泰特科技有限公司 | 一种用于工业网络的安全防护系统 |
-
2015
- 2015-02-09 CN CN201510066430.8A patent/CN104660593B/zh not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101247391A (zh) * | 2007-12-28 | 2008-08-20 | 上海电力学院 | Opc安全代理系统及其代理方法 |
CN103401756A (zh) * | 2013-08-21 | 2013-11-20 | 北京华烽泰特科技有限公司 | 一种用于工业网络的安全防护系统 |
Non-Patent Citations (1)
Title |
---|
OPC Security White Paper #2;British Columbia Institute of Technology;《Digital Bond》;20071113;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN104660593A (zh) | 2015-05-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104660593B (zh) | Opc安全网关数据包过滤方法 | |
CN104767748B (zh) | Opc服务器安全防护系统 | |
CN104753936B (zh) | Opc安全网关系统 | |
EP1934827B1 (en) | System and methods for secure service oriented architecture | |
US9178705B2 (en) | Method and system for stateless validation | |
EP1414216A2 (en) | System and methodology providing automation security architecture in an industrial controller environment | |
CN104796261A (zh) | 一种网络终端节点的安全接入管控系统及方法 | |
CN103095701A (zh) | 开放流表安全增强方法及装置 | |
CN106559382A (zh) | 基于opc协议的安全网关防护系统访问控制方法 | |
CN103139058A (zh) | 一种物联网安全接入网关 | |
CN108259432A (zh) | 一种api调用的管理方法、设备及系统 | |
CN101238669A (zh) | 自动生成连接安全规则 | |
CN105791269B (zh) | 一种基于数据白名单的信息安全网关 | |
CN104994094B (zh) | 基于虚拟交换机的虚拟化平台安全防护方法、装置和系统 | |
CN103647772A (zh) | 一种对网络数据包进行可信访问控制的方法 | |
JP2002533792A (ja) | 信頼された内部ネットワ−クの作動を保護方法およびシステム | |
CN104202206A (zh) | 报文处理装置及方法 | |
CN109995720A (zh) | 异构设备集中管理方法、装置、系统、设备及介质 | |
CN101426008B (zh) | 一种基于回显的审计方法及系统 | |
CN102045309A (zh) | 一种用于防止计算机病毒攻击的方法和装置 | |
AU2018208696B2 (en) | Microkernel gateway server | |
Thatmann et al. | Towards a federated cloud ecosystem: Enabling managed cloud service consumption | |
Xu et al. | Formal modelling and analysis of XML firewall for service-oriented systems | |
SE506628C2 (sv) | Metod och anordning för signering och kryptering av information i ett tele- och datakommunikationssystem | |
CN102693595A (zh) | 一种基于csoi技术的云网开终端在线发票开具方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20171010 Termination date: 20200209 |