CN106168757B - 工厂安全系统中的可配置鲁棒性代理 - Google Patents

工厂安全系统中的可配置鲁棒性代理 Download PDF

Info

Publication number
CN106168757B
CN106168757B CN201610339856.0A CN201610339856A CN106168757B CN 106168757 B CN106168757 B CN 106168757B CN 201610339856 A CN201610339856 A CN 201610339856A CN 106168757 B CN106168757 B CN 106168757B
Authority
CN
China
Prior art keywords
message
messages
network
module
communication
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.)
Active
Application number
CN201610339856.0A
Other languages
English (en)
Other versions
CN106168757A (zh
Inventor
V·S·拉亚佩塔
J·B·佩先斯基
W·E·贝内特
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fisher Rosemount Systems Inc
Original Assignee
Fisher Rosemount Systems Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Fisher Rosemount Systems Inc filed Critical Fisher Rosemount Systems Inc
Publication of CN106168757A publication Critical patent/CN106168757A/zh
Application granted granted Critical
Publication of CN106168757B publication Critical patent/CN106168757B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B13/00Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion
    • G05B13/02Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric
    • G05B13/04Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric involving the use of models or simulators
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • H04L63/1416Event detection, e.g. attack signature detection
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/418Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM]
    • G05B19/4185Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM] characterised by the network communication
    • G05B19/41855Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM] characterised by the network communication by local area network [LAN], network structure
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/0227Filtering policies
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1441Countermeasures against malicious traffic
    • H04L63/145Countermeasures against malicious traffic the attack involving the propagation of malware through the network, e.g. viruses, trojans or worms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Physics & Mathematics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Manufacturing & Machinery (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Quality & Reliability (AREA)
  • Evolutionary Computation (AREA)
  • Medical Informatics (AREA)
  • Software Systems (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Computer And Data Communications (AREA)
  • Testing And Monitoring For Control Systems (AREA)

Abstract

一种通信网络安全系统,包括鲁棒性代理,该鲁棒性代理在网络的一个或多个节点处的设备的通信接口内进行操作,以便对来自或去往该网络的消息进行分析和过滤。在节点中的每个节点处,鲁棒性代理确定与通过该代理的消息中的每个消息相关联的消息特征的一个或多个集合,并且该代理被配置为:允许某些类型的消息(例如,具有某些预先确定的特征集合的消息)通过该代理,阻止具有其它预先确定的特征的消息通过该代理(例如通过暂停(丢弃或过滤)这些消息),和/或将具有其它消息特征集合的其它消息传递到体量过滤器以便进行计数。体量过滤器对具有消息特征的特定集合的消息的数量进行计数,并且如果在特定时间段上检测到的这些消息的数量小于特定阈值,则传递这些消息;并且如果在特定时间段上经计数的消息的数量大于特定阈值,则过滤这些消息。

Description

工厂安全系统中的可配置鲁棒性代理
技术领域
概括地说,本申请涉及过程或工业工厂通信系统,更具体地说,本申请涉及基于工厂通信网络中的业务检测和过滤来检测对控制和维护通信网络(例如,过程和工业控制系统中所使用的那些控制和维护通信网络)的入侵。
背景技术
过程或工业控制和维护系统(例如,如在发电、化学、石油或其它制造过程中所使用的那些分布式或可升级的过程控制系统)通常包括一个或多个控制器,这些控制器彼此通信地耦合,经由过程控制网络耦合到至少一个主机或操作者工作站,并且经由模拟、数字或组合的模拟/数字总线耦合到一个或多个现场设备。现场设备(其可以是例如阀、阀定位器、开关及传送器(例如,温度、压力和流速传感器))执行过程或工厂内的功能,例如打开或关闭阀,接通和断开设备以及测量过程参数。控制器接收对现场设备所作出的过程或工厂测量进行指示的信号和/或关于现场设备的其它信息,使用该信息来实现一个或多个控制例程,并且然后生成控制信号,其中控制信号通过工厂网络的总线或通信信道发送给现场设备,以控制过程或工厂的操作。通常可以经由通信网络使来自现场设备和控制器的信息可用于由操作者工作站执行的一个或多个应用,以使得操作者或维护人员能够针对该过程或工厂执行任何期望的功能,例如查看工厂的当前状态、修改工厂的操作、校准设备、检测故障设备等。
在操作期间,过程控制器(其通常位于过程工厂环境内)根据配置方案被配置为:周期性地或定期接收对现场设备所产生的或与现场设备相关联的过程测量或过程变量进行指示的信号和/或关于现场设备的其它信息,并且使用该信息来执行控制器应用。控制器应用实现例如不同的控制模块,这些控制模块做出过程控制决定、基于所接收的信息生成控制信号、并与现场设备(例如,
Figure BDA0000995213420000021
Figure BDA0000995213420000022
Fieldbus现场设备)中的控制模块或块协作。此外,再次根据配置方案,过程控制器中的控制模块通过通信链路或其它信号路径向现场设备发送控制信号,以便据此控制过程的操作。
经由一个或多个受保护的过程控制或维护网络,通常还使来自现场设备和过程控制器的信息可用于工厂内部或外部的一个或多个其它硬件设备,例如,操作者工作站、维护工作站、服务器、个人计算机、手持设备、数据或事件历史记录、报告生成器、中央数据库等。通过过程控制或维护通信网络传送的信息使得操作者或维护人员能够针对过程执行期望的功能和/或查看工厂或工厂内的设备的操作。例如,控制信息允许操作者改变过程控制例程的设置,修改过程控制器或智能现场设备内的控制模块的操作,查看过程的当前状态或过程工厂内的特定设备的状态,查看由现场设备和过程控制器生成的警报和/或告警,出于训练人员或测试过程控制软件的目的来模拟过程的操作,诊断过程工厂内的问题或硬件故障等。
现场设备和控制器通常通过一个或多个受保护的过程控制或维护通信网络(其可以例如实现为以太网配置的LAN)与其它硬件设备进行通信。过程控制或维护通信网络通过各种网络设备发送过程参数、网络信息和其它过程控制数据并发送给过程控制系统中的各个实体。典型的网络设备包括网络接口卡、网络交换机、路由器、服务器、防火墙、控制器、操作者工作站和数据库。网络设备通常通过控制路由、帧速率、超时和其它网络参数来促进通过网络的数据流动,但不改变过程数据本身。随着过程控制网络的规模和复杂性的增加,网络设备的数量和类型相应地增加。由于系统和网络的增长,这些复杂系统内的安全性及其管理变得越来越困难。然而,作为开始,这些网络通常与其它外部网络隔离,并且由一个或多个防火墙保护这些网络免受外部攻击。
通常,在典型的工业控制系统中,为了限制对网络的入侵,工厂控制系统工作站/服务器策略性地放置在执行与工厂相关联的各种功能的外部工厂网络与控制系统内执行控制和数据获取功能的嵌入式控制设备(例如,控制器、PLC、RTU)之间。控制工作站/服务器的主要安全目标是阻止恶意软件进入控制和维护系统并对嵌入式设备造成不利影响,以及阻止恶意软件改变存储在工厂过程控制数据库中的配置和历史数据。此外,这些工作站/服务器阻止对控制系统的未经授权的访问,以阻止对工厂配置的未经授权的改变、对工厂数据的未经授权的访问等。尽管多个安全特征(例如,防火墙、“反病毒”软件和“白名单”)可用于解决这些安全目标,但这些安全特征通常是不充分的。例如,反病毒软件无法防范“零日”病毒,并且白名单仅阻止未经授权的应用程序运行。此外,这些特征中的一些特征太有入侵性以致于在过程控制系统中在操作上是不可行的,这是因为这些安全特征会潜在地妨碍工厂操作者或经调度的控制操作的活动。
在一般意义上,恶意软件(例如,处于零日攻击核心的恶意软件)通常经由到外部网络的授权的通信连接,通过应用或服务(其具有访问过程控制网络内的存储器设备、网络端口或直接数据链路的权限或授权)的操作引入受保护的控制系统网络。替代地,恶意软件可经由将被感染的便携式设备和/或介质连接到控制系统设备的本地人员引入受保护的控制系统网络。此后,恶意软件能够被传播到其它设备(例如,经由通信)和/或使用感染有恶意软件的应用或服务的安全权限在过程控制网络内的设备内执行。此外,恶意软件本身可以在本地持续存在,以允许其在联网设备重新启动之后再次执行。在一些情况下,恶意软件可以使用账户(在该账户下执行应用或服务)的权限来升级主机(例如,被感染的应用或服务)的权限,并且在这样做时,恶意软件能够执行过程控制设备或网络设备内的需要更高权限的动作或操作,因此通常对控制系统操作更加有害。当这些攻击扰乱工厂控制系统正在进行的操作时,这些攻击可在过程工厂内造成严重和潜在破坏性或者甚至致命的影响。
已经有大量的研究活动来定义和构建硬件和软件配置,这些硬件和软件配置操作为阻止或限制对过程或工业控制和维护网络的攻击。然而,即使严密防御的工业控制系统(ICS)网络或监控与数据采集(SCADA)网络仍受到安全威胁,例如安全防御的错误配置、具有合法接入的用户恶意地进行活动、以及公众未知但恶意的软件代表外部袭击者进行活动。此外,一旦网络被感染,仅存在有限的能力来自动检测过程或工业控制设备内或工厂通信节点中病毒或恶意软件的存在。概括地说,一旦攻击在工厂环境中变得成功,则通常需要操作者、维护人员等来检测工厂通信节点或设备被感染。尽管有可能在通信网络的每个节点处运行后台病毒扫描软件,但该软件耗费大量存储器和处理资源,需要定期更新(需要大量的网络维护资源和时间),并且仍然不能够检测零日病毒。
在许多情况下,工厂设备或网络节点处的病毒或未经授权的软件可以导致设备或网络的性能下降,可以充分地中断正常的工厂操作以足以导致在网络内的该节点或其它节点处生成错误或警报,或者可以导致其它严重和值得注意的问题。在其中一些情况下,对于操作者或其它工厂人员来说检测病毒的存在可能相对容易,但可能仍然难以检测病毒的位置。此外,在许多其它情况下,病毒或攻击可能在很长的时间段内在未被检测到的情况下进行操作,尽管其使网络操作稍微恶化,但对工厂操作的这种恶化或其它影响可能是可忽略的,并且因此可能非常难以检测。因此,在许多情况下,病毒可能在很长的时间段内未被检测到,在该时间期间,这些病毒可以操作为降低工厂效率,允许窃取工厂数据,实现更加严重的入侵,将网络设备暴露于严重的攻击或伤害等等。
发明内容
一种控制系统(例如,工业或过程工厂控制或维护系统)实现通信网络威胁检测系统,该通信网络威胁检测系统提供对通过网络发送的通信的鲁棒分析和过滤,以防范潜在被感染的网络节点。概括地说,该分析系统包括鲁棒性(robustness)代理,其在节点设备(例如,控制器、用户接口、交换机等)与通信网络之间的接口处进行操作,其中,所述鲁棒性代理对来自或去往所述网络的消息进行分析和过滤,以确定流动通过所述鲁棒性代理的消息的类型或关于所述消息的信息。鲁棒性代理可以被配置为:允许某些类型的消息(例如,具有某些预先确定的特征的消息)通过所述代理去往所述网络或去往所述设备,可以阻止具有其它预先确定的特征的消息通过所述代理(例如通过丢弃或过滤这些消息),和/或可以将具有其它特征的其它消息传递到体量(volume)过滤器以便进行计数。体量过滤器可以操作为:对特定类型(或具有消息特征的特定集合)的消息的数量进行计数,并且体量过滤器可以操作为:如果特定时间段上的这些检测到的消息的数量小于特定阈值,则传递这些消息,但是如果特定时间段上的经计数的消息的数量大于特定阈值,则可以过滤这些消息。概括地说,鲁棒性代理可以被配置为使得该鲁棒性代理的过滤操作可以基于对网络作出的改变而随时间改变,可以针对不同类型的网络或针对不同工厂中的网络来调整或建立,并且通常可以被配置为:与任何特定网络(其中鲁棒性代理或具有多个鲁棒性代理的安全系统在该特定网络中进行操作)的预期操作相匹配。
在一般意义上,使用一个或多个这种鲁棒性代理的安全系统阻止可能因传递具有某种类型或具有很可能与入侵相关联的特征的消息而受感染的节点,并且阻止可能因发送与对网络的入侵相关联的大量消息的而被感染的节点。此外,该系统有助于阻止受到来自被感染的节点(其因从网络接受或接收可能与入侵相关联或由入侵引起的大量消息而被感染)的攻击的节点。具体而言,安全系统的鲁棒性代理查看出站(outbound)消息(来自节点的),以便基于网络的配置来确定这些消息是否与网络上的期望类型的消息一致,例如,以便确定出站消息是否是具有根据配置的网络通信内的预期的特征集合的消息。在一些情况下,安全系统可以被配置为:传递具有某些类型(或具有某些特征集合)的所有消息,这些消息可以包括具有被认为对网络操作来说是需要的或必要的类型的消息。在其它情况下,安全系统可以被配置为:拒绝或过滤掉具有某些类型或具有某些特征的所有消息,这些消息不应当在根据配置的网络的正常操作期间出现,并且因此这些消息可能是由系统内的恶意软件或被感染的节点生成的。在第三种情况下,安全系统可以被设置为:有条件地传递具有某些类型或具有某些特征集合的消息,直到某个体量或等级为止,然后以某种方式对那些消息进行过滤。在这种情况下,有可能根据配置预期某个有限数量的第三类型的消息在网络内出现,但是这些消息是可疑的,因为仅预期某个等级或体量的这些消息。在特定时间段期间存在超过某个等级或体量的这种类型的消息因此可以指示这些消息是由恶意软件或另一类型的感染或对网络的入侵生成的。如果检测到该体量,则鲁棒性代理可对所有这些消息进行过滤,或者可传递这些消息中有限数量的消息同时过滤其它消息以使体量保持在某个等级以下,可以通知用户,可以运行入侵检测软件,和/或可以将生成消息的设备从网络链路断开以阻止被感染的设备接入网络。
在任何情况下,安全系统的鲁棒性模块中的每个鲁棒性模块可被配置为使用配置文件来进行操作,其中配置文件指定了要传递、要过滤或要传递给体量过滤器的消息的类型或特征,体量过滤器中各种类型的消息的特别允许的体量,当达到或超过体量阈值时鲁棒性代理将采取的动作等等。该配置或与其相关联的规则可以存储在附接到鲁棒性代理或鲁棒性代理在其中操作的设备的只读闪存中,这使得配置数据在鲁棒性代理的操作期间不可改变;或者可以存储在读/写存储器中,这使得配置是可更改,并且因此在网络操作期间更加鲁棒,从而允许安全系统在操作期间基于对网络作出的改变而重新配置。然而,在后一种情况下,配置文件可能更容易受到恶意软件(其可操作为感染配置文件)的感染。在一些情况下,规则中的某些部分可以存储在闪存中,而规则中所使用的一些数据或列表可以用可配置的方式存储在其它类型的存储器中。
概括地说,鲁棒性代理的配置可以基于每个鲁棒性代理所附接到的网络位置和设备而变化。此外,通信网络中可以提供任意数量的鲁棒性代理以组成网络安全系统。尽管在一些情况下这可能是令人期望的,但是网络中的每个设备拥有其自己的鲁棒性代理并非总是必要的。同样地,由于网络节点的相对静态的配置,以及工厂或工厂控制网络中所使用的过程或工业控制或维护系统配置的先验性质,因此每个鲁棒性代理的配置可以被设置为充分地进行操作。
在一个或多个实施例中,一种用于通信网络中的安全系统,所述通信网络具有经由通信链路通信地耦合的多个网络节点,所述安全系统包括一个或多个消息模块接口,其中,所述消息模块接口中的每个消息模块接口在所述网络节点中的一个网络节点处在处理器上执行,以检测所述网络节点处的消息业务以及确定所述消息中的每个消息的一个或多个消息特征。所述安全系统还包括规则存储器,所述规则存储器存储一个或多个逻辑规则,并且所述安全系统包括一个或多个过滤单元,所述一个或多个过滤单元存储在处理器中并在处理器上执行,并且耦合到所述规则存储器,所述过滤单元中的每个过滤单元包括:第一过滤模块,以及第二过滤模块。在该情况下,所述第一过滤模块在所述处理器上执行,并且基于所述消息特征信息来应用存储在所述规则存储器中的一个或多个逻辑规则,以传递所述消息、暂停所述消息、或者将所述消息传递给所述第二过滤模块。此外,所述第二过滤模块对具有消息特征的特定的集合的消息的数量进行计数以确定消息计数,并且基于所述消息计数来传递具有消息特征的所述特定集合的消息或暂停具有消息特征的所述特定集合的消息。
如果期望的话,所述消息计数可以包括在特定时间段内接收的具有消息特征的所述特定集合的特定数量的消息。此外,所述规则存储器可以是只读存储器、读/写存储器、或者包括第一部分和第二部分的存储器,其中所述第一部分是只读存储器,所述第二部分是读/写存储器。此外,所述规则存储器可以是闪存,例如能够拆卸的闪存。
此外,所述安全系统可以包括记录模块,所述记录模块耦合到所述第一过滤模块和/或所述第二过滤模块,所述记录模块在所述处理器上执行,以便接收关于一个或多个暂停的消息的信息,并且将关于所述一个或多个暂停的消息的信息存储在日志或日志文件中。所述记录模块可以包括通信接口,所述通信接口向用户发送由暂停的消息构成的一个或多个日志,并且可以存储关于所述暂停的消息的元数据。所述安全系统还可以或替代地包括耦合到所述第二过滤模块的告警生成模块,其中,所述告警生成模块在所述处理器上执行,以便当所述消息计数达到预先确定的等级时向用户发送告警。所述告警生成模块还可以操作为:当所述消息计数达到预先确定的等级时,将设备(例如,在所述网络上的生成大量的特定类型的消息或者具有特征的特定集合的消息的任何设备)从所述通信网络断开。此外,所述一个或多个过滤单元可以包括第一过滤单元和第二过滤单元,其中所述第一过滤单元接收并分析从所述通信链路进入所述网络节点的消息,所述第二过滤单元接收并分析所述网络节点中生成的并经由所述通信链路发送给另一个网络节点的消息。
在一个或多个其它实施例中,一种保护通信网络中的消息业务的安全的方法,包括:在连接到所述通信网络的设备处接收一系列消息;以及经由所述设备处的处理器来分析所述一系列消息中的每个消息,以确定所述消息中的每个消息的一个或多个消息特征。所述方法还包括:基于存储在所述设备处的逻辑规则集合,经由所述设备处的所述处理器来对所述消息中的每个消息进行过滤,所述过滤包括:传递具有消息特征的一个或多个第一集合的消息,暂停具有消息特征的一个或多个第二集合的消息,以及对具有消息特征的一个或多个第三集合的消息进行计数。此外,所述方法还包括:基于与消息特征的所述一个或多个第三集合相关联的计数,来传递或暂停具有消息特征的所述一个或多个第三集合的消息。
在另外的一个或多个实施例中,一种通信网络包括:通信链路以及多个网络节点,其中,所述网络节点中的每个网络节点包括耦合到所述通信链路的网络设备,并且具有处理器和通信栈,其中所述通信栈在所述处理器上执行,以便对来自和去往所述通信链路的消息进行处理。此外,所述多个网络节点中的每个网络节点还包括一个或多个消息模块接口,其中,所述消息模块接口中的每个消息模块接口在网络节点处在处理器上执行,以检测来自所述通信栈或来自所述通信链路的消息业务,以便确定所述消息中的每个消息的一个或多个消息特征。所述多个网络节点中的每个网络节点还包括规则存储器并且包括过滤模块,其中所述规则存储器存储一个或多个逻辑规则,所述过滤模块存储在处理器中并在处理器上执行并且耦合到所述规则存储器,所述过滤模块使用存储在所述规则存储器中的逻辑规则集合来传递具有消息特征的一个或多个第一集合的消息,暂停具有消息特征的一个或多个第二集合的消息,以及对具有消息特征的一个或多个第三集合的消息进行计数。所述过滤模块基于与消息特征的所述一个或多个第三集合相关联的计数,来进一步传递或暂停具有消息特征的一个或多个第三集合的消息。
附图说明
图1描绘了可以用于过程控制网络中以限制对网络的入侵的影响的可配置鲁棒性代理。
图2是其中可以实现一个或多个基于鲁棒性代理的安全系统的、具有多个互连通信网络的过程或工业工厂的示例性框图。
图3是图2的工厂网络中的一个工厂网络的示例图,其具有分布式过程控制系统和过程自动化网络的形式,具有包括操作者和维护工作站、服务器以及控制器节点的各个网络节点,其中,使用图1的鲁棒性代理的安全系统操作为限制被感染或被损坏的节点的影响以及潜在地检测被感染或被损坏的节点。
具体实施方式
概括地说,本文所描述的网络安全系统通过以下操作来实现威胁检测和威胁修复:对进入和/或退出通信网络上的一个或多个设备的网络业务进行分析,以便基于一个或多个消息特征(例如,消息类型、发送方、接收方、发送方/接收方对等)来确定是否应当传递、过滤还是进一步处理该消息,均出于执行网络安全的目的。在一些情况下,进一步处理可以包括:在特定时间段内对具有特定类型(或其它特征集合)的消息的体量进行计数或检测。进一步处理可引起具有特定类型或其它特征集合的消息被传递或隔离(例如,删除),和/或可以引起采取某种其它动作,例如在节点处运行入侵检测软件,使设备脱离网络以保护网络不受设备内的感染等。本文所描述的安全系统有效地执行,这是因为工业系统或过程控制网络配置的先验性质使得基本消息业务能够基于预期的或从特定网络配置得到的已知的业务统计来进行分析(并且能够是相对已知和静态的)。也就是说,过程控制、工业系统或工厂自动化网络中的网络通信的配置通常是在通信网络的实现或操作之前相当地公知的,并且因此网络业务的基本配置往往不会在这些网络的使用或操作期间显著改变。相反,网络通信业务往往在通信网络的操作期间是相当地静态的(在统计意义上),并且因此网络消息或消息模式的类型或特征的改变(尤其是在统计意义上)可以指示对网络的入侵(该入侵并非原始或期望配置的一部分)。
概括地说,具有例如以太网接口的工业控制系统设备经受可能对设备行为产生不利影响的各种网络业务模式和状况。如本文所描述的安全系统能够利用指定网络上的特定消息业务模式(例如,进入或退出网络上的设备)的规则来配置或更新。然而,控制系统操作者需要面对异常业务时鲁棒的设备,并且因此本文所描述的安全系统可以在运行中(onthe fly)被配置为:恰当地地检测和处理业务以阻止不利的设备行为。在一些情况下,规则可以是动态可配置的,规则可具有基于状况或其它规则的依赖性以提供预测性保护,规则可动态地调用其它规则以提供高效、鲁棒的操作,并且规则可以适于特定安装中特定的业务模式。此外,本文所描述的安全系统可以自动地创建规则,以在网络操作时防范动态发现的不利业务模式和/或状况。此外,在一些情况下,安全系统能够通过分析退出这些设备的出口业务并丢弃不符合所允许的业务规则或消息类型的异常业务,来识别和阻止来自被损坏的控制系统设备或节点的攻击,从而阻止使用控制系统中的这些设备来启动恶意网络攻击。
更具体地说,本文所描述的安全系统包括可配置鲁棒性代理,其位于通信网络(在该通信网络上执行安全性)的一个或多个节点处。在一般意义上,可配置鲁棒性代理操作为基于以下理论来管理(例如,限制)进入和/或退出通信节点的消息业务流:具有特定类型的、具有某些预先定义的特征的消息流或模式可以指示在节点中进行操作的(或者在某个其它节点中并攻击该节点的)恶意软件,或者可以以其它方式指示该节点上或来自该节点的攻击。鲁棒性代理操作为:通过对流入或流出节点的消息中的每个消息进行分析以确定消息是否具有(1)预期的,(2)非预期的,或者(3)预期达到某个程度但仅处于有限的体量或等级的特征,来限制这种攻击的影响。如果传入消息具有网络通信中预期的特征集合(例如,消息类型、某个发送方或接收方或发送方/接收方对等),则鲁棒性代理可简单地传递消息(当消息是来自网络的传入消息时将消息传递到节点中;或者当消息是来自节点的传出消息时,将消息传递到网络链路上)。如果传入消息具有接收或发送设备处的网络通信中非预期的特征集合(例如,消息类型、某个发送方或接收方或发送方/接收方对等),则鲁棒性代理可以删除、过滤或隔离消息,以阻止消息到达节点中的通信栈的较高等级(当消息是来自网络的传入消息时)或者阻止消息放置在网络链路上(当消息是来自节点的传出消息时)。如果传入消息具有网络通信中在某种程度上预期的但仅处于有限的等级或体量的特征集合(例如,消息类型、某个发送方或接收方或发送方/接收方对等),则鲁棒性代理可以对该类型或具有该特征集合的消息进行计数,以确定特定时间段上通过鲁棒性代理的该类型或具有该特征集合的消息的数量。
在这种情况下,如果体量低于特定等级,则鲁棒性代理可以传递消息;并且如果体量高于特定等级或阈值,则鲁棒性代理可以阻挡或隔离消息。此外,如果体量超过特定等级(其指示节点受到攻击或具有正在攻击网络的恶意软件或感染),则鲁棒性代理可采取进一步动作来保护通信网络。例如,当鲁棒性代理所在的节点正在向网络发出特定类型的大量消息时,鲁棒性代理可以将该鲁棒性代理所在的节点断开。替代地,当鲁棒性代理检测到来自另一个节点的攻击(基于来自该另一个节点的可疑消息的数量或体量)时,鲁棒性代理可向该另一个节点发送信号或消息(例如,通过通信网络),以使得该另一个节点将其自身从网络断开。在这些或其它情况下,鲁棒性代理可以向用户或操作者通知潜在攻击以及攻击的一些细节,可以调用网络的一个或多个节点处的恶意软件或入侵检测应用,以确定在这些节点处是否存在病毒、恶意软件或其它入侵,或者可以采取任何其它期望的动作。
如果期望的话,鲁棒性代理可以是可配置的,以使得鲁棒性代理能够更适合于其所在的特定网络环境,其所在的特定节点等。具体而言,鲁棒性代理可以是基于进入和退出特定节点的预期消息业务可配置的,其中预期消息业务可以基于节点类型(例如,控制器节点、用户接口节点、数据库节点等)、基于节点的位置等而变化或不同。此外,鲁棒性代理的可配置性质可以使得鲁棒性代理能够基于节点处检测到的消息业务的统计数据,或者响应于通信系统中的一个或多个节点的配置的改变来更好地进行操作(例如,被配置)。
图1示出了可用于通信网络中以执行上面所描述的功能的示例性鲁棒性代理或模块10。具体而言,鲁棒性模块10设置在网络节点(例如,网络设备)和网络链路12的物理层的接口处。更具体地说,鲁棒性模块10可耦合在连接到网络链路12的网络驱动器(例如,以太网驱动器14)与网络设备的网络通信栈16的较高层之间。如图1中所示,鲁棒性模块10可以包括入站(in-bound)语法过滤器模块20和入站体量过滤器模块22,其中入站语法过滤器模块20和入站体量过滤器模块22耦合在驱动器14与网络栈16之间,以对从网络链路12发送给网络设备的消息进行处理。鲁棒性模块10还可以包括出站语法过滤器模块30和出站体量过滤器模块32,其中出站语法过滤器模块30和出站体量过滤器模块32耦合在网络栈16与驱动器14之间,以对从网络设备(网络通信栈16)发送给网络链路12的消息进行处理。鲁棒性模块10还包括:丢弃消息记录块40,其连接到模块20、22、30和32中的每个模块;规则存储器42,其存储可由模块20、22、30和32中的一个或多个模块实现的配置规则(例如,逻辑规则);以及规则构建器块44,其可用于构建(例如,建立或改变)规则存储器42中的规则。此外,鲁棒性模块10可以包括告警生成器46,其可以操作为:当体量过滤器22或32中的一个体量过滤器检测到特定类型的消息(例如,具有特征的特定集合)的极大体量时,向用户提供告警。告警生成器46还可以或替代地执行其它动作,例如启动设备或网络的不同节点处的恶意软件或病毒检测软件,将设备从网络断开,或者向网络的另一个节点处的鲁棒性代理发送消息以使该节点将其自身从网络断开等。
在操作期间,从通信链路12接收消息,并在驱动器14处对消息进行处理,以便例如确定链路12上的消息中的每个消息是否寻址到特定网络设备或者寻址到该设备内或与该设备相关联的地址或应用。当然,驱动器14可以是任何已知或期望类型的网络驱动器(例如,如图1所示的以太网驱动器),并且可以任何已知的方式操作。与网络设备关联的消息然后传递到入站语法过滤器模块20的输入49,其中入站语法过滤器模块20对这些消息进行分析以确定消息的一个或多个特征。这些特征可以包括:消息的类型(例如,UDP、TCP等)、与消息相关联的发送方和/或接收方、消息长度、奇偶校验、安全类型、消息的优先级、发送或接收消息的端口、或者任何其它期望的信息特征。这些一个或多个消息特征通常可在消息的报头和/或报尾或者其它封装部分中的信息中找到或根据所述信息来确定,虽然消息的有效载荷或数据部分的特征也可被检查和用于过滤。
概括地说,入站语法过滤器模块20将确定每个消息的特征的一个或多个集合(这些特征的集合可存储在规则存储器42中或由规则存储器42提供,或者其可硬编码到语法模块过滤器20中)。在确定了与消息相关联的特征的一个或多个集合之后,语法过滤器模块20然后将应用一个或多个逻辑规则(其基于这些所确定的特征来操作)来确定如何进一步处理消息。具体而言,基于所确定的消息特征和规则存储器42中的规则,语法过滤器模块20可以将消息(被认为是安全的或预期的消息)从输出50直接传递到鲁棒性模块10的输出,并因此传递到网络设备的网络通信栈16的下一层上,在该处,将以任何标准的方式对消息进行解码、处理并传递到网络设备中的恰当接收方。在其它情况下,基于所确定的消息特征和规则存储器42中的规则,语法过滤器模块20可以将消息(被认为是不安全的或绝不允许在网络中的)从输出52传递到丢弃业务记录块40,其中丢弃业务记录块40可以记录该消息、关于该消息的元数据、或者关于该消息的其它信息,以便将来用于分析网络入侵、改变规则存储器42中的规则,以执行更好或更精确的过滤等。在其它情况下,基于所确定的消息特征和规则存储器42中的规则,语法过滤器模块20可以将消息(被认为是潜在不安全的)从输出54传递到入站体量过滤器模块22的输入55。
概括地说,入站体量过滤器模块22对具有指示这些消息可能但并不一定合法的特征的消息进行处理,这是因为这些消息可能具有某种类型或者具有用于合法网络业务并且也由典型的恶意软件或病毒用来(尤其是大量地)攻击网络的特征。入站体量过滤器模块22接收这些消息(如由入站语法过滤器模块20检测到的)并对这些消息进行计数(使用一个或多个计数器),并且另外可以跟踪在特定时间段上或者在过去的特定长度的时间上接收了多少此类消息。因此,入站体量过滤器模块22确定具有消息特征的某个集合的消息的消息业务的体量(例如,特定时间段上或特定时间段中的消息的数量)。当然,入站体量过滤器模块22可以跟踪针对消息特征的任意数量的不同集合的消息的体量。
在任何情况下,如果某一消息类型(即,具有特征的特定集合的消息)的当前体量在预先确定的阈值(该阈值可存储在规则存储器42中)以下,则入站体量过滤器模块22可以经由输出56将消息传递给栈16以用于网络设备中的处理。另一方面,如果某一消息类型(即,具有特征的特定集合的消息)的当前体量在预先确定的阈值(该阈值可存储在规则存储器42中)以上,则入站体量过滤器模块22可以通过例如经由输出57将消息提供给丢弃业务记录块40来阻挡或丢弃该消息。这里,块40再次可以记录消息和/或关于消息的元数据,以确定关于这些被阻挡的消息的统计数据。此外,入站体量过滤器模块22可以将某一消息类型的当前体量与多个阈值进行比较,或者可以使用多个阈值来确定要采取的动作。例如,当在体量过滤器模块22处接收到消息并且当前检测到的该类型的消息的体量在第一(例如,较低)阈值以下,则体量过滤器模块22可将该消息传递到网络设备的栈16。然而,当在体量过滤器模块22处接收到消息并且当前检测到的该类型的消息的体量大于第一(例如,较低)阈值但小于第二(例如,较高)阈值,则体量过滤器模块22可以通过将消息发送给记录块40来阻挡该消息。然而,当在体量过滤器模块22处接收到消息并且当前检测到的该类型的消息的体量大于第二(例如,较高)阈值,则体量过滤器模块22可以阻挡该消息(通过将该消息发送给记录块40),并且还可以执行某种进一步的动作来保护网络。例如,当超过第二或较高的体量阈值时,体量过滤器22可以与告警生成器46进行通信,其中告警生成器46可以向用户发送指示网络设备上的潜在攻击的告警,可以将网络设备从网络链路12断开以保护设备不受攻击,可以向另一个设备(例如,正在发送消息的设备)发送消息以使该设备将其自身从网络断开以保护网络,可以启动设备内的恶意软件或病毒检测软件等。当然,可建立任意数量的不同的体量等级阈值,以提供或使得告警生成器46在网络中采取不同的动作。
如图1中所示,鲁棒性模块10还包括由出站语法过滤器模块30和出站体量过滤器模块32限定的出站过滤路径。在这种情况下,出站语法过滤器模块30与入站语法过滤器模块20类似地操作,并且出站体量过滤器模块32与入站体量过滤器模块22类似地操作,除了模块30和32对从通信栈16接收的经由网络链路12发送给另一个设备的出站消息进行操作。此外,虽然模块30和32可以分别使用与模块20和22所使用的规则相同的规则,但模块30和32可以使用不同的规则,以允许对出站消息的与应用于入站消息的过滤操作不同的过滤操作。因此,模块30和32以与上文针对模块20和22(模块20和22对入站消息进行操作)所描述的基本相同的方式,一起对出站消息进行操作,以便由此保护网络上的其它设备不受位于鲁棒性模块10所在的节点或设备中的潜在恶意软件和感染的影响。出站模块30和32因此可以操作为检测位于与鲁棒性代理10相关联的设备中的恶意软件、病毒或其它入侵源的存在,并且可以操作为与告警生成器46进行通信,以便当例如体量过滤器32检测到从设备发送预先确定的等级或体量的特定类型或配置的出站消息时,使告警生成器向用户发送告警和/或将该设备从网络断开。
在操作期间,记录块40可以操作为接收、分析和跟踪丢弃的消息。具体而言,记录块40可确定关于所丢弃的消息中的每个消息的各种元数据,包括定时、发送方/接收方、消息类型、消息长度、消息在语法或体量过滤器模块处被丢弃的原因等,并且可为消息创建日志。块40可以为传入和传出的消息,为每种类型的消息,为消息的每个发送方/接收方等创建单独的日志。当然,记录块40可以创建任何其它类型的日志,并且可以根据请求、周期性地、日志变成了某个长度、或响应于任何其它期望的触发事件来向用户接口、数据库设备或任何其它设备发送这些日志。此外,如果期望的话,记录块40可以基于预先配置和硬编码的规则或基于来自规则列表42的规则,来记录信息和/或发送关于所丢弃的消息的经记录的信息。以此方式,所丢弃的消息的记录也可以是可配置的。如果期望的话,记录块42可以通过网络链路12输出日志,或者可以经由任何其它到鲁棒性模块10的通信连接(例如,本地连接)来输出日志。
同样地,如上文所指示的,可配置的规则列表42可存储用于入站语法过滤器模块20、入站体量过滤器模块22、出站语法过滤器模块30、出站体量过滤器模块32、记录块40和告警生成器46中的每一个的规则。这些规则是经由规则构建器模块44可配置的,其中规则构建器模块44可以与另一个应用进行通信(经由网络链路12或经由到鲁棒性模块10的任何其它通信连接,例如蓝牙连接、无线互联网连接、来自手持设备的间歇性硬接线连接等),以接收用于构建存储在规则列表42中的规则的一个或多个规则集合。另一个应用可以是规则构建器应用,其存储在网络链路12上的用户接口(例如,配置接口)中,或存储在经由例如硬接线或无线通信连接等间歇性地连接到模块10的手持设备中。如果期望的话,规则构建器44可以是到模块10的通信接口,以实现对存储在规则列表42中的规则的在线或运行时配置,以便由此使得鲁棒性模块10能够根据网络上的新配置、消息业务的变化的统计数据等来进行重新配置。然而,如果期望的话,规则构建器44可以是写保护的闪存,其可以在设备内部或者可以插入设备(鲁棒性模块10位于该设备中)的接口(例如,USB端口或其它外部存储器端口)。由于这样的闪存在使用期间不是可写的,因此存储在闪存上的规则不能被改变,这保护鲁棒性模块10不能经由规则列表42的改变而被感染。也就是说,为了改变规则列表42,需要移除闪存44并且利用其上的新规则来替换以用于鲁棒性模块10。虽然规则列表42的这种配置使得鲁棒性模块10在面对入侵时更加安全,但其也使系统的运行时可配置性较差。当然,如果期望的话,规则存储器42可以被并入与规则构建器44相同的模块中。在一种情况下,规则列表42中的规则中的一些规则可以存储在闪存中,并且因此不是可配置的,而这些规则可以使用存储在存储器中(例如规则列表42中)的列表,其在操作期间可以改变,以便由此允许鲁棒性模块10的某种运行时配置。仅出于示例的目的,下面的表1提供了可以用于鲁棒性模块的入站和出站语法和体量过滤器中的每一个的示例性规则集合。表1还针对每个规则定义了该规则是否存储在闪存中,该规则是否是可配置的,该规则是否使用视窗操作系统实现方式,以及该规则是否用于网络中的嵌入式设备(例如,控制器)。当然,表1仅提供了可用于特定鲁棒性模块10的规则集合的单个示例,并且任何其它类型和数量的规则可用于任何特定的鲁棒性模块10。
Figure BDA0000995213420000161
Figure BDA0000995213420000171
Figure BDA0000995213420000181
Figure BDA0000995213420000191
表1
仅通过举例的方式,图2和图3示出了示例性工厂网络,其中可以安装和使用由图1的鲁棒性模块10中的一个或多个鲁棒性模块组成的网络安全系统。具体而言,图2示出了工厂或工业通信系统110,其包括多个不同但互连的通信网络112、114、116和118,其中每个通信网络具有各种网络节点。图2的通信网络112可以是商业通信网络,其包括由通信总线124互连的多个节点122A-122H,其中通信总线124可以是例如以太网总线或者任何其它有线或无线通信总线或网络。节点122A、122B可以包括例如商业应用或程序在其上运行的计算机、服务器、工作站等,并且节点122C可以是例如数据库,其存储了商业数据、工业工厂配置数据、或者关于工厂的任何其它期望数据。同样地,节点122D、122E和122F可以是网关节点,其将网络112分别连接到其它通信网络114、116、118,并且允许网络间通信。此外,节点122G可以是将网络112连接到互联网、云、或者其它广域网以使得网络112能够与远程服务器、工厂或其它计算机进行通信的网关节点。
在该示例中,网络114、116和118是工厂(例如,过程工厂或工业工厂)控制网络,其包括由有线或无线通信总线或网络链路互连的各种节点。工厂控制网络114、116、118中的每个工厂控制网络在其节点处可以包括各种类型的设备中的任意设备。例如,工厂控制网络114和116被示出为有线通信网络,其均包括一个或多个用户接口设备130、数据库或历史数据132(其可以存储用于网络114和/或116的工厂控制网络配置数据)、经由通信总线136(在该例子中,具有以太网通信总线的形式)互连的一个或多个过程控制器节点134、以及一个或多个服务器或处理器节点138。过程控制节点134可以包括一个或多个过程控制器,其经由一个或多个有线或无线子网140通信地耦合到其它设备,例如输入/输出(I/O)和现场设备(例如,传感器、阀、受控设备等)。子网140中的现场设备可以采取例如阀、传感器、变送器或其它测量或控制设备(其对工厂中的某种参数或过程变量进行测量,或者执行与工厂内的材料操作或材料流相关的某种物理控制动作)的形式。现场设备子网140可以例如使用任何期望的过程控制通信协议或范式,例如高速可寻址远程变送器
Figure BDA0000995213420000201
协议、
Figure BDA0000995213420000202
Fieldbus协议、Profibus协议,CAN协议等。此外,现场设备子网140可以实现为有线或无线网络(例如,
Figure BDA0000995213420000203
网络)。网络114和116还可以包括节点122D、122E处的网关设备,这些网关设备将网络114和116连接到网络112,连接到互联网或其它WAN等。当然,这些网关设备可以提供防火墙和其它安全特征或应用。
以类似的方式,通信网络118被示出为可以使用无线通信协议(例如,无线以太网协议、
Figure BDA0000995213420000204
协议、ISA100无线协议等)的无线通信网络。通信网络118被示出为包括各种设备,例如用户接口设备或工作站130、数据库132、过程控制器134、服务器136、现场设备子网140、网关设备139等。当然,任意数量的这些类型和其它类型的设备可以位于通信网络114、116和118的各个节点处。将理解的是,网络112、114、116、118内的任何或所有网络设备可以包括一个或多个计算机可读存储器和处理器,在其上可以存储和执行各种软件模块,包括与图1和本文所描述的鲁棒性模块10相关联的模块中的任意模块。
重要的是,可以在图2的网络112、114、116和118中的任何和所有网络中实现本文所描述的安全系统,以限制对这些网络的入侵(具有例如在这些网络的各个节点中运行的恶意软件或其它未经授权的应用的形式)的影响。概括地说,针对网络112、114、116和118中的每个网络,或者甚至针对网络112、114、116、118中的任何网络中的每个节点,可以存在单独的基于鲁棒性模块的安全系统。另一方面,在一些情况下,可以使用单个安全系统来覆盖网络112-118中的多个网络,例如网络114和116,或者网络112和114等。
举例而言,如图2的网络114、116和118中大体上示出的,基于鲁棒性模块的安全系统包括:位于这些网络中每个网络的每个节点的接口处(例如,在通信栈中)的鲁棒性模块210以及这些网络附接到的通信链路。这里,鲁棒性模块210(在本文中也被称为运输中(intransit)业务分析代理)可以具有上述图1的鲁棒性模块或代理10的形式。另外,虽然图2示出了每个网络的每个节点处的鲁棒性模块,但在所保护的网络的每个节点中提供单独的鲁棒性模块可能不是必要的。相反,本文所描述的安全系统可以使用网络中的一个或多个鲁棒性模块,而不必具有位于网络的每个节点处的鲁棒性模块。例如,安全系统可以包括网络的嵌入式设备(例如,控制器)的网络接口处的鲁棒性模块210,而在更加复杂的设备(例如,用户接口设备)处不具有鲁棒性模块210。在任何情况下,鲁棒性模块210可以以任何期望的方式安装在网络中的任何期望的设备处,并且使用这些鲁棒性模块的安全系统不限于本文中具体描述的示例。此外,安全系统可以包括配置和用户接口支持模块211,其位于网络112、114、116和118的节点中的一个或多个节点中。用户接口支持和配置应用211存储在计算机可读存储器中,并在这些设备的处理器上执行,以便向用户提供对鲁棒性模块210中的任意鲁棒性模块的规则列表42中的规则进行配置的能力,可以使得用户能够查看所保护的网络的鲁棒性模块210中的任意或所有鲁棒性模块的所丢弃的业务日志,可以使得用户能够看到什么设备或节点离线或当前围绕发送或接收大量可疑的消息业务而受怀疑,并且可以提供使得用户能够对鲁棒性模块210中的任意鲁棒性模块进行配置以提供更好或增强的安全性的环境。
概括地说,鲁棒性模块210中的每个鲁棒性模块根据该模块内的规则来查看或分析入站和出站消息,以便允许消息传递、阻挡可疑消息和/或对消息进行计数和执行体量过滤。鲁棒性模块210可以独立地操作,或者可以在特定的网络中或者甚至跨越网络进行协作,以提供经协作的消息过滤。
举另一个示例,图3更加详细地示出了图2的通信网络114。在该示例中,通信网络114包括有线以太网总线200,有线以太网总线200可以包括一个或多个交换机202,其互连各种设备,例如网关设备(例如,到其它网络的网关226、到外部系统(例如,到互联网)的网关228)、一个或多个用户接口设备或工作站230、配置数据库232、服务器233、以及两个过程控制节点234A和234B。这里,第一过程控制节点234A包括一个或多个冗余过程控制器260,其经由输入/输出(I/O)卡236和238通信地连接到有线现场设备215-222,并且经由无线网关235和网络主干200通信地连接到无线现场设备240-258。在这种情况下,无线网关235是网络114的第二控制节点234B。然而,在另一个实施例中,节点234A处的控制器260可以使用不同于主干200的通信网络(例如通过使用另一个有线或无线通信链路或I/O模块)通信地连接到无线网关235。
控制器260(举例而言,其可以是由艾默生过程管理公司(Emerson ProcessManagement)出售的DeltaVTM控制器)可以操作为:使用现场设备215-222和240-258中的至少一些现场设备来实现一个或多个批处理过程或连续过程、维护应用,安全系统应用等。控制器260可以使用例如与标准4-20ma设备协议和/或任何智能通信协议(例如,
Figure BDA0000995213420000221
Fieldbus协议、
Figure BDA0000995213420000222
协议、
Figure BDA0000995213420000223
协议等)相关联的任何期望的硬件和软件通信地连接到现场设备215-222和240-258。另外地或替代地,控制器260可以经由输入/输出(I/O)卡236、238,经由其它类型的连接与现场设备215-222和240-258中的至少一些现场设备通信地连接。在图3中所示出的网络114中,控制器260、现场设备215-222和I/O卡236、238是有线设备,并且现场设备240-258是无线现场设备。当然,有线现场设备215-222和无线现场设备240-258可以符合任何其它期望的标准或协议,例如任何有线或无线协议,包括将来开发的任何标准或协议。
图3的控制器260包括处理器270,处理器270实现或监督(存储在存储器272中的)一个或多个过程控制例程(其可以包括控制环路)。处理器270可以与现场设备215-222和240-258以及与通信地连接到网络主干或链路200的其它节点进行通信,以便执行控制活动或其它活动,例如维护、监测和安全系统活动。应当注意的是,如果期望的话,控制例程或模块中的任何控制例程或模块在其中可以具有由不同的控制器或其它设备来实现或执行的部分。同样地,要在过程控制系统内实现的控制例程或模块可采取任何形式,包括软件、固件、硬件等。控制例程可以用任何期望的软件格式来实现,例如使用面向对象的编程、梯形逻辑、顺序功能图、功能块图、或者使用任何其它软件编程语言或设计范式。控制例程可以存储在任何期望类型的存储器(例如,随机存取存储器(RAM)或只读存储器(ROM))中。同样地,控制例程可硬编码到例如一个或多个EPROM、EEPROM、专用集成电路(ASIC)或者任何其它硬件或固件元件中。因此,控制器260可以被配置为以任何期望的方式来实现控制策略或控制例程。
在一些实施例中,控制器260使用通常被称为功能块的对象来实现控制策略,其中每个功能块是整个控制例程的对象或其它部分(例如,子例程),并且结合其它功能块来操作(经由被称为链路的通信),以实现过程控制系统内的过程控制环路。基于控制的功能块通常执行以下功能中的一个功能:输入功能(例如与变送器、传感器或其它过程参数测量设备相关联的输入功能)、控制功能(例如与执行比例、积分、微分(PID)、模糊逻辑等的控制的控制例程相关联的控制功能)、或者输出功能(其控制某个设备(例如,阀)的操作以执行过程控制系统内的某种物理功能)。当然,存在混合类型和其它类型的功能块。功能块可存储在控制器260中并且由控制器260执行,当这些功能块用于标准4-20ma设备和一些类型的智能现场设备(例如HART设备)或者与这些设备相关联时情况通常如此;或者可以存储在现场设备自身中并且由现场设备自身来实现,Fieldbus设备的情况就是如此。控制器260可以包括可实现一个或多个控制环路的一个或多个控制例程280。每个控制环路通常被称为控制模块,并且可以通过执行这些功能块中的一个或多个功能块来执行。
有线现场设备215-222可以是任何类型的设备,例如传感器、阀、变送器、定位器等,而I/O卡236和238可以是符合任何期望的通信或控制器协议的任何类型的I/O设备。在图3中所示出的实施例中,现场设备215-218是通过模拟线路或组合的模拟和数字线路与I/O卡226进行通信的标准4-20ma设备或HART设备,而现场设备219-222是使用
Figure BDA0000995213420000241
Fieldbus通信协议通过数字总线与I/O卡238进行通信的智能设备(例如,
Figure BDA0000995213420000242
Fieldbus现场设备)。但是在一些实施例中,有线现场设备215-222中的至少一些有线现场设备和/或I/O卡236、238中的至少一些I/O卡可以使用大数据网络与控制器260进行通信。在一些实施例中,有线现场设备215-222中的至少一些有线现场设备和/或I/O卡236、238中的至少一些I/O卡可以是过程控制系统网络114的节点。
在图3中所示出的实施例中,无线现场设备240-258使用无线协议(例如
Figure BDA0000995213420000243
协议)在无线网络290中进行通信。这种无线现场设备240-258可以直接地与网络114中的也被配置为无线地进行通信(例如,使用无线协议)的一个或多个其它节点进行通信。为了与未被配置为无线地进行通信的一个或多个其它节点通信,无线现场设备240-258可以使用连接到通信主干200或连接到另一个过程控制通信网络的无线网关235。在一些实施例中,无线现场设备240-258中的至少一些无线现场设备可以是过程控制系统网络114的节点。
无线网关235提供无线设备240-258、有线设备215-222、和/或过程控制网络114的其它节点之间的通信耦合。在一些情况下,无线网关235通过在有线和无线协议栈的较低层中使用路由、缓存和定时服务(例如,地址转换、路由、分组分段、优先化等)、同时隧穿有线和无线协议栈的一个或多个共享层,来提供通信耦合。在其它情况下,无线网关235可在不共享任何协议层的有线和无线协议之间转换命令。除了协议和命令转换之外,无线网关235还可以提供由与无线网络290中实现的无线协议相关联的调度方案的时隙和超帧(在时间上相等间隔的通信时隙的集合)所使用的同步时钟。此外,无线网关235可以为无线网络290提供网络管理和管理性功能,例如资源管理、性能调整、网络故障缓解、监控业务、安全性等。
类似于有线现场设备215-222,无线网络290的无线现场设备240-258可以执行过程工厂内的物理控制功能,例如,打开或关闭阀,或者对过程参数进行测量,或者执行其它功能。然而,无线现场设备240-258被配置为使用网络290的无线协议来进行通信。因此,无线现场设备240-258、无线网关235和无线网络290的其它无线节点通常是无线通信分组的生产者和消耗者。
在某些场景中,无线网络290可以包括非无线设备。例如,图3的现场设备248可以是传统4-20mA设备,并且现场设备250可以是传统有线HART设备。为了在网络290内进行通信,现场设备248和250可以经由无线适配器(WA)252a或252b连接到无线通信网络290。另外,无线适配器252a、252b可以支持其它通信协议,例如
Figure BDA0000995213420000251
Fieldbus、PROFIBUS,、DeviceNet等。此外,无线网络290可以包括一个或多个网络接入点255a、255b,这些网络接入点可以是与无线网关235进行有线通信的单独的物理设备,或者可以是在无线网关235内作为一体化设备提供的。无线网络290还可以包括一个或多个路由器258,以将无线通信网络290内来自一个无线设备的分组转发到另一个无线设备。无线设备240-258可以通过由图3中的虚线所示出的无线通信网络290的无线链路彼此进行通信并且与无线网关235进行通信。
虽然图3的网络114仅示出了具有有限数量的现场设备215-222和240-258的单个控制器260,但这仅是说明性的而非限制性的实施例。在网络114上可以包括任意数量的控制器,并且控制器260可以与任意数量的有线或无线现场设备215-222、240-258进行通信,以便例如对工厂中的过程进行控制。此外,过程工厂还可以包括任意数量的无线网关235、路由器258、接入点255以及无线过程控制通信网络290。
概括地说,可以使用按照针对图1所描述的来配置的一个或多个鲁棒性模块、以任何期望的形式在网络114中安装或实现安全系统。具体而言,如图3中所示,安全系统包括鲁棒性模块210,其设置在网络节点226、228、230、232、233、234A和234B中的每个网络节点中,以及交换机202或网络114的其它端点设备中的任意一个中。虽然没有在图3中示出全部细节,但是鲁棒性模块210可以安装在子节点设备中的任意子节点设备中,例如I/O设备236和238中,有线现场设备215-222中的一个或多个有线现场设备中,或者无线设备240-258中的任意或所有无线设备中。在图3中,子节点设备中的鲁棒性模块210中的每个鲁棒性模块用附图标记210a来进行标记,以便示出其在网络114的较大节点的子节点中。如针对图1所指示的,鲁棒性模块210和210a分析进入和退出这些节点中的每个节点的业务,并且可以在执行消息和体量过滤的同时对关于业务的元数据执行过滤和编译。
在该示例性安全系统中,鲁棒性模块210可以独立地操作,但是可以彼此进行通信,以便例如指示彼此如果其设备正在发送大量可疑消息(如由体量过滤器所确定的),则将其各自的设备从网络断开;或者向彼此或向用户接口模块211(示出为在用户接口设备230中)提供丢弃的消息日志。此外,用户可以使用用户接口模块211来对鲁棒性模块210中的一个或多个鲁棒性模块进行配置,并且用户可能需要具有恰当的安全ID或安全许可来进行该操作。当然,用户接口模块211可以通过一个或多个网络链路200进行通信,并且用户接口模块211可安装在网络114上的其它计算机设备中的任意计算机设备中,例如网络上的配置数据库232、网关设备226,228、交换机202等中。另外,来自子网络设备(例如现场设备215-222、I/O设备236,238和无线现场设备240-258)的通信(例如告警和丢弃日志)可以向上发送到主网络节点设备(例如控制器260或网关设备235),并且这些设备然后可以将那些通信转发到用户接口模块211或者其它鲁棒性模块210。此外,如图3中所示,配置数据库232包括配置变化模块370,其可以检测网络中的配置变化,并且可以基于这些配置变化来以任何期望的方式向鲁棒性模块210传送鲁棒性模块规则集合。如图3的节点中的至少一些节点中所示,节点设备中的每个节点设备包括处理器309,其可以是微处理器、ASIC或者实现和执行各个鲁棒性模块210的其它处理器;并且包括计算机可读存储器311,其存储这些模块以用于在处理器309上执行。
在一般意义上,存储在鲁棒性模块210的规则存储器42中的消息分析规则反映了进入或退出网络114的节点的消息业务的预期或正常行为。更具体地说,存储在规则数据库42中的规则可以通过在特定时间段期间(例如在网络刚建立之后启动并运行时,当相对确定网络没有被损坏时)对来自网络114的节点的消息或业务元数据进行收集和分析而产生。在该时间期间,所生成或收集的消息业务数据在统计意义上反映了网络的“正常”或“预期”操作。可以从在该时段期间所收集的消息业务数据中收集或生成各种业务模式参数或统计数据,并且该数据可以存储在业务模式数据库中以用于为各个鲁棒性模块210创建一个或多个规则集合。收集或生成并存储在数据库中的业务模式参数可以包括例如,任意粒度的特定节点或节点组处的业务的统计测量。也就是说,所存储的业务模式参数可以指示对任何类型的数据、时间帧、节点或节点群组、传入或传出、发送方、接收方、长度等成组或执行的数据的任意统计测量(例如,均值、标准差、平均值、中值、计数等),并且可以存储在任何期望的层级中,例如反映网络的配置层级的层级。业务模式参数还可以包括针对任意类型或群组的进入或退出节点或节点群组的通信的范围或限制,当超过这些范围或限制时,将反映或触发体量过滤器阈值、警告消息、从网络的断开等。这些范围或限制可以是绝对限制(例如,具有固定数量的形式),或者可以是基于或关于其它统计测量的相对限制(例如平均值的三倍、落入第一或第二标准差内、中值或均值以上或以下的预先确定的数量等)。
如将要理解的,创建并使用规则数据库42内的规则以限定应当对当前或收集的消息进行分析的方式,以检测网络中的异常或入侵。更具体地说,规则数据库42中的规则指定应当对所收集的消息业务进行分析的方式,例如,通过将所收集的关于所收集的消息的元数据或统计数据与业务模式数据进行比较和/或使用业务模式限制或范围。在一般意义上,图1的过滤器模块20、22、30、32实现存储在规则数据库42中的规则,以便将所收集的消息数据或元数据与已知、期望或预期的业务模式参数进行比较。
同样地,如图1中所指示的,鲁棒性模块10可以包括告警生成器46,其可以基于由模块20、22、30和32执行的分析的结果来生成一个或多个告警、警报或消息。由告警生成器46创建的告警、警报或消息可以经由网络链路或经由为该目的提供的或用于该目的任意其它通信链路发送到任何期望的人员(例如操作者、安全人员、IT人员等)。举例而言,告警、警报或消息可发送给指定人员的电子邮件账户,发送给操作者或者还示出关于工厂的其它数据的安全接口,可以作为经由专用或公共网络来传递的电话呼叫或文本消息发送给在任何期望的设备(例如移动设备等)处的指定人员或一组人员。同样地,这些告警、警报或消息可以触发负责对网络的潜在入侵进行响应和调查的任何指定人员的手持设备(例如,电话、手表、可穿戴设备、膝上型计算机、平板计算机等)上的警报或通知。在一些情况下,警报或告警生成器46可以操作为限制对被感染或潜在被感染节点的访问,可以关闭节点,或者在十分紧急的情况下可以关闭通信网络本身或将其与其它网络隔离,以限制入侵对工厂或工厂中的子系统造成损害。当然,告警生成器46可以包括可以与网络中的其它设备进行通信以实施这种自动操作的软件或逻辑单元。在一些情况下,告警生成器46在工厂网络中在采取这种自动动作之前,可以经由例如用户接口模块211向用户请求许可,但在其它情况下,可以在向用户通知入侵或潜在入侵之前或同时在网络中执行动作。此外,当采取自动动作时,告警生成器46可以与被感染或潜在被感染的节点进行通信,以限制来自(进入和/或退出)该节点的通信,例如,限制或暂停来自该节点的特定类型的消息,暂停或限制该节点处的特定应用的操作(其可能正在生成异常的消息业务),暂停或限制经由设备的某些端口的通信等。因此,一个鲁棒性模块10或210的告警生成器46可以改变或更改另一个鲁棒性模块的规则存储器42的规则,以首先帮助阻止所述另一个鲁棒性模块通过链路发送可疑消息。替代地或另外地,告警生成器46可以与其它节点(例如,连接到其它网络的网关节点)进行通信,以限制或中止该网络与其它网络之间的消息。该动作可以允许关键操作(例如控制操作)在网络上发生,同时将网络与外部源隔离,以便至少临时地阻止异常消息业务离开或进入该网络,这可以限制数据窃取,可以暂停网络内的病毒感染其它网络,可以停止经由被感染的节点向网络的进一步入侵等。例如,告警生成器46可以对外部商业系统与受影响的工业控制系统网络之间的所有通信进行服务,直到现场安全人员可以评估异常为止。当然,告警生成器46可以绑定到(通信地连接到)其它系统(例如安全系统)以执行这些功能。
规则数据库42可以存储由一个或多个安全人员、配置人员、用户、操作者等创建或生成的任何期望的规则集合,这些规则集合限定要对从通信网络节点或者从通信链路接收的消息业务或消息元数据执行的分析,以确定消息业务或业务模式中是否存在异常,并且因此确定是否应当生成告警或警报或者其它过滤是否应当发生。模块20、22、30和32所采用的规则因此可以操作为:将从节点收集的消息数据与该节点数据的标准或基线集合进行比较,以确定它们之间是否存在由其它业务模式参数(例如限制或差分变量等)定义的显著差异。
将理解的是,针对鲁棒性模块10和210处的消息,可以获得和分析任何期望类型的数据,并且可以创建规则数据库42中的规则以用于以任何期望的方式来对数据进行分析。例如,消息数据可以包括:关于消息本身的通用信息,例如,有效载荷类型、长度、源(例如,配置的对未配置的节点、源端口等)、地址(例如,源和目的地址和端口)、范围(例如,单播、多播、广播)、有效载荷类型(例如,TCP、UDP等等)、以及定时(例如,一天中的时间、相对时间、尝试率等);通信信息,例如,消息定时(例如,速率、一天中的时间、顺序错误等)、安全错误(例如失败的完整性、认证或解密)、消息内容(例如大小、格式错误等);以及伪信息,例如速率限制信息(例如状态、方法、限制速率等),以及连接尝试(例如乱序、格式错误、扫描等)。当然,可以获得任何其它类型的消息数据或元数据并且同时或替代地用于规则42中,并且将理解的是,本文所提供的列表不是全面的。
另外,可以基于网络或节点内的其它因素或参数(例如发送或接收节点的角色(例如,这些节点是否是工作站、服务器、网关、控制器、I/O服务器、远程终端单元(RTU)等))来收集和存储消息数据。因此,将理解的是,可以在网络的各个不同层级处(例如,基于设备或节点、基于设备或节点角色、基于消息等)创建消息和业务元数据,或者针对网络的各个不同层级、或相对于网络的任何其它层级来创建消息和业务元数据。此外,可以使用控制或通信网络的配置信息来初始地创建或修改用于分析消息元数据的规则,或者组织消息元数据分析。概括地说,用于网络的配置信息包括:关于节点(设备)中的每个节点(设备)处的应用、模块、控制例程等的数量,以及这些各个逻辑单元、软件单元和硬件单元彼此进行通信的方式(包括通信对(发送方/接收方对)、通信定时、频率、消息类型、控制系统角色或设备类型等)的信息。该配置信息可以用于创建或修改用于对这些节点中的任意节点处的消息进行分析的规则。也就是说,配置信息(包括配置层次信息(例如,哪些设备和模块与网络中哪些其它模块和设备相关))可以用于创建、修改或填充用于对消息进行分析的规则的参数。举例而言,配置信息可以用于例如选择用来分析消息的广义规则的子集(即,简档)。配置信息还可以用于在一个或多个广义规则参数中插入特定值(例如,在规则具有<用户>的占位符的情况下,配置信息可以用于填充该配置中所列出的特定用户的地址和端口信息)。以此方式,可以基于设备或节点的控制系统配置,将有效的逻辑规则从广义规则的较大集合调整为特定规则的子集。
此外,如图2和图3中所示,安全系统可以包括网络配置变化模块370,其可以例如存储在网络配置数据库或服务器设备122C或232中。概括地说,配置变化模块370操作为检测通信网络的网络配置的变化,然后经由例如网络链路向用户接口模块211发送这些变化和/或对这些变化的通知。如本文所使用的,配置变化可以包括:对网络上的设备或设备集合的操作做出的任何改变(包括添加新设备、应用、模块等;移除任何设备、应用、模块等);以及设备、应用、模块等、参数、设置或其它配置的改变(包括任何硬件、软件或固件设置的改变),包括改变通信和过程控制设置,例如,改变例如用于批处理过程的配方等。在这种情况下,无论何时配置工程师或其它用户改变网络配置(例如,通过向网络添加新的应用或模块,改变网络中的应用或模块彼此进行通信的方式等),网络配置变化模块370检测该变化并向用户接口模块211发送通知,从通知用户关于网络配置的变化。当然,虽然变化模块370示出为位于配置数据库(例如,图3的数据库232)中,但配置模块370可以位于能够访问或实现配置应用(其改变或使得用户能够改变网络的配置),或者以其它方式被通知关于配置变化的任何设备或计算机(例如操作者接口设备或服务器)中,并且可以以任何期望的方式操作以检测网络配置变化。
在任何情况下,无论何时对网络的配置做出变化时(例如,实施添加、删除或改变网络上或绑定到网络的设备中的任何设备中的任何软件、功能块、模块等的通信方面),变化检测模块370可以向用户接口模块211发送通知,以通知用户预期网络业务模式或细节的改变或潜在改变。该通知可以使得用户能够创建新的规则或者对已经在鲁棒性模块210中的一个或多个鲁棒性模块中的规则进行更改,以便由此根据新网络配置来更好地配置鲁棒性模块210。
因此,将理解的是,网络配置的变化可以例如通过增加或减少某种类型的网络消息、改变特定类型的网络通信(例如,通过改变网络上的各个设备之间或者在网络节点处的各个设备内运行的应用之间的某些类型的通信的属性或数量),来改变网络消息流。在一些情况下,由于新的配置,可能期望改变、添加或删除一个或多个鲁棒性模块210的规则数据库42中的规则,以便例如调整这些规则以适应新的配置(例如通过实现规则数据库的一个或多个规则内的简档插件来匹配或反映新配置的参数)。例如,可以通过新配置来添加新的通信类型,并且可以基于新的通信利用简档插件来对规则进行更新,并且该规则然后可以用于对与这些新的通信类型相关联的消息进行分析。
此外,虽然本文所描述的安全系统被示出为具有单独的语法和体量过滤器,但是单个过滤器可以执行针对这些不同过滤器中的每个过滤器所描述的功能。例如,可以在网络设备的处理器上执行单个过滤模块,以使用存储在设备的规则存储器中的逻辑规则来传递具有消息特征的一个或多个第一集合的消息,暂停具有消息特征的一个或多个第二集合的消息,以及对具有消息特征的一个或多个第三集合的消息进行计数,并且还可以操作为:基于与消息特征的一个或多个第三集合的相关联的计数,来传递或暂停具有消息特征的一个或多个第三集合的消息。
虽然本文所描述的安全技术已被描述为结合联网的过程控制设备和系统(其使用以太网和各种已知的过程控制协议,例如,Fieldbus、HART和标准4-20ma协议)来使用,但是当然,本文所描述的安全技术可以在使用任何其它过程控制通信协议或编程环境的任何类型的控制设备中实现,并且可以与任何其它类型的设备、功能块或控制器一起使用。尽管本文所描述的安全特征优选地在软件中实现,但这些安全特征可以在硬件、固件等中实现,并且可以由与计算机设备相关联的任何其它处理器来执行。因此,如果期望的话,本文所描述的方法和例程以及系统可以在标准多功能CPU中或者在专门设计的硬件或固件(例如,ASIC)上实现。当在软件中实现时,该软件可以存储在任何计算机可读存储器中,例如在磁盘、激光盘、光盘或其它存储介质上,在计算机或处理器的RAM或ROM中等。同样地,该软件可以经由任何已知或期望的传递方法(包括例如,在计算机可读盘或其它便携式计算机存储机构上,或者调制到诸如电话线路、互联网之类的通信信道上)传递给用户或过程控制系统。
此外,虽然参考特定的示例来描述了本发明,其中这些示例旨在仅是说明性的而非对本发明的限制,但对于本领域普通技术人员来说将显而易见的是,在不偏离本发明的精神和范围的情况下,可以对所公开的实施例进行改变、添加或删除。

Claims (44)

1.一种用于通信网络中的安全系统,所述通信网络具有经由通信链路通信地耦合的过程控制系统的多个网络节点,所述多个网络节点包括一个或多个过程控制器节点,所述安全系统包括:
一个或多个消息模块接口,其中,所述消息模块接口中的每个消息模块接口在所述网络节点中的一个网络节点处在处理器上执行,以检测所述网络节点处的消息业务以及确定所述消息中的每个消息的一个或多个消息特征;
规则存储器,所述规则存储器存储一个或多个逻辑规则;以及
一个或多个过滤单元,所述一个或多个过滤单元存储在处理器中并在处理器上执行,并且耦合到所述规则存储器,所述过滤单元中的每个过滤单元包括:
语法过滤模块,以及
体量过滤模块,
其中,所述语法过滤模块在所述处理器上执行,并且基于所述消息特征信息来应用存储在所述规则存储器中的一个或多个逻辑规则,以传递所述消息、暂停所述消息、或者将所述消息传递给所述体量过滤模块;
其中,所述体量过滤模块对具有消息特征的特定集合的消息的数量进行计数以确定消息计数,并且基于所述消息计数来传递具有消息特征的所述特定集合的消息或暂停具有消息特征的所述特定集合的消息。
2.根据权利要求1所述的安全系统,其中,所述消息计数包括在特定时间段内接收的具有消息特征的所述特定集合的特定数量的消息。
3.根据权利要求1所述的安全系统,其中,所述规则存储器是只读存储器。
4.根据权利要求1所述的安全系统,其中,所述规则存储器是读/写存储器。
5.根据权利要求1所述的安全系统,其中,所述规则存储器包括第一部分和第二部分,其中所述第一部分是只读存储器,所述第二部分是读/写存储器。
6.根据权利要求1所述的安全系统,其中,所述规则存储器是闪存。
7.根据权利要求6所述的安全系统,其中,所述规则存储器是能够拆卸的闪存。
8.根据权利要求1所述的安全系统,还包括记录模块,所述记录模块耦合到所述语法过滤模块或所述体量过滤模块,所述记录模块在所述处理器上执行,以便接收关于一个或多个暂停的消息的信息,并且存储关于所述一个或多个暂停的消息的信息。
9.根据权利要求8所述的安全系统,其中,所述记录模块还包括通信接口,所述通信接口向用户发送由暂停的消息构成的一个或多个日志。
10.根据权利要求8所述的安全系统,其中,所述记录模块存储关于所述暂停的消息的元数据。
11.根据权利要求1所述的安全系统,还包括耦合到所述体量过滤模块的告警生成模块,其中,所述告警生成模块在所述处理器上执行,以便当所述消息计数达到预先确定的等级时向用户发送告警。
12.根据权利要求1所述的安全系统,还包括耦合到所述体量过滤模块的告警生成模块,其中,所述告警生成模块在所述处理器上执行,以便当所述消息计数达到预先确定的等级时将设备从所述通信网络断开。
13.根据权利要求1所述的安全系统,其中,所述一个或多个过滤单元包括第一过滤单元和第二过滤单元,其中所述第一过滤单元接收并分析从所述通信链路进入所述网络节点的消息,所述第二过滤单元接收并分析所述网络节点中生成的并经由所述通信链路发送给另一个网络节点的消息。
14.一种保护过程控制系统的通信网络中的消息业务的安全的方法,包括:
在连接到所述通信网络的设备处接收一系列消息;
经由所述设备处的处理器来分析所述一系列消息中的每个消息,以确定所述消息中的每个消息的一个或多个消息特征;以及
基于存储在所述设备处的逻辑规则集合,经由所述设备处的所述处理器来对所述消息中的每个消息进行过滤,所述过滤包括:传递具有消息特征的一个或多个第一集合的消息,暂停具有消息特征的一个或多个第二集合的消息,以及对具有消息特征的一个或多个第三集合的消息进行计数,并且所述过滤还包括:基于与消息特征的所述一个或多个第三集合相关联的计数,来传递或暂停具有消息特征的所述一个或多个第三集合的消息。
15.根据权利要求14所述的方法,其中,对具有消息特征的一个或多个第三集合的消息进行计数包括:对在特定时间段内接收的具有消息特征的所述第三集合中的一个集合的消息的数量进行计数。
16.根据权利要求14所述的方法,其中,对具有消息特征的一个或多个第三集合的消息进行计数包括:对在特定时间段内接收的具有消息特征的所述第三集合中的每个集合的消息的数量进行计数。
17.根据权利要求14所述的方法,其中,对具有消息特征的一个或多个第三集合的消息进行计数包括:对具有消息特征的所述第三集合中的每个集合的消息的数量进行计数。
18.根据权利要求14所述的方法,还包括:将所述逻辑规则存储在所述设备中的只读存储器中。
19.根据权利要求14所述的方法,还包括:将所述逻辑规则存储在所述设备中的读/写存储器中。
20.根据权利要求14所述的方法,还包括:将所述逻辑规则的第一部分存储在只读存储器中,并且将所述逻辑规则的第二部分存储在读/写存储器中。
21.根据权利要求14所述的方法,还包括:将所述逻辑规则的至少一部分存储在所述设备处的闪存中。
22.根据权利要求14所述的方法,还包括:记录关于一个或多个暂停的消息的信息以创建一个或多个日志文件。
23.根据权利要求22所述的方法,还包括:经由所述通信网络向用户传送具有记录信息的所述一个或多个日志文件。
24.根据权利要求22所述的方法,其中,记录信息包括:将关于所述暂停的消息的元数据存储在所述设备处的存储器中。
25.根据权利要求14所述的方法,还包括:当对具有消息特征的所述一个或多个第三集合中的一个集合的消息进行的消息计数达到预先确定的等级时,生成告警以发送给用户。
26.根据权利要求14所述的方法,还包括:当对具有消息特征的所述一个或多个第三集合中的一个集合的消息进行的消息计数达到预先确定的等级时,启动安全动作。
27.根据权利要求26所述的方法,其中,启动所述安全动作包括:启动所述通信网络上的设备中的病毒或入侵检测软件。
28.根据权利要求26所述的方法,其中,启动所述安全动作包括:将设备从所述通信网络的通信链路断开。
29.根据权利要求26所述的方法,其中,启动所述安全动作包括:将所述通信网络上的不同的设备从所述通信网络的通信链路断开。
30.根据权利要求14所述的方法,其中,传递具有消息特征的所述一个或多个第一集合的消息以及传递具有消息特征的所述一个或多个第三集合的消息包括:将所述消息传递给所述设备的通信栈以用于在所述设备处进行处理。
31.根据权利要求14所述的方法,其中,传递具有消息特征的所述一个或多个第一集合的消息以及传递具有消息特征的所述一个或多个第三集合的消息包括:将所述消息传递给所述通信网络的通信链路以用于传输给所述通信网络上的另一个设备。
32.根据权利要求14所述的方法,其中,在连接到所述通信网络的设备处接收所述一系列消息包括:接收在所述设备内生成的第一系列消息以及接收从所述通信网络的通信链路接收的第二系列消息,其中,对所述一系列消息中的每个消息进行分析包括:单独地对所述第一系列消息和所述第二系列消息中的每个消息进行分析,并且其中,对所述消息中的每个消息进行过滤包括:单独地对所述第一系列消息和所述第二系列消息中的每个消息进行过滤。
33.根据权利要求32所述的方法,其中,单独地对所述第一系列消息和所述第二系列消息中的每个系列进行过滤包括:使用第一逻辑规则集合对所述第一系列消息进行过滤,以及使用第二逻辑规则集合并且是不同的逻辑规则集合对所述第二系列消息进行过滤。
34.一种通信网络,包括:
通信链路;
过程控制系统的多个网络节点,所述网络节点中的每个网络节点包括耦合到所述通信链路的网络设备,并且具有处理器和通信栈,其中所述通信栈在所述处理器上执行,以便对来自和去往所述通信链路的消息进行处理,并且所述多个网络节点中的一个或多个网络节点是过程控制器节点;
其中,所述多个网络节点中的每个网络节点还包括,
一个或多个消息模块接口,其中,所述消息模块接口中的每个消息模块接口在网络节点处在处理器上执行,以检测来自所述通信栈或来自所述通信链路的消息业务,以便确定所述消息中的每个消息的一个或多个消息特征;
规则存储器,所述规则存储器存储一个或多个逻辑规则;以及
过滤模块,所述过滤模块存储在处理器中并在处理器上执行,并且耦合到所述规则存储器,所述过滤模块使用存储在所述规则存储器中的逻辑规则集合来传递具有消息特征的一个或多个第一集合的消息,暂停具有消息特征的一个或多个第二集合的消息,以及对具有消息特征的一个或多个第三集合的消息进行计数,并且所述过滤模块基于与消息特征的所述一个或多个第三集合相关联的计数,来进一步传递或暂停具有消息特征的一个或多个第三集合的消息。
35.根据权利要求34所述的通信网络,其中,所述过滤模块将对具有消息特征的所述一个或多个第三集合的所述消息进行的消息计数产生为:在特定时间段内接收的具有消息特征的特定集合的消息的数量。
36.根据权利要求34所述的通信网络,其中,所述规则存储器是只读存储器。
37.根据权利要求34所述的通信网络,其中,所述规则存储器是读/写存储器。
38.根据权利要求34所述的通信网络,其中,所述规则存储器包括第一部分和第二部分,其中所述第一部分是只读存储器,所述第二部分是读/写存储器。
39.根据权利要求34所述的通信网络,其中,所述多个网络节点中的每个网络节点还包括耦合到所述过滤模块的记录模块,其中,所述记录模块在所述处理器上执行,以便接收关于一个或多个暂停的消息的信息,以及将关于所述一个或多个暂停的消息的信息存储到一个或多个日志中。
40.根据权利要求39所述的通信网络,其中,所述记录模块还包括通信接口,所述通信接口向用户发送由暂停的消息构成的所述一个或多个日志。
41.根据权利要求40所述的通信网络,其中,所述记录模块存储关于所述暂停的消息的元数据。
42.根据权利要求34所述的通信网络,其中,所述多个网络节点中的每个网络节点还包括耦合到所述过滤模块的告警生成模块,其中,所述告警生成模块在所述处理器上执行,以便当所述消息计数中的一个消息计数达到预先确定的等级时向用户发送告警。
43.根据权利要求34所述的通信网络,其中,所述多个网络节点中的每个网络节点还包括耦合到所述过滤模块的告警生成模块,其中,所述告警生成模块在所述处理器上执行,以便当所述消息计数中的一个消息计数达到预先确定的等级时将设备从所述通信链路网络断开。
44.根据权利要求34所述的通信网络,其中,所述多个网络节点中的每个网络节点包括两个或更多个过滤模块,其中,所述两个或更多个过滤模块中的第一个过滤模块接收并分析从所述通信链路进入所述网络节点处的所述网络设备的消息,并且所述两个或更多个过滤模块中的第二个过滤模块接收并分析在所述网络节点处的所述网络设备中生成的、并经由所述通信链路发送给另一个网络节点处的另一个网络设备的消息。
CN201610339856.0A 2015-05-22 2016-05-20 工厂安全系统中的可配置鲁棒性代理 Active CN106168757B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US14/719,946 US11363035B2 (en) 2015-05-22 2015-05-22 Configurable robustness agent in a plant security system
US14/719,946 2015-05-22

Publications (2)

Publication Number Publication Date
CN106168757A CN106168757A (zh) 2016-11-30
CN106168757B true CN106168757B (zh) 2022-03-18

Family

ID=56297397

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610339856.0A Active CN106168757B (zh) 2015-05-22 2016-05-20 工厂安全系统中的可配置鲁棒性代理

Country Status (5)

Country Link
US (1) US11363035B2 (zh)
JP (1) JP6923265B2 (zh)
CN (1) CN106168757B (zh)
DE (1) DE102016109358A1 (zh)
GB (1) GB2541493B (zh)

Families Citing this family (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6693114B2 (ja) * 2015-12-15 2020-05-13 横河電機株式会社 制御装置及び統合生産システム
JP6759572B2 (ja) 2015-12-15 2020-09-23 横河電機株式会社 統合生産システム
JP6613200B2 (ja) * 2016-04-18 2019-11-27 ファナック株式会社 生産管理装置からの指令に応じて製造セルを制御するセル制御装置
US10523635B2 (en) * 2016-06-17 2019-12-31 Assured Information Security, Inc. Filtering outbound network traffic
US20180083972A1 (en) * 2016-09-20 2018-03-22 Lg Electronics Inc. Method and apparatus for security configuration in wireless communication system
US10936955B1 (en) 2017-01-13 2021-03-02 Amazon Technologies, Inc. Computationally and network bandwidth-efficient technique to determine network-accessible content changes based on computed models
US10050987B1 (en) * 2017-03-28 2018-08-14 Symantec Corporation Real-time anomaly detection in a network using state transitions
US10185970B1 (en) * 2017-04-21 2019-01-22 Amazon Technologies, Inc. Determining a run time for experiments performed at a network accessible site
US10951503B1 (en) 2017-04-21 2021-03-16 Amazon Technologies, Inc. Determining the validity of data collected by experiments performed at a network accessible site
US10992652B2 (en) 2017-08-25 2021-04-27 Keysight Technologies Singapore (Sales) Pte. Ltd. Methods, systems, and computer readable media for monitoring encrypted network traffic flows
US10903985B2 (en) 2017-08-25 2021-01-26 Keysight Technologies Singapore (Sales) Pte. Ltd. Monitoring encrypted network traffic flows in a virtual environment using dynamic session key acquisition techniques
US11750623B2 (en) * 2017-09-04 2023-09-05 ITsMine Ltd. System and method for conducting a detailed computerized surveillance in a computerized environment
US10673871B2 (en) * 2017-10-04 2020-06-02 New Context Services, Inc. Autonomous edge device for monitoring and threat detection
US11184452B2 (en) * 2017-10-13 2021-11-23 Yokogawa Electric Corporation System and method for selecting proxy computer
US11113425B2 (en) 2018-01-17 2021-09-07 Crowd Strike, Inc. Security component for devices on an enumerated bus
CN110166343A (zh) * 2018-02-13 2019-08-23 贵州白山云科技股份有限公司 一种消息网关分发消息的方法及其消息网关
US10942504B2 (en) * 2018-04-06 2021-03-09 Bently Nevada, Llc Flexible condition monitoring of industrial machines
US11030413B2 (en) * 2018-06-27 2021-06-08 International Business Machines Corporation Recommending message wording based on analysis of prior group usage
WO2020014614A1 (en) * 2018-07-13 2020-01-16 Raytheon Company Policy engine for cyber anomaly detection
US10893030B2 (en) 2018-08-10 2021-01-12 Keysight Technologies, Inc. Methods, systems, and computer readable media for implementing bandwidth limitations on specific application traffic at a proxy element
US11768878B2 (en) * 2019-09-20 2023-09-26 Fisher-Rosemount Systems, Inc. Search results display in a process control system
US11768877B2 (en) * 2019-09-20 2023-09-26 Fisher-Rosemount Systems, Inc. Smart search capabilities in a process control system
US11190417B2 (en) * 2020-02-04 2021-11-30 Keysight Technologies, Inc. Methods, systems, and computer readable media for processing network flow metadata at a network packet broker
US11424865B2 (en) * 2020-12-10 2022-08-23 Fisher-Rosemount Systems, Inc. Variable-level integrity checks for communications in process control environments
US11882013B2 (en) * 2021-08-18 2024-01-23 Hewlett Packard Enterprise Development Lp Network traffic monitoring for anomalous behavior detection

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1564508A (zh) * 2004-03-22 2005-01-12 西安电子科技大学 宽带无线ip网络匿名连接方法
CN103117993A (zh) * 2011-09-28 2013-05-22 费希尔-罗斯蒙特系统公司 用于提供过程控制系统的防火墙的方法、装置及制品
CN103430488A (zh) * 2010-11-05 2013-12-04 马克·卡明斯 编排无线网络运营
CN103493061A (zh) * 2011-02-15 2014-01-01 普瑞维克斯有限公司 用于应对恶意软件的方法和装置
CN103701824A (zh) * 2013-12-31 2014-04-02 大连环宇移动科技有限公司 一种安全隔离管控系统
CN104539625A (zh) * 2015-01-09 2015-04-22 江苏理工学院 一种基于软件定义的网络安全防御系统及其工作方法
CN104579784A (zh) * 2015-01-15 2015-04-29 珠海市鸿瑞信息技术有限公司 基于多维虚链路的电力工业控制系统网络管理方法

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020107953A1 (en) 2001-01-16 2002-08-08 Mark Ontiveros Method and device for monitoring data traffic and preventing unauthorized access to a network
US7743158B2 (en) 2002-12-04 2010-06-22 Ntt Docomo, Inc. Access network dynamic firewall
US8224902B1 (en) * 2004-02-04 2012-07-17 At&T Intellectual Property Ii, L.P. Method and apparatus for selective email processing
KR100609170B1 (ko) 2004-02-13 2006-08-02 엘지엔시스(주) 네트워크 보안 시스템 및 그 동작 방법
US7774834B1 (en) * 2004-02-18 2010-08-10 Citrix Systems, Inc. Rule generalization for web application entry point modeling
US7617531B1 (en) * 2004-02-18 2009-11-10 Citrix Systems, Inc. Inferencing data types of message components
US7890996B1 (en) * 2004-02-18 2011-02-15 Teros, Inc. Using statistical analysis to generate exception rules that allow legitimate messages to pass through application proxies and gateways
US8214438B2 (en) * 2004-03-01 2012-07-03 Microsoft Corporation (More) advanced spam detection features
EP1761863A4 (en) 2004-05-25 2009-11-18 Postini Inc LEUMUND SYSTEM FOR ELECTRONIC MESSAGE SOURCE INFORMATION
US7607166B2 (en) 2004-07-12 2009-10-20 Cisco Technology, Inc. Secure manufacturing devices in a switched Ethernet network
US7343624B1 (en) 2004-07-13 2008-03-11 Sonicwall, Inc. Managing infectious messages as identified by an attachment
JP2006060306A (ja) 2004-08-17 2006-03-02 Nec Corp パケットフィルタリング方法およびパケットフィルタ装置
EP1877905B1 (en) 2005-05-05 2014-10-22 Cisco IronPort Systems LLC Identifying threats in electronic messages
US8458262B2 (en) * 2006-12-22 2013-06-04 At&T Mobility Ii Llc Filtering spam messages across a communication network
JP2008278357A (ja) 2007-05-02 2008-11-13 Ionos:Kk 通信回線切断装置
US7814163B2 (en) * 2008-01-03 2010-10-12 Apple Inc. Text-based communication control for personal communication device
EP2269347A2 (de) * 2008-03-10 2011-01-05 Robert Bosch GmbH Verfahren und filteranordnung zum filtern von über einen seriellen datenbus eines kommunikationsnetzwerks in einem teilnehmer des netzwerks eingehenden nachrichten
US8737398B2 (en) 2008-12-31 2014-05-27 Schneider Electric USA, Inc. Communication module with network isolation and communication filter
US8874663B2 (en) * 2009-08-28 2014-10-28 Facebook, Inc. Comparing similarity between documents for filtering unwanted documents
US9047441B2 (en) 2011-05-24 2015-06-02 Palo Alto Networks, Inc. Malware analysis system
US9282113B2 (en) 2013-06-27 2016-03-08 Cellco Partnership Denial of service (DoS) attack detection systems and methods
JP2014123996A (ja) 2014-04-02 2014-07-03 Mitsubishi Electric Corp ネットワーク監視装置及びプログラム
US10333877B2 (en) * 2014-04-29 2019-06-25 At&T Intellectual Property I, L.P. Methods of generating signatures from groups of electronic messages and related methods and systems for identifying spam messages

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1564508A (zh) * 2004-03-22 2005-01-12 西安电子科技大学 宽带无线ip网络匿名连接方法
CN103430488A (zh) * 2010-11-05 2013-12-04 马克·卡明斯 编排无线网络运营
CN103493061A (zh) * 2011-02-15 2014-01-01 普瑞维克斯有限公司 用于应对恶意软件的方法和装置
CN103117993A (zh) * 2011-09-28 2013-05-22 费希尔-罗斯蒙特系统公司 用于提供过程控制系统的防火墙的方法、装置及制品
CN103701824A (zh) * 2013-12-31 2014-04-02 大连环宇移动科技有限公司 一种安全隔离管控系统
CN104539625A (zh) * 2015-01-09 2015-04-22 江苏理工学院 一种基于软件定义的网络安全防御系统及其工作方法
CN104579784A (zh) * 2015-01-15 2015-04-29 珠海市鸿瑞信息技术有限公司 基于多维虚链路的电力工业控制系统网络管理方法

Also Published As

Publication number Publication date
JP6923265B2 (ja) 2021-08-18
GB2541493A (en) 2017-02-22
GB201608102D0 (en) 2016-06-22
CN106168757A (zh) 2016-11-30
JP2016220213A (ja) 2016-12-22
US11363035B2 (en) 2022-06-14
DE102016109358A1 (de) 2016-11-24
GB2541493B (en) 2022-04-13
US20160344754A1 (en) 2016-11-24

Similar Documents

Publication Publication Date Title
CN106168757B (zh) 工厂安全系统中的可配置鲁棒性代理
CN105939334B (zh) 工业通信网络中的异常检测
US8949668B2 (en) Methods and systems for use in identifying abnormal behavior in a control system including independent comparisons to user policies and an event correlation model
US11153277B2 (en) Security system, device, and method for internet of things networks
KR101977731B1 (ko) 제어 시스템의 이상 징후 탐지 장치 및 방법
US10530749B1 (en) Security system, device, and method for operational technology networks
EP2767057B1 (en) Process installation network intrusion detection and prevention
Flaus Cybersecurity of industrial systems
KR102232078B1 (ko) 부정 침입 방지 장치, 부정 침입 방지 방법 및 부정 침입 방지 프로그램
EP3182669B1 (en) Integrated industrial system and control method thereof
JP2019049968A (ja) プロセス制御システムにおける暗号化されたトラフィックのためのファイアウォール
Januário et al. Security challenges in SCADA systems over Wireless Sensor and Actuator Networks
CN214306527U (zh) 一种燃气管网调度监控网络安全系统
Corbò et al. Smart behavioural filter for industrial internet of things: A security extension for plc
Colelli et al. Securing connection between IT and OT: the Fog Intrusion Detection System prospective
CA3232592A1 (en) Methods and systems for assessing and enhancing cybersecurity of a network
CN114600424B (zh) 用于过滤数据流量的安全系统、方法和计算机可读存储介质
US20240214351A1 (en) Security system, device, and method for protecting control systems
Goltz Securing Building Automation Systems
Lara Romero et al. Smart home anomaly-based IDS: architecture proposal and case study
WO2022187579A9 (en) Automatic firewall configuration for control systems in critical infrastructure
Krimmling et al. 18 Intrusion Detection
CN115826508A (zh) 机箱上背板入侵检测系统和连续威胁检测启用平台
Karthika et al. Safeguarding Scada Network by Captious State Based Filter
WO2019087114A1 (en) Cyber security system for networked devices

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant