CN101159718B - 嵌入式工业以太网安全网关 - Google Patents
嵌入式工业以太网安全网关 Download PDFInfo
- Publication number
- CN101159718B CN101159718B CN2007100925322A CN200710092532A CN101159718B CN 101159718 B CN101159718 B CN 101159718B CN 2007100925322 A CN2007100925322 A CN 2007100925322A CN 200710092532 A CN200710092532 A CN 200710092532A CN 101159718 B CN101159718 B CN 101159718B
- Authority
- CN
- China
- Prior art keywords
- epa
- message
- module
- network
- security gateway
- 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
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
- Small-Scale Networks (AREA)
Abstract
本发明请求保护一种工业以太网安全网关,涉及工业控制网络安全技术。本发明在EPA安全网关中实现报文转发功能,安全功能,以及调度功能,实现连接现场设备层和过程监控层的边界保护。本安全网关采用路由功能和桥接功能,实现同一网段和不同网段之间的报文转发,采用多重安全保护,防止非法报文进入现场设备层,防止对EPA设备的非法操作,防止对EPA报文的非法篡改和破坏,鉴别是否有非法外部设备接入。微网段内数据报文的调度,保证整个系统内基于主时钟的时间同步;在某一时刻只允许一个设备发送数据报文,确保每个设备可以在确定的时间之内把信息发送出来,从而保证EPA网络的实时性。本发明适用于工业以太网的安全保护。
Description
技术领域
本发明涉及通信技术、网络安全技术和自动控制技术,具体是一种安全网关。
背景技术
随着技术的发展,信息化推动工业化进程的加速,越来越多的计算机技术和网络通信技术应用于工业控制系统,比如嵌入式技术、PCS、ERP、MES等企业信息自动化的应用;企业信息网络与Internet相连等。这些技术应用的同时,随之带来了控制网路的安全和实时性问题,如何保障工业控制系统的互连性、保密性、完整性、可用性和实时性则成了现代控制系统需要考虑的一个重要问题。
工业以太网EPA标准的推广导致越来越多的EPA相关产品开始进入实际应用领域,EPA作为一个开放系统,其潜在的安全风险是不可避免的。由于工业控制网络对实时性、可靠性、准确性的高要求,普通的安全网关均不能满足EPA网络应用的要求。
工业以太网EPA网络有其自身的特点,如向IEEE注册分配了特定值(0x88BC)标识EPA报文,在MAC层与网络层之间定义了EPA通信调度管理实体,定义了应用层服务与协议规范等。目前应用于工业现场的安全网关存在着不能很好的兼容EPA报文,对工业现场设备的各种安全威胁不能提供很好的安全保护,不能提供整个EPA系统内的时间同步,不能对接收的EPA数据报文进行确定性调度等问题。正是基于以上考虑,因此有必要开发针对EPA网络的EPA安全网关。
发明内容
本发明针对EPA工业控制网络中通信转发、网络安全和实时性、可靠性的要求,提出适用于EPA工业控制网络的,采用模块化结构设计实现的EPA安全网关。该EPA安全网关是连接EPA网络中现场设备层和过程监控层的设备,是上下层网络通信的唯一接口,起连接双方、隔离现场设备层和外部网络的作用,对现场设备层实施边界保护,从而达到保证现场设备层网络在一个开放的环境中能够安全地运行的目的。
本发明解决上述技术问题的技术方案是:根据EPA工业控制网络的特点,采用EPA报文转发部分,EPA安全部分和EPA调度部分来实现EPA安全网关的功能。
EPA报文转发部分由EPA底层驱动模块、EPA桥接模块和EPA路由模块组成,EPA底层驱动模块是CPU与网卡的软件接口,实现了报文的发送与接收功能,对上层屏蔽了底层硬件具体的实现细节,为上层提供了应用接口。EPA桥接模块主要负责在两个相同的微网段的设备之间互相通信的报文进行转发与控制。EPA路由模块主要负责在两个不同的微网段或监控级微网段和现场设备级微网段的设备之间互相通信的报文进行转发与控制。
EPA安全部分由EPA防火墙处理模块、EPA安全报文处理模块和EPA设备鉴别处理模块组成。EPA防火墙处理模块主要针对进出的外部网络报文进行监控和处理;EPA安全报文处理模块主要针对进出的EPA安全报文进行处理,从而监控现场设备的运作。这种独特的两层保护可以有效地防止未授权用户的接入和访问,阻止各种非法报文进出EPA现场设备层,帮助保护现场设备层网络及终端现场设备。EPA设备鉴别处理模块在EPA安全网关接入网络时发送设备鉴别服务报文,由上位机组态软件完成鉴别过程,确保EPA安全设备接入EPA网络的合法性。
EPA调度部分由EPA时间同步模块和EPA确定性调度模块组成。EPA时间同步模块用来实现EPA系统中EPA设备与时间服务器之间的时间同步;在EPA系统时间同步的基础上,EPA确定性调度模块对EPA安全网关的数据报文进行确定性调度。EPA时间同步模块选择系统中的最优时钟作为系统的时钟源,EPA安全网关作为边界时钟,连接在该网段内的EPA安全网关的一个端口作为从时钟,主时钟周期性发出时间同步消息,从时钟根据时间偏差修改本地系统时间,实现该网段内的时间同步,同时,其余端口作为主时钟,通过交换同步报文,实现其余端口的时间同步,EPA确定性调度模块在周期报文传输阶段,每个EPA设备分别向网络上发送包含周期数据的报文,在非周期报文传输阶段,每个EPA设备分别向网络上发送包含非周期数据的报文。
本发明的有益效果,采用EPA报文转发功能,EPA安全功能和EPA调度功能三项核心技术的实现,对EPA网络提供可靠的报文转发,有效的边界保护,精确的时间同步和数据报文的确定性调度,从而建立具有安全性、实时性、高效性的工业控制网络。
附图说明
图1EPA安全网关硬件系统结构图
图2EPA安全网关软件功能模块组成图
图3EPA安全网关报文处理流程图
图4EPA报文转发功能模块关系图
图5EPA安全功能模块关系图
图6EPA安全报文处理流程图
具体实施方式
图1为EPA安全网关硬件系统结构图。EPA安全网关的硬件部分主要由三部分:微处理器CPU模块,以太网控制器部分,以太网供电模块。其中,CPU模块的主要功能是实现特定网络接口功能及执行相关控制信息;以太网控制器模块主要用来担负以太网现场设备的数据信息传输;以太网供电模块通过网络隔离器为设备供电,完成EPA安全网关的供电功能。以太网控制器采用总线连接的方式,由CPU模块提供不同片选信号实现不同的以太网控制器的选通,从而控制不同的网络通道。EPA安全网关采用以太网供电,即供电系统和数据传输共用一根网线,以太网和局域网相连互通数据的同时输送电源。
图2所示为EPA安全网关功能模块组成示意图,根据EPA工业控制网络的特点,采用EPA报文转发部分,EPA安全部分和EPA调度部分来实现EPA安全网关报文转发、安全、实时的功能,采用μC/OS-II操作系统模块为EPA安全网关中的多任务提供调度和通信的功能,采用TCP/IP模块实现EPA安全网关中对TCP/IP报文进行解析和发送的功能,采用EPA应用层通信协议栈使得EPA安全网关实现了EPA设备在EPA应用层的功能。EPA报文转发部分由EPA底层驱动模块、EPA桥接模块和EPA路由模块组成,EPA底层驱动模块是CPU模块与网卡的软件接口,实现了报文的发送与接收功能,对上层屏蔽了底层硬件具体的实现细节,为上层提供了应用接口;EPA桥接模块主要负责在两个相同的微网段的设备之间互相通信的报文进行转发与控制;EPA路由模块主要负责在两个不同的微网段或监控级微网段和现场设备级微网段的设备之间互相通信的报文进行转发与控制。
EPA安全部分由EPA防火墙处理模块、EPA安全报文处理模块和EPA设备鉴别处理模块组成,通过EPA防火墙处理模块、EPA安全报文处理模块对EPA网络现场设备层的安全采取独特的两层保护,可以有效地防止未授权用户的接入和访问,阻止各种非法报文进出EPA现场设备层,帮助保护现场设备层网络及终端现场设备。EPA防火墙处理模块主要针对进出EPA网络的外部网络报文进行监控和处理;EPA安全报文处理模块主要针对进出EPA网络的EPA报文进行安全处理,对EPA报文进行解密、校验和访问授权处理,从而监控现场设备的运作。EPA设备鉴别处理模块在EPA安全网关接入网络时发送设备鉴别服务报文,由上位机组态软件完成鉴别过程,确保EPA安全设备接入EPA网络的合法性。
EPA调度部分由EPA时间同步模块和EPA确定性调度模块组成。EPA时间同步模块用来实现EPA系统中EPA设备与时间服务器之间的时间同步;在EPA系统时间同步的基础上,EPA确定性调度模块对EPA安全网关的数据报文进行确定性调度。
其中EPA时间同步模块使用IEEE 1588协议来实现时间同步,通过最佳主时钟算法,选择出整个系统中的最优时钟为最高级时钟GMC(GrandmasterClock)作为整个系统的时钟源,EPA安全网关作为边界时钟,从而确保跨网段系统的时间同步。在EPA安全网关的一个网段内,主时钟依据EPA管理信息库中对时间对象定义的时间间隔,周期性的发出同步信息,连接在这个网段内的EPA安全网关的一个端口作为从时钟,依据EPA管理信息库中对时间同步对象定义的时间精度属性,通过将其与计算所得的时间偏差进行比较从而决定是否需要修改本地系统时间。这样,主时钟通过周期性地发出时间同步消息,从时钟通过不断地根据时间偏差修改本地系统时间,便实现了在这个网段内基于IEEE 1588的EPA系统的时间同步机制。同时,EPA安全网关作为边界时钟,其余的端口作为主时钟,依据同样的方式,通过交换同步报文,实现其余端口内的时间同步,从而实现整个系统内的时间同步。
EPA确定性调度是在系统时间同步的基础上实现的,通过将完成一个通信周期所需要的通信宏周期划分为周期报文传输阶段和非周期报文传输阶段,确保了网络上报文传输的实时性。在EPA安全网关的一个EPA微网段内,所有EPA设备间的通信均按周期进行,完成一个通信周期所需的一个通信宏周期分为两个阶段,其中第一个阶段为周期报文传输阶段,这个阶段,每个EPA设备按照各自的时间分别向网络上发送包含周期数据的报文,如需按控制回路的控制周期传输的测量值、控制值,或功能块输入、输出之间需要按周期更新的数据。周期报文的发送优先级是最高的。第二个阶段为非周期报文传输阶段。这个阶段,每个EPA设备按照各自的时间分别向网络上发送包含非周期数据的报文,如程序的上下载、变量读写、事件通知等数据,以及诸如HTTP、FTP等应用数据。非周期报文按其优先级高低、IP地址大小及时间有效方式进行发送。
TCP/IP模块负责对接收到的数据报文的应答,并递交给相应的模块作进一步处理。当数据报文进入TCP/IP模块处理流程时,首先会对数据报文IP地址进行分析和处理:如果数据报文是发送给EPA安全网关,则接着对接收到的端口号进行处理,根据不同的端口号,进入相应的处理流程,否则丢弃这个数据报文。如果数据报文不是发送给EPA安全网关,则进一步对数据报文的目的IP和源IP地址进行解析,如果目的IP和源IP地址不在同一个网段,则将该报文发送到EPA报文转发模块中的EPA路由模块进行处理,在EPA路由模块中将根据路由表或者默认路由信息来转发这个报文;如果是同一个网段,则采用EPA报文转发模块中的EPA桥接模块对这个数据报文进行处理。
μC/OS-II操作系统模块是构建软件系统的基础,处于系统结构的最底层,提供任务调度与任务间通信的服务,EPA安全网关通过uC/OS-II操作系统模块实现了多任务方式。μC/OS-II操作系统模块采用了嵌入式系统中广泛采用的实时操作系统μC/OS-II,它资源耗费小、实时性能突出,非常适合作为实时嵌入式操作系统。它所提供的任务调度机制可以提高EPA安全网关的运行效率,从而EPA安全网关的实时性得到提升。μC/OS-II操作系统模块按照优先级的不同来对对不同的系统任务进行调度,使时间紧迫性要求较低的任务让位于时间紧迫性要求高的任务,同时避免无谓的查询尚未就绪的任务状态,从而保证高优先级任务的实时性并且提高EPA安全网关的运行效率。
EPA应用层通信协议栈使得用户能够通过终端的应用程序与作为EPA设备的EPA安全网关建立连接,实现数据通信。EPA应用层通信协议由EPA系统管理实体、EPA应用访问实体、EPA套接字映射实体组成,其中EPA系统管理实体支持设备识别、地址分配、对象定位、时间同步、EPA链路管理等功能;提供EPA设备查询、EPA设备查询应答、EPA设备属性查询、EPA设备声明、EPA设备属性设置以及EPA设备属性清除服务。EPA应用访问实体是为用户应用进程间的数据通信提供的接口,它由域管理、变量读写和事件管理组成:其中域管理包括域下载和域上载服务,变量读写包括变量读、变量写和信息分发服务,时间管理包括事件通知、事件确认和改变事件条件服务。EPA套接字映射实体则为EPA应用访问实体、系统管理实体与TCP/IP模块的接口。
图3所示为EPA安全网关报文处理流程图,其具体处理过程如下所述:当EPA安全网关接收到网络中的数据报文时,EPA底层驱动模块将该报文传递给EPA确定性调度模块,如果为报文结束声明,则按照确定性调度规则将缓存在EPA安全网关中的数据报文,发送给EPA底层驱动模块,进行报文转发,如果不是,则依据报文的特征,向上传递给EPA防火墙处理模块,根据报文的传输方向,对报文进行包过滤和地址转换处理。如果报文没有通过防火墙处理,则释放报文,否则下一步判断是否为EPA安全报文。如果是EPA安全报文,则交由EPA安全报文处理模块进行处理,否则,直接交由TCP/IP模块。EPA安全报文处理模块对EPA报文进行解密、校验和访问授权处理,如校验和访问授权都通过,则把报文交由TCP/IP模块,否则释放报文。TCP/IP模块判断报文传输方向,如为本机报文,根据端口号来判断数据报文类型是否为时间同步协议报文、设备鉴别报文或EPA通信协议报文,如果是,则交由EPA时间同步模块,由其中的EPA通信协议栈处理,之后,判断目的IP和源IP;如果TCP/IP处理模块判断报文为非本机报文,则根据报文的目的IP和源IP,选择EPA路由模块或EPA桥接模块处理,并传递给EPA确定性调度模块,按照调度规则,将数据报文传递给EPA底层驱动模块,转发报文。
图4为EPA报文转发功能模块关系图。下面结合每个部分中各模块的功能和实施方式作具体说明,EPA报文转发功能模块由EPA底层驱动模块、EPA桥接模块和EPA路由模块组成。EPA底层驱动模块对报文进行接收或者发送;EPA桥接模块和EPA路由模块选择报文转发的路径。下面对各个模块做具体说明:
EPA底层驱动模块包括BSP(板级支持包)模块、定时器驱动模块和网卡驱动模块组成。BSP模块主要作用是针对目标板的设计,实现了对操作系统的支持,使之能够更好的运行于硬件之上;定时器驱动模块为实现一般报文的重发,路由报文的定时重发以及EPA报文的调度和时间同步等系统所需要的定时提供了准确的时间;网卡驱动模块实现了CPU与网卡的软件接口,实现了报文的发送与接收功能,对上层屏蔽了底层硬件具体的实现细节,为上层提供了应用接口。EPA安全网关上电后,BSP模块负责上电时的硬件初始化、启动嵌入式操作系统或应用程序模块、提供底层硬件驱动,为上层软件提供访问底层硬件的手段。定时器驱动模块实现定时器的分配,定时器的初始化,定时器时间的插入,定时器时间的删除。网卡驱动模块实现网卡的初始化、中断处理、报文的接收和发送以及监测和处理网卡出现的异常。EPA安全网关在EPA网络中,主要运用于连接现场设备层和过程监控层的以太网段,针对连接的端口网段相同与否,采取桥接或路由的方式对数据报文进行转发,若EPA安全网关两端连接的是不同的IP网段,则根据路由模块中的路由表来转发;如果两端连接的是同一个IP网段的设备,则根据桥接模块中的MAC地址学习库采用路由的方式来转发。采用桥接模块针对的是同一个IP网段,它提供了除路由转发外的另一种转发机制,满足了工业现场的灵活组网的需求。而且桥接转发的速率快,延迟非常小,占用的网络资源小。
EPA桥接模块包括MAC地址学习库模块、桥接转发模块和生成树模块。MAC地址学习库模块中记录的是MAC地址与所属端口一一对应关系;桥接转发模块查询MAC地址学习库并选择数据报文转发的路径;生成树模块通过发送包含根节点的数据报文,避免网络中广播风暴的发生。设置EPA安全网关的两个网络接口为混杂模式,它将接收与之连接的网络上的每一个数据包。当数据包到达EPA安全网关其中一个端口时,桥接模块会对此数据包的目的MAC地址进行解析,然后对比自己端口和另一个端口的MAC地址学习库,如果在两个端口的MAC地址学习库中都没有找到此目的MAC地址,则同时在两个网段上广播,同时将源MAC地址和该物理端口记录在MAC地址学习库中。经过多次这样的学习和记录,EPA安全网关就会将两个端口所连接的所有MAC地址记录下来了,从而建立起一个MAC地址学习库。如果在MAC地址学习库中找到此MAC地址,则判断库中端口是否与接收的端口相同,若相同,则证明拥有目的MAC的设备与源MAC在同一个物理网段,则丢弃此数据包;如果不同,则得出具有该地址的设备在另一个物理网段上,此时允许此数据包通过EPA安全网关,通过另一个端口发送出去。
生成树模块通过EPA安全网关相互通信,并用一棵到达每个LAN的生成树覆盖实际的拓扑结构,有效地防止网络中回路的出现,避免了由于帧的无限循环和重复接收所导致的网络风暴的发生。当EPA安全网关上电后,首先会配置EPA安全网关ID,端口ID,端口相对优先级,各个端口的花费。每个EPA安全网关假定自己是根网关,通过广播数据报文发送它认为的根网关ID。如果一个EPA安全网关收到一个根网关ID小于其所知ID的数据报文时,它将更新自己的表,如果该帧从根端口(上传)到达,则向所有指定端口(下传)分发。如果数据报文中根网关ID大于其所知ID,该信息被丢弃;如果该帧从指定端口到达,则回送一个帧告知真实根网关的较低ID。在EPA安全网关优先级都一样的情况下,设置MAC地址最小的网关为根网关,其余的端口设置为指定端口,进入转发状态。接下来,其他网关将各自选择一条最优的树枝作为到根网关的路径。按根到每个EPA安全网关的最短路径来构造生成树。如果某个EPA安全网关或LAN故障,则重新计算。
EPA路由模块包括路由协议模块和路由转发模块。路由协议模块是根据网络拓扑结构的变化而动态的维护一个本地的路由表;路由转发模块是根据报文的目的IP地址和子网掩码查找已有的本地路由表来转发报文。路由协议模块采用选路信息协议RIP协议,它是基于距离向量的路由选择,每一个EPA安全网关周期性地与其邻站共享有关整个网络的知识,从而使EPA安全网关中的路由表的表项总是为最新。当EPA安全网关有数据报文要发送的时候,或EPA安全网关收到一个数据报文要发送时,通过路由转发模块,查找路由表,找出到达最终目的地的路由。
EPA底层驱动模块接收到报文以后,交由EPA确定性调度模块处理,如果是非周期数据声明或者是非周期数据发送结束声明,则EPA确定性调度模块依据调度规则,对缓存在EPA安全网关中的数据报文进行处理;否则进入EPA安全功能模块。
图5为EPA安全功能模块关系图。针对网络中的安全威胁,EPA安全网关的安全功能模块采用了EPA防火墙处理模块、EPA安全报文处理模块、EPA设备鉴别处理模块。EPA防火墙处理模块和EPA安全报文处理模块过滤所有通信业务——无论它们来自现场设备层还是外部,这种独特的两层保护可帮助保护现场设备层网络及终端现场设备,防止未授权的接入和损害。EPA设备鉴别处理模块用来保证只有合法的设备才能接入EPA网络。EPA防火墙处理模块和EPA安全报文处理模块采用中间层截包处理的模式,对网络接口收到报文,在中间层截取报文,获取网络层、传输层和应用层报文信息,根据处理结果,或者丢弃该报文,或者将处理后的报文通过送到IP协议,IP协议及上层应用层接收到报文进行下一步处理。EPA安全网关上线时,EPA设备鉴别处理模块在网络中周期性的广播发送设备鉴别服务报文,防止非法设备接入EPA网络,保障EPA安全网关接入网络的合法性。
EPA安全网关的EPA防火墙处理模块包括包过滤模块和NAT(网络地址转换)模块,它们能从不同方面有效地保护内部网络的安全。防火墙模块基于包过滤技术对整个网络报文进行处理,并且提供网络地址转换功能屏蔽现场设备层内部子网。作为一种保护装置,EPA安全网关的防火墙作为外部网与内部网之间的一个中介系统,竖起一道安全屏障,用来拒绝未经授权的用户访问,阻止未经授权的用户存取敏感数据,同时允许合法用户无障碍地使用网络资源,从而阻断外部网络对本地网络的威胁和入侵,起到提供保护本地内部网络中的数据和资源的作用。
包过滤模块首先在数据链路层完成网络数据包的截取,然后对所有经过网络内部的数据包进行安全检查与控制。通过监视并过滤网络上输入输出的IP包,拒绝发送那些可疑的包,可以在一定程度上防止欺骗攻击,保护内部网络的安全。EPA安全网关的包过滤防火墙过滤规则是基于可以提供给IP转发过程的包头信息建立的,它涵盖对所有出入防火墙的数据包的处理方法。外部网络访问位于防火墙后的现场设备层设备时,所有进出的数据包都要经过防火墙的过滤后方可通过。这里遵循“未明确表示允许的服务便被禁止的”策略。当收到从数据链路层上来的包后,将根据包的源IP地址、目的IP地址、TCP/UDP源和目的端口、协议标志等信息与安全规则逐项匹配,如果满足规则,则接收数据包,否则丢弃。通过这些方法,可以过滤掉外部网络与内部网络之间的非法通信,从而保护了现场设备层网络。
EPA安全网关的NAT(网络地址转换)模块用于实现网络IP地址的转换,就是在内部网络的私有地址需要与外部网络通信时,利用1个或几个IP地址来实现内部网络中的所有主机都可以访问外部网络。通过使用NAT,外部网络可以通过少数几个甚至一个公网地址访问EPA设备;同时它还起到了隐藏内部网络结构的作用,使“黑客”无法直接攻击内部网络,具有一定的安全性;它还可以实现负载平衡,提升了网络性能。
本系统的NAT机制采用的是NAPT(网络地址端口转换)来实现,使用了伪装处理模块和去伪装处理模块对IP包进行网络地址转换,并通过不同的端口来区分各个不同的内部主机。当NAPT模块接收到IP报文时,首先解析报文源IP地址和目的IP地址,当源IP地址为子网地址,目的地址为外网地址时,执行伪装处理;当源IP地址为外网地址,目的地址为网关地址时执行去伪装处理;其它情形不进行NAPT处理。执行地址伪装处理时,首先将检查地址映射表以确定某个连接的表项是否存在,如果存在,则用伪装地址(网关地址)、伪装端口号分别替换包首部中的源地址、源端口号;如果不存在,则建立一个新的表项,并使用它进行伪装。因为首部进行了替换,所以需要检验和重新计算。执行地址去伪装处理时,它将目的地址、目的端口号与地址映射表的表项进行匹配,如果不存在匹配表项,则将包直接交于IP层处理;如果存在,则将首部中的目的地址、目的端口号用地址映射表中记录的指向内部网主机真实的目的地址、目的端口号替换。当然,也需要重新计算检验和。NAPT处理完成后,判断是否是EPA安全报文,如果不是,则直接提交TCP/IP协议处理;否则进入EPA安全报文处理模块。
EPA安全报文处理模块包括EPA解密模块、EPA报文校验模块和EPA访问控制模块。EPA解密模块用来对加密的EPA报文进行解密处理,以便EPA安全报文处理模块进行下一步处理;EPA报文校验模块实现对EPA报文进行校验,检查数据在传输过程中是否改变,防止使用遭受篡改和破坏的信息;EPA访问控制模块用来对发起的EPA服务访问权限进行判断,阻止未授权的用户进入EPA系统或授权用户对系统资源的非法使用。
图6为EPA安全报文处理流程图。由于EPA安全设备在构造安全报文时,安全措施是可选的,所以,EPA安全网关在处理接收到的EPA安全报文的过程中,解密处理、校验处理和访问控制处理也是可选的。EPA安全网关接收到EPA安全报文时,首先解析EPA安全头部,查询安全标识标志位,如果该报文为加密报文,首先需要进行将加密的EPA报文提取出来,进行解密处理,把密文转化为明文,而不对原文进行任何改动。然后对提取出的明文,判断是否为报文校验,如果是,则交由报文校验处理,如果校验通过,接着判断是否为访问控制,如果是,则交由访问控制处理,当访问权限通过时,转发EPA安全报文。否则丢弃报文。
根据《用于工业测量与控制系统的EPA网络安全规范》,从现场设备的性能要求以及速度要求出发,兼顾安全,EPA网关的报文解密模块根据设备所选择的加密算法对所接收的EPA报文进行解密,采用异或算法和AES算法,通过变换信息的表示形式来伪装需要保护的敏感信息,使非授权用户不能了解被保护信息的内容。其中,EPA密钥的产生和管理由组态软件完成,组态软件使用随机数生成算法产生128字节长的密钥表、密钥偏移以及密钥长度,并且下载到EPA安全网关中。解密密钥需要定时更新,更新密钥时组态软件同时对密钥表、密钥偏移以及密钥长度进行更新。EPA安全网关中EPA解密模块在本地管理信息库中的密钥表对象中取出密钥,与从接收的EPA安全报文头部中获取的时间戳运算,得到解密密钥,然后对报文进行异或算法或AES算法解密处理,解密后的报文取其原始长度作为有效报文,并将数据交由EPA报文校验模块处理。
EPA安全报文处理模块中报文校验模块的校验算法使用异或校验算法和MD5(信息-摘要算法5)报文摘要算法,通过比较接收方的校验码与发送方的校验码是否一致来完成,保证EPA报文在网络传输过程中的完整性和可用性。其中,MD5报文摘要算法将对输入的任意长度的信息进行计算,产生一个128位长度的“报文摘要”,该算法不需要任何大型的置换列表,编码简洁,能在32位机器上能以很快的速度运行,具有很好的安全性。
EPA安全部分中EPA报文校验模块从本地管理信息库中的密钥表对象中取出密钥,从接收的EPA安全报文头部中获取的时间戳,对报文进行异或校验算法或MD5报文摘要算法运算,计算出正确校验码。通过比较接收到的校验码与计算得出的校验码,可以判断报文是否被篡改,从而决定转发该数据包还是丢弃该数据包。
EPA访问控制模块的访问控制机制基于访问控制列表实现,访问控制机制按照事先确定的规则决定主体对客体的访问是否合法,对访问的申请,批准和撤销的全过程进行有效的控制,以确保只有合法用户的合法访问才能得到批准,而且被批准的访问只能进行授权的操作。EPA安全网关中都保存着组态时设置的访问控制列表。访问控制列表项包含了发起访问的远程设备IP地址、功能块ID、对象ID以及本地设备功能块ID、对象ID、通信角色。通过以上6个参数,可以唯一的确定一对EPA通信关系。
EPA安全网关中访问控制模块接收并取出EPA安全报文中的访问控制信息字段,然后在管理信息库中查询本地和远程的功能块标识以及变量对象索引与访问控制信息一致的且通信角色为接收方的访问控制对象,若查询失败则释放报文,否则,继续比较访问控制对象中的访问口令、访问权限、访问组与访问控制信息中的访问口令、访问权限、访问组是否一致,如一致,则允许该报文通过,完成规定权限的通信,否则,拒绝访问请求并释放报文。
EPA设备鉴别处理模块用于向系统声明其身份,EPA安全网关的设备鉴别处理,采取了以下三种措施:
1)为了抵抗可能的攻击者伪造或篡改合法EPA设备的设备标识符和设备安全序列号,伪装成合法设备进入EPA网络,引入了单向散列函数,把任意长度的字符串映射成一固定长度的哈希值,在接收端可以通过验证该哈希值来确定合法设备的设备标识符和设备安全序列号是否被更改。
2)为了防止非法设备获取合法设备发送的哈希值进行重放攻击,设备鉴别安全机制引入了时间戳机制,利用本地系统时间参与哈希值的生成,使得设备每次发送的哈希值都不同。使得攻击者不可能通过重放某个消息来达到冒充合法设备。
3)从处理速度和占用内存空间两方面来考虑,设备鉴别安全机制选择了MD5算法。设备上电时发送设备鉴别报文,首先使用MD5算法对固化在本设备中的设备标识符、设备安全序列号和获取的本地时间戳所组成的字符串进行哈希函数的运算。运算得到的哈希值作为鉴别码,与设备的设备标识符和本地时间戳等共同构成设备鉴别报文,向EPA网络广播发送。网络中组态上位机收到设备鉴别服务报文时,首先解析报文,根据报文中的设备标识符字段查找存储在组态软件中的设备描述文件,从其中读取其合法的设备安全序列号,与接收的设备标识符和时间戳共同组成字符串,采用MD5算法进行哈希运算获得正确鉴别码。比较运算得到的该设备正确鉴别码和报文中接受的鉴别码。若从报文中获取的鉴别码与正确鉴别码一致,则组态软件发送设备鉴别通过确认报文,设置该设备鉴别状态为已通过,并且写入通过鉴别的时间戳。否则,组态软件把该设备标识为非法设备。
EPA安全网关上电后,会进入Standby状态,EPA通信调度管理实体对所有报文不做任何处理;
当EPA安全网关处于Ready状态时,EPA安全网关处于通信调度控制状态,按照如下规则进行操作:
对来自DLS User(数据链路服务用户)的DLS User DATA时,先放入缓存区进行缓存;对来自DLE解析过的DLPDU时,首先检查其是否为非周期数据声明报文。如果是,则将其发送方的IP地址、非周期报文的发送优先级等参数存放在预先建立的非周期报文发送管理列表中,否则将其直接提交给DLS User。
当EPA安全网关的EPA通信调度管理实体检测到发送周期报文的时间到时,EPA通信调度管理实体状态改变为周期报文发送状态。这时,首先检查有无优先级为0的报文,如果没有,则发送非周期数据声明报文。否则,将需要在此时发送的DLS User DATA依次传送给DLE,由DLE通过PhLE发送到网络上,然后EPA通信调度管理实体再将非周期数据声明报文传送给DLE,通过PhLE发送到网络上,并将其状态改变为Ready。
当EPA通信调度管理实体检测到一个通信宏周期内非周期报文传输开始时间到时,本地设备接收到远程设备发送的非周期数据发送结束声明报文时,EPA通信调度管理实体状态改变为非周期报文发送状态。这时,按以下规程进行操作:
a)检查EPA安全网关有无非周期数据需要发送,若无,则进入g);否则进入下一步;
b)检查EPA安全网关本地非周期报文发送管理列表,比较本地与本网段内所有远程设备的非周期报文发送优先级。如本地设备的非周期报文优先级低于所有远程设备,则进入g);否则进入下一步;
c)如EPA安全网关的非周期报文优先级高于所有远程设备,且本次宏周期内剩余时间足够该数据的完整发送,则通信调度管理实体将该非周期报文传送给DLE,由DLE发送到网络上,转入f);否则保留到下次发送,转入g);
d)如本地与一个或多个远程设备的非周期报文发送优先级相同,且为最高时,若本地设备的IP地址较大,则进入g);否则进入下一步;
e)如本次宏周期内剩余时间足够该数据的完整发送,则EPA通信调度管理实体将该非周期报文传送给DLE,由DLE发送到网络上,转入f);否则保留到下次发送,转入g);
f)如果EPA安全网关还有未发送的非周期报文,则转到b);
g)如EPA安全网关发送了至少一个非周期报文,通信调度管理实体向DLE发送“非周期数据发送结束声明”报文;
h)将本地通信调度管理实体的状态改变为Ready状态。
以上只是本发明的优选实施例说明,本发明的保护范围基于本领域技术人员的理解结合权利要求进行限定。
Claims (6)
1.一种嵌入式工业以太网EPA安全网关,包括,EPA报文转发部分、EPA安全部分和EPA调度部分,其特征在于,EPA报文转发部分中的EPA桥接模块对两个相同微网段的设备之间的报文进行转发,EPA路由模块对两个不同的微网段或监控级微网段和现场设备级微网段的设备之间的报文进行转发;EPA安全部分采用两层保护,针对进入EPA现场设备层的外部网络报文和EPA安全报文进行监控和处理,阻止各种非法报文进入EPA现场设备层;EPA调度部分中EPA时间同步模块选择系统中的最优时钟作为系统的时钟源,EPA安全网关作为边界时钟,连接在本网段内的EPA安全网关的一个端口作为从时钟,主时钟周期性发出时间同步消息,从时钟根据时间偏差修改本地系统时间,实现该网段内的时间同步,同时,其余端口作为主时钟,通过交换同步报文,实现其余端口的时间同步,EPA确定性调度模块在周期报文传输阶段,每个EPA设备分别向网络上发送包含周期数据的报文,在非周期报文传输阶段,每个EPA设备分别向网络上发送包含非周期数据的报文。
2.根据权利要求1所述工业以太网EPA安全网关,其特征在于,主时钟依据EPA管理信息库中时间对象定义时间间隔。
3.根据权利要求1所述工业以太网EPA安全网关,其特征在于,EPA安全部分包括EPA解密模块、EPA报文校验模块和EPA访问控制模块,EPA解密模块对加密的EPA报文进行解密处理;EPA报文校验模块依据校验码对EPA报文进行校验;EPA访问控制模块对发起的EPA服务访问权限进行判断,阻止未授权用户进入EPA系统或授权用户对系统资源的非法使用。
4.根据权利要求1所述工业以太网EPA安全网关,其特征在于,所述两层保护是EPA防火墙处理模块对进出的外部网络报文进行监控和处理;EPA安全报文处理模块针对进出的EPA安全报文进行处理。
5.根据权利要求1所述工业以太网EPA安全网关,其特征在于,若EPA安全网关两端连接的是不同的IP网段,则根据路由表来转发报文;如果EPA安全网关两端连接的是同一个IP网段,则根据MAC地址学习库来转发报文。
6.根据权利要求3所述工业以太网EPA安全网关,其特征在于,报文校验模块根据从本地管理信息库中的密钥表对象中取出密钥,从接收的EPA报文头部中获取时间戳,对报文进行异或校验算法或MD5报文摘要算法计算校验码。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2007100925322A CN101159718B (zh) | 2007-08-03 | 2007-08-03 | 嵌入式工业以太网安全网关 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2007100925322A CN101159718B (zh) | 2007-08-03 | 2007-08-03 | 嵌入式工业以太网安全网关 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101159718A CN101159718A (zh) | 2008-04-09 |
CN101159718B true CN101159718B (zh) | 2010-06-16 |
Family
ID=39307641
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2007100925322A Expired - Fee Related CN101159718B (zh) | 2007-08-03 | 2007-08-03 | 嵌入式工业以太网安全网关 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101159718B (zh) |
Families Citing this family (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101378395B (zh) * | 2008-10-10 | 2011-04-06 | 福建星网锐捷网络有限公司 | 一种防止拒绝访问攻击的方法及装置 |
CN101420343B (zh) * | 2008-11-28 | 2011-02-09 | 重庆邮电大学 | Epa网络的网络拓扑发现方法 |
CN101442532B (zh) * | 2008-12-25 | 2012-04-18 | 上海自动化仪表股份有限公司 | 基于epa网桥的现场控制器的实现方法 |
CN101582895B (zh) * | 2009-06-18 | 2012-07-04 | 重庆邮电大学 | 基于epa的嵌入式工业无线wia-pa网关 |
CN101631080B (zh) * | 2009-08-14 | 2013-04-24 | 重庆邮电大学 | 基于epa协议的工业以太网交换机和报文转发方法 |
CN102377740A (zh) * | 2010-08-12 | 2012-03-14 | 西门子公司 | 一种工业访问控制方法及装置 |
CN102013970B (zh) * | 2010-12-23 | 2013-07-10 | 北京北方烽火科技有限公司 | 时钟同步方法、装置及基站时钟设备 |
CN103118029A (zh) * | 2013-02-18 | 2013-05-22 | 中兴通讯股份有限公司 | 一种加密报文互传时间同步方法及装置 |
CN104079444A (zh) * | 2013-03-27 | 2014-10-01 | 西门子公司 | 一种用于工业以太网数据帧深度检测的方法和装置 |
CN103281242B (zh) * | 2013-06-19 | 2016-04-13 | 迈普通信技术股份有限公司 | 协议栈路由表维护方法及装置 |
CN103905452A (zh) * | 2014-04-03 | 2014-07-02 | 国家电网公司 | 一种可信的网络攻击过滤装置及网络攻击过滤方法 |
CN104010050A (zh) * | 2014-05-30 | 2014-08-27 | 北京航空航天大学 | 基于中间件实现网关napt功能的方法及装置 |
CN105080774B (zh) * | 2015-07-06 | 2017-05-24 | 浙江大学 | 音乐水型同步的可扩展喷泉控制系统及其方法 |
CN106789982B (zh) * | 2016-12-08 | 2020-06-16 | 北京立思辰新技术有限公司 | 一种应用于工业控制系统中的安全防护方法和系统 |
CN106612286A (zh) * | 2016-12-29 | 2017-05-03 | 上海月阳信息科技有限公司 | 一种防病毒工业网络控制系统 |
CN106714176A (zh) * | 2017-01-04 | 2017-05-24 | 北京百度网讯科技有限公司 | 一种内网服务的访问控制方法及装置 |
CN107864157A (zh) * | 2017-12-19 | 2018-03-30 | 苗放 | 基于权属的数据加密保护和权属授权解密应用方法及系统 |
CN110120846B (zh) * | 2018-02-05 | 2020-11-13 | 大唐移动通信设备有限公司 | 一种时钟同步方法和系统 |
CN110176976B (zh) * | 2019-06-28 | 2021-02-09 | 中车青岛四方车辆研究所有限公司 | 列车时间校准系统、方法及时间校准设备 |
CN111901288A (zh) * | 2019-12-26 | 2020-11-06 | 长扬科技(北京)有限公司 | 一种针对BACnet的网络安全防护方法 |
CN112217819B (zh) * | 2020-10-12 | 2021-04-27 | 珠海市鸿瑞信息技术股份有限公司 | 基于双因子认证体系的工业控制报文语意解析审计方法 |
CN113676469A (zh) * | 2021-08-17 | 2021-11-19 | 盐城工学院 | 一种企业网安全管理方法 |
CN113518044B (zh) * | 2021-09-15 | 2021-12-21 | 浙江国利信安科技有限公司 | Epa设备 |
CN113839964B (zh) * | 2021-11-26 | 2022-03-11 | 浙江国利信安科技有限公司 | 用于网关设备的通信方法和网关设备 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1750534A (zh) * | 2005-10-21 | 2006-03-22 | 重庆邮电学院 | Epa网络安全管理实体与安全处理方法 |
-
2007
- 2007-08-03 CN CN2007100925322A patent/CN101159718B/zh not_active Expired - Fee Related
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1750534A (zh) * | 2005-10-21 | 2006-03-22 | 重庆邮电学院 | Epa网络安全管理实体与安全处理方法 |
Non-Patent Citations (6)
Title |
---|
向敏,徐洋,杨震斌,张晓辉.基于EPA技术的网桥设计.工业控制计算机19 12.2006,19(12),1-2. |
向敏,徐洋,杨震斌,张晓辉.基于EPA技术的网桥设计.工业控制计算机19 12.2006,19(12),1-2. * |
孙攀,王平,谢昊飞.以太网工厂自动化协议中确定性调度的研究与实现.计算机集成制造系统13 3.2007,13(3),563-567. |
孙攀,王平,谢昊飞.以太网工厂自动化协议中确定性调度的研究与实现.计算机集成制造系统13 3.2007,13(3),563-567. * |
王浩,陈敏娜,王平.EPA的信息安全技术.自动化仪表27 9.2006,27(9),9-12. |
王浩,陈敏娜,王平.EPA的信息安全技术.自动化仪表27 9.2006,27(9),9-12. * |
Also Published As
Publication number | Publication date |
---|---|
CN101159718A (zh) | 2008-04-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101159718B (zh) | 嵌入式工业以太网安全网关 | |
CN101631080B (zh) | 基于epa协议的工业以太网交换机和报文转发方法 | |
CN110996318B (zh) | 一种变电站智能巡检机器人安全通信接入系统 | |
US11102226B2 (en) | Dynamic security method and system based on multi-fusion linkage response | |
Finogeev et al. | Information attacks and security in wireless sensor networks of industrial SCADA systems | |
CN101300806B (zh) | 用于处理安全传输的系统和方法 | |
CN101682656B (zh) | 用于保护数据分组的路由选择的方法和设备 | |
CN103686717B (zh) | 一种物联网传感系统的密钥管理方法 | |
TWI506999B (zh) | 自發地配置一電腦網路之系統及方法 | |
CN201194396Y (zh) | 基于透明代理网关的安全网关平台 | |
Wendzel et al. | Cyber security of smart buildings | |
US9467289B2 (en) | Method for obscuring a control device's network presence by dynamically changing the device's network addresses using a cryptography-based pattern | |
CN104320332A (zh) | 多协议工业通信安全网关及应用该网关的通信方法 | |
CN103491072A (zh) | 一种基于双单向隔离网闸的边界访问控制方法 | |
CN1332552A (zh) | 使用本地ip地址和不可转换端口地址的局域网的网络地址转换网关 | |
CN101843033A (zh) | 针对自动化网络的实时通信安全性 | |
RU2496136C1 (ru) | Способ взаимодействия терминального устройства клиента с сервером по сети интернет с повышенным уровнем защиты от ddos атак и система для реализации способа | |
CN102546184B (zh) | 传感网内消息安全传输或密钥分发的方法和系统 | |
CN110855707A (zh) | 物联网通信管道安全控制系统和方法 | |
CN100349448C (zh) | 工业控制网络安全管理系统与安全处理方法 | |
CN103532987A (zh) | 一种防止非认证计算机设备接入企业内网的保护方法及系统 | |
Granzer et al. | Security analysis of open building automation systems | |
EP1879350A1 (en) | Distributed computer system with a local area network | |
Åkerberg et al. | Introducing security modules in profinet io | |
US11095687B2 (en) | Network security system using statistical object identification |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20100616 Termination date: 20150803 |
|
EXPY | Termination of patent right or utility model |