CN109286606B - 针对过程控制系统中的加密业务的防火墙 - Google Patents

针对过程控制系统中的加密业务的防火墙 Download PDF

Info

Publication number
CN109286606B
CN109286606B CN201810796002.4A CN201810796002A CN109286606B CN 109286606 B CN109286606 B CN 109286606B CN 201810796002 A CN201810796002 A CN 201810796002A CN 109286606 B CN109286606 B CN 109286606B
Authority
CN
China
Prior art keywords
message
unlock
controller
bit sequence
header
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
CN201810796002.4A
Other languages
English (en)
Other versions
CN109286606A (zh
Inventor
G·K·劳
G·R·谢里夫
A·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 CN109286606A publication Critical patent/CN109286606A/zh
Application granted granted Critical
Publication of CN109286606B publication Critical patent/CN109286606B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • 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
    • H04L63/0236Filtering by address, protocol, port number or service, e.g. IP-address or URL
    • 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
    • H04L63/0254Stateful filtering
    • 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
    • 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
    • H04L63/0245Filtering by information in the payload
    • 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/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/042Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
    • G05B19/0428Safety, monitoring
    • 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/41815Total 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 cooperation between machine tools, manipulators and conveyor or other workpiece supply system, workcell
    • 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/029Firewall traversal, e.g. tunnelling or, creating pinholes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • 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/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • H04L67/025Protocols based on web technology, e.g. hypertext transfer protocol [HTTP] for remote control or remote monitoring of applications
    • 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
    • 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
    • H04L67/125Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks involving control of end-device applications over a network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/22Parsing or analysis of headers
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/31From computer integrated manufacturing till monitoring
    • G05B2219/31246Firewall
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/35Nc in input of data, input till input file format
    • G05B2219/35572Data contains header and type of data
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/02Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Manufacturing & Machinery (AREA)
  • Quality & Reliability (AREA)
  • Testing And Monitoring For Control Systems (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Small-Scale Networks (AREA)

Abstract

一种用于降低未经授权地访问过程控制系统的安全子系统中的嵌入式节点的风险的方法包括:接收包括消息头部和消息有效载荷的消息,以及至少通过分析消息头部中的一个或多个比特的比特序列来确定该消息是被配置为访问嵌入式节点的一个或多个受保护的功能的解锁消息。该方法还包括:确定手动控制机构是否已被操作人员置于特定状态,以及基于这些确定,使得嵌入式节点进入解锁状态或不使得嵌入式节点进入解锁状态,其中在该解锁状态,该一个或多个受保护的功能是可访问的。

Description

针对过程控制系统中的加密业务的防火墙
技术领域
本公开内容总体上涉及过程工厂和过程控制系统,并且更具体地,涉及防止过程工厂和过程控制系统内的网络入侵的系统、设备和方法。
背景技术
分布式过程控制系统(如在化学、石油或其它过程工厂中使用的那些分布式过程控制系统)通常包括一个或多个过程控制器,该一个或多个过程控制器经由I/O卡或设备、模拟、数字或组合的模拟/数字总线和/或无线通信链路或网络通信地耦合到一个或多个现场设备。现场设备(其可以是例如阀、阀定位器、致动器、开关和变送器(例如,温度、压力、液位和流率传感器))位于过程环境内并且通常执行物理或过程控制功能,诸如打开或关闭阀、测量过程参数(诸如压力、温度等)等等,以控制在过程工厂或系统内执行的一个或多个过程。智能现场设备(诸如符合众所周知的现场总线(Fieldbus)协议的现场设备)还可以执行控制计算、报警功能以及通常在控制器内实现的其它控制功能。过程控制器(其通常也位于工厂环境内)接收指示现场设备所进行的过程测量的信号和/或与现场设备有关的其它信息(例如,经由相应的I/O卡或设备),并且执行控制器应用,该控制器应用运行例如不同的控制模块,不同的控制模块做出过程控制决策,基于接收到的信息来产生控制信号,并且与在现场设备(例如,无线/>和/>现场总线现场设备)中执行的控制模块或块进行协调。控制器中的控制模块通过通信线路或链路将控制信号发送到现场设备,以由此控制过程工厂或系统的至少部分的操作。在本文中,现场设备、I/O卡或设备、控制器和其它相关设备通常可以被称为“过程设备”或“过程控制设备”。
来自现场设备和控制器的信息通常通过通信网络而可用于一个或多个其它硬件设备,诸如操作员工作站、个人计算机或计算设备、数据历史库、报告生成器、集中式数据库或其它集中式管理计算设备,它们通常被放置在控制室或其它远离更严酷的工厂环境的位置。这些硬件设备中的每一个通常跨过程工厂中或跨过程工厂的一部分而集中化。这些硬件设备运行应用,这些应用可以例如使操作员能够执行关于控制过程和/或操作过程工厂的功能,诸如改变过程控制例程的设置、修改控制器或现场设备内的控制模块的操作、查看过程的当前状态、查看由现场设备和控制器产生的警报、出于训练人员或测试过程控制软件的目的而仿真过程的操作、保持和更新配置数据库等。由硬件设备、控制器和现场设备使用的通信网络可以包括有线通信路径、无线通信路径或有线和无线通信路径的组合。
作为示例,由艾默生过程管理(Emerson Process Management)销售的DeltaVTM控制系统包括多个应用,该多个应用储存在过程工厂内位于不同位置处的不同设备内并由这些不同设备执行。驻留在一个或多个工作站或计算设备中的配置应用使用户能够创建或改变过程控制模块并经由通信网络将这些过程控制模块下载到专用分布式控制器。典型地,这些控制模块由通信互连的功能块组成,这些功能块是面向对象的编程协议中的对象,基于对其的输入来执行控制方案内的功能,并且向控制方案内的其它功能块提供输出。配置应用还可以允许配置设计者创建或改变由查看应用使用的操作员界面以向操作员显示数据,并且使操作员能够改变过程控制例程内的设置,诸如设定点。每个专用控制器以及在一些情况下一个或多个现场设备储存并执行相应的控制器应用,该控制器应用运行分配和下载到其的控制模块以实现实际的过程控制功能。可以在一个或多个操作员工作站上(或在与操作员工作站和通信网络通信连接的一个或多个远程计算设备上)执行的查看应用经由通信网络从控制器应用接收数据并使用用户界面向过程控制系统设计者、操作员或其他用户显示该数据,并且可以提供多个不同视图(诸如操作员视图、工程师视图、技术人员视图等)中的任何视图。数据历史库应用通常储存在数据历史库设备中并且由数据历史库设备执行,该数据历史库设备收集并储存跨通信网络提供的一些或全部数据,而配置数据库应用可以在附接至通信网络的另一计算机中运行,以储存当前过程控制例程配置和与其相关联的数据。替代地,配置数据库可以与配置应用位于相同的工作站中。
因此,一般而言,过程工厂的过程控制系统包括通过一组网络和总线互连的现场设备、控制器、工作站和其它设备。由于许多过程控制设备和功能的关键性(例如,在工厂设备、产品甚至人类生命的损坏、破坏和/或损失方面),可以锁定某些功能以防止未经授权的访问。例如,可以锁定诸如安全子系统中(例如,DeltaV安全集成系统TM(DeltaV SafetyIntegrated SystemTM)或SISTM中)的控制器和/或逻辑解算器之类的嵌入式节点以防止未经授权的下载、固件更新、对维护/诊断功能、停用(decommission)和/或其它功能的访问。在过程控制系统与各种外部网络连接的情况下,例如为了降低制造和运营成本,提高生产率和效率,提供对过程控制和/或过程工厂信息的及时访问等,这种保护可能特别重要。一般而言,过程工厂和/或过程控制系统与企业和/或外部网络和系统的互连增加了网络入侵和/或恶意网络攻击的风险,这可能由商业系统和应用(诸如在企业和/或外部网络中使用的商业系统和应用)中的典型或预期的脆弱性引起。
在许多常规的过程控制系统中,如果嵌入式节点接收到特殊的“解锁消息(unlockmessage)”,则可以解锁锁定的嵌入式节点。通常,过程控制系统中的消息结构带有消息头部和消息有效载荷两者,并且如果(并且仅当)给定消息在消息有效载荷内特定的已知位置处包含特定的已知比特系列,则该消息被辨识为“解锁”消息。图1描绘了这种常规的解锁消息10。如图1所示,解锁消息10包括具有各种字段(包括源字段、目的地字段和以太网类型(Ethertype)字段)的常规消息头部12。解锁消息10还包括消息有效载荷14,除其它之外,该消息有效载荷14包括位置16处的比特序列,该比特序列已知(例如,由嵌入式节点已知)对应于解锁指示符。如果位置16处的比特具有特定的预定值/序列,则将消息10识别为解锁消息,并且解锁受保护的功能。因此,在常规系统中,确定特定消息是否为解锁消息需要深度分组检查(即,对消息有效载荷的分析)。
为了帮助防止未经授权的访问(包括来自可能已经学习到正确的解锁消息格式的某些源的访问),通常在过程控制系统内,例如在操作员工作站与安全子系统之间,采用防火墙设备。作为附加的安全层,被称为“入侵保护设备”或“IPD”的这些防火墙设备中的一些充当用于解锁嵌入式节点(即,用于解锁嵌入式节点的某些受保护的特征/功能)的看门者(gatekeeper)。IPD通常包括可由操作员在物理上按动的硬件按钮。如果IPD在IPD按钮被按压时接收到以嵌入式节点为目的地的解锁消息,则IPD将解锁消息转发到嵌入式节点,这使得锁定的特征/功能可用。相反,如果IPD在IPD按钮没被按压时接收到以嵌入式节点为目的地的解锁消息,则IPD丢弃解锁消息,并且嵌入式节点的锁定功能特征/功能保持不可访问。因此,当且仅当在IPD按钮被按压时接收到解锁消息时,解锁才会发生。
在仅交换未加密业务的过程控制系统中,这些常规方法对于防止网络入侵可能非常有效。然而,为了增强过程控制系统内的数据安全性,数据业务的加密可能是必要的或期望的。通常,当业务被加密时,每个消息的整个有效载荷被加密,其中包括用于表示解锁消息的比特。因此,通常不可能在不首先解密消息有效载荷的情况下确定特定的加密消息是否为解锁消息。不幸的是,解密消息有效载荷可能会使安全子系统暴露于有害的网络入侵。因此,需要能够以安全的方式实现关于嵌入式节点解锁消息的IPD保护的方法、系统和设备,即使当这种消息被加密时。
发明内容
本文公开了用于降低未经授权地访问过程控制系统的安全子系统中的嵌入式节点的风险的技术、系统、装置、部件、设备和方法。所述技术、系统、装置、部件、设备和方法可应用于工业过程控制系统、环境和/或工厂,其在本文中可互换地称为“工业控制”、“过程控制”或“过程”系统、环境和/或工厂。通常,这种系统和工厂以分布式的方式提供对一个或多个过程的控制,该一个或多个过程进行操作以制造、精炼、转化、生成或生产物理材料或产品。
在利用(或潜在利用)加密消息的过程控制系统中,通过分析消息头部中的指示符来识别解锁消息。在一些实施例中,可以对由特定数据分组格式/协议(例如,常规以太网帧的两字节以太网类型字段)定义的特定字段至少部分地进行重新利用(repurpose)以用作解锁消息指示符。可以使用对于入侵保护设备(IPD)来说已知的预定义比特序列来指示解锁消息。例如,IPD可以通过下载了专门的软件或固件来了解与解锁消息相对应的序列(或多个可能序列的集合),和/或了解该序列的位置(例如,在以太网类型字段内)。
加密的消息通常加密有效载荷,但不加密头部。因此,通过检查消息头部,IPD可以识别解锁消息而无需执行深度分组检查所需的解密。更一般地,IPD的防火墙技术可以通过仅基于头部信息(诸如源、目的地和类型)而不是任何有效载荷信息来避免深度分组检查。
因此,由IPD保护的任何嵌入式节点和/或安全子系统可远不易受到入侵。除了本文描述的用于识别解锁消息的新技术之外,嵌入式节点的解锁可以以类似于常规IPD的方式进行。例如,除非在IPD上的物理控件(例如,按钮)被激活(例如,按压)时接收到解锁消息,否则IPD可抛弃或丢弃被标识为如此的每个解锁消息(基于解锁指示符比特序列)。
附图说明
图1描绘了用于解锁常规过程控制系统中的受保护功能的现有技术解锁消息。
图2描绘了可用于解锁过程控制系统中的受保护功能的新的示例性解锁消息。
图3是利用解锁消息(诸如图2的解锁消息)的示例性安全子系统的框图。
图4是利用解锁消息(诸如图2的解锁消息)的另一示例性安全子系统的框图。
图5是利用解锁消息(诸如图2的解锁消息)和/或包括一个或多个安全子系统(诸如图3和/或图4的安全子系统)的示例性过程控制环境的框图。
图6是描绘用于降低未经授权地访问过程控制系统的安全子系统中的嵌入式节点的风险的示例性方法的流程图。
图7是描绘用于降低未经授权地访问过程控制系统的安全子系统中的嵌入式节点的风险的另一示例性方法的流程图。
具体实施方式
图2根据一个实施例,描绘了可用于解锁过程控制系统中的一个或多个受保护功能的示例性解锁消息100。受保护的功能可以包括由过程控制系统的安全子系统中(例如,在DeltaV安全集成系统或SIS中)的一个或多个嵌入式节点(例如,控制器、逻辑解算器等)提供的功能或以其它方式与其相关联的功能。受保护的功能可以包括诊断功能、更新功能、停用功能、和/或期望受控/受限访问的一个或多个其它功能。
如图2所示,解锁消息100包括未加密的消息头部102和加密的消息有效载荷104。消息有效载荷104可能已经由解锁消息100的源(或中间设备)使用任何合适的加密技术加密,并且可以是受到解锁消息100通常遵守的协议或标准(例如,特定的IEEE标准)的限制的任何长度。在图1的示例性实施例中,消息头部102包括源字段(由协议定义为解锁消息100的源的MAC地址)、目的地字段(由协议定义为解锁消息100的预期目的地的MAC地址)、以太网类型字段(由该协议定义为对哪个协议被封装在消息有效载荷104内的指示,诸如IPv4、ARP、Wake-on-LAN、TRILL等等,并且可能还有消息有效载荷104和/或解锁消息100的大小)以及也可以遵守相同协议/标准的一个或多个其它字段(例如,前导码、定界符等)。
在消息头部102内的位置106处,一个或多个比特的序列指示消息100是解锁消息。在一些实施例中,使用单个预定义的比特序列来解锁嵌入式节点的所有锁定的功能,而在其它实施例中,需要不同的比特序列来解锁不同的嵌入式节点功能。在图2的实施例中,比特序列的位置106与消息头部102的以太网类型字段的标准/协议定义的位置精确地一致。在一些实施例中,以太网类型字段是两字节字段。在这样的实施例中,例如,确切的比特序列“1010 1010 1010 1010”可以指示消息100是解锁消息。然而,在其它实施例中,指示解锁消息的比特序列不占用特定字段的所有比特。例如,如果位置106与两字节以太网类型字段一致,则任何比特序列“1xxxxxxx xxxxxxxx”可以指示解锁消息,其中“x”代表可以具有任一值(0或1)的“随意(don’t care)”位。因此,在一些实施例中,位置106处的比特可以提供解锁指示符,同时还提供其它信息(例如,关于封装在消息有效载荷104中的协议类型的信息)。此外,在一些实施例中,以太网类型(或其它头部)字段也可以用于指示除了解锁消息之外的其它类型的消息。
在替代实施例中,除了通常与以太网类型字段相关联的位置之外,解锁指示符(比特序列)可以位于头部102内的不同位置。此外,在一些实施例中,消息头部102可以包括比图2中示出的更多、更少和/或不同的字段。更一般地,解锁消息100作为整体可以以与图1中示出的不同的方式来布置。例如,解锁消息100可以在包括消息有效载荷104之后的脚部(footer),该脚部包含循环冗余校验(CRC)字段和/或一个或多个其它字段。
因为解锁指示符的位置106在消息头部102中而不是在消息有效载荷104中,所以有可能在不首先解密加密的消息有效载荷104的情况下识别解锁消息。因此,不同于图1的现有技术解锁消息10(如果解密消息10被加密,则需要解密有效载荷14),有可能在不执行解密并且不会增加网络入侵的风险的情况下识别解锁消息。此外,在一些实施例中,如果在接收到解锁消息100时IPD按钮或其它手动控件未被激活,则可以适当地抛弃解锁消息100而无需曾经解密解锁消息100的任何部分。
如上所述,解锁消息100可用于解锁安全子系统中的嵌入式节点的一个或多个受保护的功能。图3中示出了一个这种安全子系统120的示例。例如,安全子系统120可以是DeltaV SIS或其一部分。如图3所示,安全子系统120包括控制器122和入侵保护设备(IPD)124,控制器122是安全子系统120的嵌入式节点,IPD 124作为防火墙设备来操作以防止未授权地访问控制器122(以及可能访问图3中未示出的安全子系统120的其它部分)。尽管在图3中被描绘为安全子系统120的一部分,但是应当理解,IPD124可以替代地被视为在安全子系统120外部(例如,作为通往安全子系统120的网关)。
控制器122包括过程控制软件126(可能包括固件和/或硬件),过程控制软件126在过程控制系统内实现一个或多个可配置的控制例程/模块(或其部分)。例如,过程控制软件126可以包括指令,所述指令使得控制器122通过接收指示由一个或多个现场设备进行的过程测量的信号、分析那些信号以生成控制信号并且将那些控制信号发送到一个或多个其它现场设备来实现特定的控制例程。可以从配置工作站下载过程控制软件126(例如,如下面结合图5所讨论的),并将其作为指令储存在控制器122的持久性存储器(图3中未示出)中,例如,诸如硬盘驱动器或固态存储器。在替代实施例中,控制器122替代地是不同类型的嵌入式节点,例如,诸如逻辑解算器。
过程控制软件126可以支持一个或多个受保护的/锁定的功能128,其可以包括或可以不包括与由过程控制软件126实现的任何控制例程直接相关联的功能。例如,受保护的功能128可以包括用于中断当前由控制器122执行的控制例程的功能、用于将输入注入到当前由控制器122执行的控制例程的功能、用于将新控制例程下载到控制器122的功能、用于将控制器122置于诊断模式的功能等等。过程控制软件126还被配置为:确定何时接收到的消息是解锁消息,并且当接收到有效的解锁消息时允许访问受保护的功能128,如下面进一步所讨论的。
IPD 124包括储存防火墙130的指令的持久性存储器(例如,硬盘驱动器或固态存储器,图3中未示出)。防火墙130包括通常被配置为基于各种安全规则将各种安全监控和/或控制功能应用到由IPD 124接收的网络业务的软件、固件和/或硬件。例如,防火墙130可以包括被配置为检测和隔离计算机病毒的软件。
防火墙130还包括头部检查单元132,头部检查单元132识别由IPD 124接收的消息/分组之中的有效解锁消息。具体地,头部检查单元132检查未加密的消息头部内的特定位置(例如,图2的消息头部102内的位置106)处的比特序列,并确定该比特序列是否指示消息是解锁消息。例如,头部检查单元132可以将该位置处的比特序列与已知对应于解锁消息的特定比特序列或特定比特序列集合进行比较。
如果头部检查单元132确定给定消息是解锁消息,则防火墙130检查IPD按钮134的当前状态,IPD按钮134通常(或者在一些实施例中往往)必须被激活/按压以便解锁消息解锁任何受保护的功能128。IPD按钮134可以是暴露在IPD 124的表面之上(或在可移除的盖之下)的物理按钮。在其它实施例中,IPD按钮134是不同类型的手动控件,诸如通过使开关“开启”来激活的切换开关、或者根据特定的组合/代码通过设置每个单独的按钮/拨盘/开关/等等来激活的一组按钮、盘片、拨盘、开关,等等。
如果防火墙130确定IPD按钮134当前被激活(例如被按压),则IPD124可以将解锁消息转发到控制器122。控制器122然后可以检查消息头部的适当位置处的比特序列以将消息辨识为解锁消息,并根据需要提供对受保护的功能128的访问。如果防火墙130替代地确定IPD按钮134当前未被激活,则IPD 124可以抛弃解锁消息,并且从不将解锁消息转发到控制器122。
在其它实施例中,解锁消息还包括消息有效载荷内的第二解锁指示符(例如,如图1所指示的,在针对这种指示符的常规位置处),并且控制器122通过分析第二解锁指示符将消息识别为解锁消息(即,在解密之后)。然而,即使在这后一个实施例中,IPD 124仍然抛弃对应于当IPD按钮134未被激活时的未授权的解锁消息。因此,控制器122仍然不需要解密大多数或所有未授权的解锁消息。
在替代实施例中,防火墙130不要求IPD按钮134当前被激活以便将解锁消息转发到控制器122。例如,对于IPD按钮134在最后五秒中的某个时间已经被按压或以其它方式被激活等等可能就足够了。
在解锁指示符处于以太网类型字段的位置(例如,图2中的位置106)的一些实施例中,控制器122被配置为忽视(disregard)以太网类型字段(例如,如果控制器122以与IPD124相同的方式通过分析头部来识别解锁消息),或者以非常规方式来分析以太网类型字段(例如,如果解锁指示符与以太网类型指示符组合,如以上结合图2所讨论的)。在其它实施例(例如,控制器122通过分析消息有效载荷以常规方式识别解锁消息的一些实施例)中,在IPD 124分析以太网类型字段中的解锁指示符之后,IPD 124将以太网类型字段修改为可由控制器122辨识的标准化值。
图4中示出了可以利用图2的解锁消息100的另一个安全子系统140。如图4所示,安全子系统140(例如,DeltaV SIS或其一部分)包括两个嵌入式节点:控制器142和逻辑解算器144。控制器142可以例如类似于图3的控制器122。顾名思义,逻辑解算器144通常可以被配置为在过程控制系统内执行逻辑解算。例如,类似于逻辑解算器144的多个逻辑解算器可以用于执行模块化的、可伸缩的逻辑解算任务,该任务需要执行由控制器142执行的多个控制例程。
控制器142和逻辑解算器144可以各自执行一个或多个受保护的功能或以其它方式与一个或多个受保护的功能相关联。受保护的功能可以类似于上面结合图3描述的功能(例如,影响实时控制例程的功能、更新功能、诊断功能等)。控制器142和逻辑解算器144可以包括储存支持那些和其它功能的指令的持久性存储器。
IPD 146作为防火墙设备来操作以防止对控制器142、逻辑解算器144以及可能对图4中未示出的安全子系统140的其它部分的未授权访问。例如,IPD 146可以类似于图3的IPD 124,并且包括头部检查单元150,该头部检查单元150可以类似于图3的头部检查单元132。虽然在图4中被描绘为安全子系统140的一部分,但是应当理解,IPD 146可以替代地被视为在安全子系统140的外部(例如,作为通往安全子系统140的网关)。
可以是有线和/或无线的过程控制网络或骨干152将控制器142耦合到逻辑解算器144,并且可能还耦合到多个其它设备(例如,其它逻辑解算器、I/O卡等等)。逻辑解算器144可以经由一个或多个有线和/或无线网络耦合到安全子系统140的多个现场设备(图4中未示出)。
在一些实施例中,对控制器142的受保护功能的访问以上面结合图3所讨论的方式进行操作。例如,头部检查单元150可以在网络业务160(其可以被加密或可以不被加密)中检查每个消息头部,以确定以控制器142为目的地的特定消息是否为解锁消息,并且还可以检测IPD按钮或其它手动控件当前是否被激活。如果手动控件被激活(或者,在一些实施例中最近被激活),则IPD 146将解锁消息转发到控制器142,控制器142分析相同的头部字段(或在解密后,分析消息有效载荷内的第二解锁指示符)以识别解锁消息并允许访问(例如,执行)受保护的功能。
在一些实施例中,对逻辑解算器144的受保护功能的访问以类似的方式进行操作。然而,在其它实施例中,控制器142被配置为辨识(或至少,不抛弃)具有更改的头部(例如,以太网类型)字段的消息/分组,而逻辑解算器144不是并且因此抛弃这种消息。在这些后面的实施例中,控制器142可以包括头部修改单元162(例如,作为指令储存在控制器142的持久性存储器中),如图4所示。头部修改单元162通常被配置为将用于指示解锁消息的以太网类型或其它头部字段改回到适当的/辨识的值(例如,如标准/协议所定义的)。
例如,如果网络业务160包括类似于图2的解锁消息100的解锁消息,则头部检查单元150可以分析消息头部102的位置106处的比特序列以将该消息识别为解锁消息。如果IPD按钮或其它手动控件在适当的时间被激活,则IPD146在安全网络业务164内将解锁消息转发到控制器142。控制器142可以以各种方式将该消息辨识为以逻辑解算器144为目的地的解锁消息。例如,IPD 146可以向控制器142发送指示同样多的附带数据,或者控制器142可以通过检查解锁指示符(在头部中,或者在有效载荷中的第二解密的解锁指示符)和目的地MAC地址来确定这一点。
控制器142的头部修改单元162然后将消息头部中的解锁指示符改变为由适用的标准或协议预先定义的值(例如,常规的以太网类型值),并且经由骨干152在安全网络业务166内将解锁消息转发到逻辑解算器144。逻辑解算器144然后可以以常规方式解读以太网类型字段(或其它头部字段)中的值,并且通过分析解密的有效载荷中的解锁指示符(例如,最初存在于网络业务166中的消息中的指示符,或者由IPD 146或控制器142添加的新指示符)来将消息辨识为解锁消息。逻辑解算器144然后可以允许访问(例如,执行)受保护的功能。在一些替代实施例中,头部修改单元162位于IPD 146内而不是控制器142内,或位于图4中未示出的另一个中间设备中。
图5是可以利用解锁消息(诸如图2的解锁消息100)和/或包括一个或多个安全子系统(诸如图3的安全子系统120和/或图4的安全子系统140)的示例性过程控制环境200的框图。在示例性环境200中,虚线上方的区域可以是(相对)非安全的,而虚线下方的区域可以表示安全子系统(例如,DeltaV SIS)。
过程控制环境200包括多个控制器202、204、206、208、210(在本文中统称为“控制器202-210”),其接收指示由现场设备进行的过程测量的信号(图5中未示出),处理该信息以实现控制例程,并生成通过有线和/或无线过程控制通信链路或网络发送到其它现场设备(也未在图5中示出)的控制信号以控制过程的控制环境200中的过程的操作。通常,至少一个现场设备执行物理功能(例如,打开或关闭阀、升高或降低温度、进行测量、感测状况等)以控制过程的操作。一些类型的现场设备通过使用I/O设备来与控制器202、204、206、208和/或210通信。过程控制器202-210、现场设备和I/O设备可以是有线的或无线的,并且任何数量和组合的有线和无线过程控制器、现场设备和I/O设备可以包括在过程控制环境200中。
在示例性环境200中,控制器202通信地连接到IPD 220,控制器204通信地连接到IPD 222,并且控制器206、208、210经由交换设备226通信地连接到IPD 224。控制器202-210中的每一个还可以通信地耦合(直接和/或经由I/O卡)到一个或多个现场设备和/或其它相关联的节点(例如,逻辑解算器),如上所述,为清楚起见未在图5中示出这些现场设备和/或相关联的节点。现场设备(例如,传感器、阀、电机、变送器、定位器等)可以是任何有线和/或无线设备,其使用任何合适的智能通信协议,诸如现场总线协议、协议、/>协议等。
控制器202-210(举例来说,其可以是由艾默生过程管理销售的DeltaV控制器)中的每一个包括处理器和储存针对一个或多个过程控制例程的指令的存储器,这些指令将在下面进一步详细讨论。IPD 220、222、224还通信地连接到交换设备230,交换设备230又通信地连接到过程控制通信网络或骨干232。骨干232可以包括一个或多个有线和/或无线通信链路,并且可以使用任何合适的通信协议来实现,诸如,举例来说,以太网协议。交换设备226和230中的每一个可以基于指定的接收方(例如,目的地MAC地址)沿着适当的路径来路由消息。
应当注意,如果需要的话,本文描述的任何控制例程或模块可以使其部分由不同控制器或其它设备实现或执行。同样地,要在过程控制环境100内实现的控制模块可以采取任何形式,包括软件、固件、硬件等。控制例程可以以任何期望的软件格式来实现,诸如使用面向对象的编程、梯形逻辑、顺序功能图、功能框图或使用任何其它软件编程语言或设计范例。其上储存控制例程或模块的每个存储器可以是任何适当类型的存储器,诸如随机存取存储器(RAM)和/或只读存储器(ROM)。此外,控制例程或模块可以被硬编码到例如一个或多个EPROM、EEPROM、专用集成电路(ASIC)和/或任何其它硬件或固件元件中。因此,控制器202-210中的每一个可以以任何期望的方式来配置以实现控制策略或控制例程/模块。
控制器202-210中的每一个使用通常被称为功能块的东西来实现控制策略,其中每个功能块是总体控制例程的对象或其它部分(例如,子例程),并且(经由被称为“链路”的通信)结合其它功能块来操作以实现过程控制环境200内的过程控制回路。基于控制的功能块通常执行以下中的一个:(1)输入功能,诸如与变送器、传感器或其它过程参数测量设备相关联的输入功能;(2)控制功能,诸如与执行PID、模糊逻辑等控制的控制例程相关联的控制功能;或(3)输出功能,其控制诸如阀或传送带电机之类的某些设备的操作以在过程控制环境200内执行某些物理功能。当然,存在混合的和其它类型的功能块。功能块可以储存在控制器202-210中并由其执行,这典型地是当这些功能块用于或关联于标准4-20mA设备和某些类型的智能现场设备(例如,设备)时的情形,或者功能块可以储存在现场设备本身中并由其实现,这可以是对于/>现场总线设备的情形。控制器202-210中的每一个控制器中的一个或多个控制模块可以实现通过执行一个或多个功能块来执行的一个或多个控制回路。
在过程控制环境200的非安全部分中,一个或多个操作员工作站240通信地连接到骨干232。经由操作员工作站240,操作人员可以监控过程控制环境200的运行时间(run-time)操作,以及采取可能需要的诊断、纠正、维护和/或其它动作。操作员工作站240中的至少一些可以位于过程控制环境200中或附近的各种物理保护区域,例如在工厂的后端环境中,并且在一些情况下,操作员工作站240中的至少一些可以位于远程(但仍然与过程控制环境200通信连接)。操作员工作站240可以是有线或无线计算设备。操作员工作站240可以具有外部连接(例如,到互联网),并且因此可能易受网络入侵/攻击。
过程控制环境200在图5中进一步例示为包括一个或多个配置应用242A和一个或多个配置数据库242B,其中的每一个也通信地连接到骨干232。配置应用242A的各种实例可以在一个或多个计算设备(图5中未示出)上执行,以使得用户能够创建或更改过程控制模块并且经由骨干232将这些模块下载到控制器202-210和/或其它过程控制器,以及使得用户能够创建或更改操作员界面,操作员能够经由该操作员界面查看数据并更改过程控制例程中的数据设置。配置数据库242B储存配置的模块和/或操作员界面。通常,配置应用242A和配置数据库242B可以是集中的并且对于过程控制环境200具有统一的逻辑外观(尽管配置应用242A的多个实例可以在过程控制环境200内同时执行),并且配置数据库242B可以储存在单个物理数据储存设备中或跨多个数据储存设备而储存。配置应用242A、配置数据库242B及对其的用户界面(图5中未示出)共同地形成用于创建/配置控制和/或显示模块的配置或开发系统242。典型地但不一定,用于配置系统242的用户界面与操作员工作站240不同,其中用于配置系统242的用户界面替代地由配置和开发工程师使用,而不管过程控制环境200是否正在实时操作,其中操作员工作站240由操作员在过程控制环境200的实时(或“运行时间”)操作期间使用。如操作员工作站240一样,配置系统242可能受到网络入侵/攻击。
示例性过程控制环境200还包括一个或多个无线接入点244,该一个或多个无线接入点244使用其它无线协议(诸如符合IEEE 802.11的无线局域网协议、诸如WiMAX(全球互通微波接入)、LTE(长期演进)或其它ITU-R(国际电信联盟无线电通信部门)兼容协议之类的移动通信协议,诸如近场通信(NFC)或蓝牙的短波无线电通信、和/或其它无线通信协议)与其它设备通信。通常,每个无线接入点244允许手持或其它便携式计算设备(例如,膝上型计算机、智能电话等)通过相应的无线过程控制通信网络进行通信。例如,便携式计算设备可以是由过程控制环境200内的操作员(例如,操作员工作站240中的一个操作员工作站的实例)使用的移动工作站或诊断测试设备。
如上所述,图3和4的安全子系统120和140中的一个或两者可以并入过程控制环境200中。例如,图3的IPD 124可以是图5的IPD 220,并且图3的控制器122可以是图5的控制器202。替代地或附加地,图4的IPD146可以是图5的IPD 222,图4的控制器142可以是图5的控制器204,并且图4的逻辑解算器144可以是通信地连接到控制器204的逻辑解算器(图5中未示出)。
应当注意,图5仅例示了过程控制环境200的单个可能实施例。在其它实施例中,例如,过程控制环境200可包括更多或更少的控制器、IPD和/或交换设备(和/或以与图5中所示的不同的方式或不同的位置来连接的控制器、IPD和/或交换设备),和/或可以包括图5中未示出或上面讨论的各种不同类型的设备。为了提供单个更具体的示例,过程控制环境200可以仅包括位于交换设备230的骨干232侧上的单个IPD,而不是三个IPD 220、222、224。
图6是描绘用于降低未经授权地访问过程控制系统的安全子系统中的嵌入式节点的风险的示例性方法300的流程图。方法300例如可以由诸如图3的IPD 124、图4的IPD 146、或图5的IPD 220、222、224中的一个IPD之类的IPD实现。作为更具体的示例,方法300可以由图3的防火墙130实现。
在方法300的框302处,经由通信网络接收包括消息头部和消息有效载荷的消息。该消息例如可以是或包括具有嵌入式节点作为其目的地的以太网帧。在一些实施例和/或场景中,消息有效载荷被加密,而消息头部未被加密。在其它实施例和/或场景中,消息有效载荷和消息头部都未被加密。
在框304处,至少通过分析消息头部中的一个或多个比特的比特序列来确定接收到的消息是被配置为访问嵌入式节点的一个或多个受保护的功能的解锁消息。例如,框304可以包括将消息头部中的比特序列与事先已知对应于解锁消息的比特序列进行比较。嵌入式节点可以是支持一个或多个受保护的功能或与一个或多个受保护的功能相关联的过程控制系统中的控制器、逻辑解算器或任何其它合适类型的节点。消息头部中的比特序列可以对应于特定头部字段,诸如消息的以太网类型字段。也就是说,比特序列可以位于消息头部内的某一位置,其由标准/协议定义为以太网类型(或其它头部)字段(或其一部分)。
在框306处,确定手动控制机构(例如,按钮、切换开关、组合锁的拨盘或旋转盘等)是否已被操作人员置于特定状态(例如,当前被按下,当前被设置为特定的代码/组合等,或者在一些实施方式中,最近被按下,等等)。框306处的确定可以使用任何合适的传感器、模数转换电路等来进行。
如果控制机构尚未被置于特定状态,则流程进行到框308,在框308处,抛弃消息而不将其转发到嵌入式节点(以及在一些实施方式中,不将其转发到任何其它节点或设备)。然而,如果控制机构已被置于特定状态,则流程进行到框310,在框310处,使得嵌入式节点进入解锁状态。框310可以包括将解锁消息转发到例如嵌入式节点、或者将解锁消息转发到控制器或嵌入式节点的其它父亲(parent)等。“解锁状态”可以是嵌入式节点允许软件更新、进入诊断模式、可以被停用、允许对实时控制例程的某些输入或改变等等。
在嵌入式节点是控制器的子节点(例如,逻辑解算器)的一些实施例中,框310包括:在控制器处,修改消息头部中的比特序列以包含由子节点辨识的值,并且在修改消息头部中的比特序列之后,将消息从控制器转发到子节点。例如,如果比特序列位于常规为以太网类型字段保留的位置中,则控制器可以修改该比特序列,使得以太网类型字段包含常规的以太网类型值(以及在一些实施方式中,使得以太网类型字段包含与正在使用的通信协议(诸如IPv4、TRILL等)相匹配的以太网类型值)。
在一些实施例中,如果消息有效载荷被加密,则控制器还(并且在将消息转发到子节点之前)解密消息有效载荷,并且将经解密的消息有效载荷中的一个或多个比特的另一个序列修改为由子节点辨识为解锁消息指示符的值。因此,例如,控制器可以使消息包括常规的解锁指示符。
图7是描绘用于降低未经授权地访问过程控制系统的安全子系统中的嵌入式节点的风险的另一示例性方法400的流程图。方法400例如可以由过程控制系统的安全子系统的各种部件(诸如图4中的安全子系统140的IPD 146、控制器142和逻辑解算器144)实现。作为更具体的示例,框402、404、406、408和410可以由诸如图4的IPD 146之类的IPD实现,框412和414可以由诸如图4的控制器142之类的控制器实现,和/或框416和418可以由诸如图4的逻辑解算器144之类的逻辑解算器实现。
在方法400的框402处,经由通信网络接收包括消息头部和消息有效载荷的消息。框402可以类似于方法300的框302。例如,消息头部可以未被加密,并且消息有效载荷可以被加密等。
在框404处,至少通过分析消息头部中的一个或多个比特的序列来确定接收到的消息是解锁消息。框404可以类似于方法300的框304。例如,比特序列可以位于消息头部的以太网类型字段内等。
在框406处,确定手动控制机构是否已被操作人员置于特定状态。框406可以类似于方法300的框306。如果控制机构尚未被置于特定状态,则流程进行到框408,在框408处,抛弃消息而不将其转发到嵌入式节点(以及在一些实施方式中,不将其转发到任何其它节点或设备)。然而,如果控制机构已被置于特定状态,则流程进行到框410,在框410处,将消息转发到控制器。
在框412处,在控制器处,修改消息头部中的比特序列以包含由作为控制器的子节点的逻辑解算器(例如,传统逻辑解算器、或以其它方式不被编程为解读消息头部中的解锁指示符的逻辑解算器)辨识的值。例如,如果比特序列包括在以太网类型字段中,则以太网类型字段可以被设置为由在过程控制系统中使用的通信标准/协议定义的值(以及在至少一些实施例中,被设置为与正在使用的协议(诸如IPv4、TRILL等)相匹配的值)。
在框414处,将具有消息头部中的经修改的比特序列的消息从控制器转发到逻辑解算器。在框416处,在逻辑解算器处,至少通过分析消息有效载荷中的一个或多个比特的序列来确定消息是解锁消息。在一些实施例中,所分析的消息有效载荷中的比特序列是常规的解锁指示符,并且因此可由传统逻辑解算器或以其它方式不被编程为解读消息头部中的解锁指示符的逻辑解算器辨识。所分析的消息头部中的比特序列可能已经存在于在框402处接收的原始消息中(即,如果消息最初包含至少两个解锁指示符的话),或者可能已经由IPD或控制器(例如,在解密消息有效载荷之后由控制器)添加。
在框418处,解锁逻辑解算器的至少一个受保护的功能。例如,逻辑解算器可以允许软件更新、进入诊断模式、允许停用、允许对实时控制例程的某些输入或改变等等。
在本公开内容中描述的技术的实施例可以单独地或组合地包括任意数量的以下方面:
方面1、一种用于降低未经授权地访问过程控制系统的安全子系统中的嵌入式节点的风险的方法,所述方法包括:经由通信网络接收消息,所述消息包括消息头部和消息有效载荷;确定所述消息是被配置为访问所述嵌入式节点的一个或多个受保护的功能的解锁消息,其中,确定所述消息是解锁消息包括分析所述消息头部中的一个或多个比特的比特序列;确定手动控制机构是否已被操作人员置于特定状态;以及基于(i)确定所述消息是解锁消息,以及(ii)确定所述手动控制机构是否已被置于所述特定状态,使得所述嵌入式节点进入解锁状态或不使得所述嵌入式节点进入解锁状态。
方面2、根据方面1所述的方法,其中,使得所述嵌入式节点进入解锁状态或不使得所述嵌入式节点进入解锁状态包括:响应于确定(i)所述消息是解锁消息,以及(ii)所述手动控制机构已被置于所述特定状态,使得所述嵌入式节点进入所述解锁状态;或者响应于确定(i)所述消息是解锁消息,以及(ii)所述手动控制机构尚未被置于所述特定状态,不使得所述嵌入式节点进入所述解锁状态。
方面3、根据方面1或2所述的方法,其中:使得所述嵌入式节点进入解锁状态或不使得所述嵌入式节点进入解锁状态包括:(A)响应于确定(i)所述消息是解锁消息,以及(ii)所述手动控制机构已被置于所述特定状态,将所述解锁消息转发到所述嵌入式节点或作为所述嵌入式节点的父亲的控制器,或者(B)响应于确定(i)所述消息是解锁消息,以及(ii)所述手动控制机构尚未被置于所述特定状态,丢弃所述解锁消息而不转发所述解锁消息。
方面4、根据方面1至3中任一方面所述的方法,其中,经由通信网络接收消息包括:经由所述通信网络接收加密的消息,所述加密的消息包括未加密的消息头部和加密的消息有效载荷。
方面5、根据方面1至4中任一方面所述的方法,其中,分析所述消息头部中的一个或多个比特的比特序列包括:分析所述消息头部的以太网类型字段中的一个或多个比特的比特序列。
方面6、根据方面1至5中任一方面所述的方法,其中,所述嵌入式节点是控制器。
方面7、根据方面1至5中任一方面所述的方法,其中:所述嵌入式节点是控制器的子节点;使得所述嵌入式节点进入解锁状态或不使得所述嵌入式节点进入解锁状态包括:响应于确定(i)所述消息是解锁消息,以及(ii)所述手动控制机构已被置于所述特定状态,使得所述子节点进入所述解锁状态;以及使得所述子节点进入所述解锁状态包括:(A)在所述控制器处,修改所述消息头部中的所述比特序列以包含由所述子节点辨识的值,以及(B)在修改所述消息头部中的所述比特序列之后,将所述消息从所述控制器转发到所述子节点。
方面8、根据方面7中任一方面所述的方法,其中:经由通信网络接收消息包括:经由所述通信网络接收加密的消息,所述加密的消息包括未加密的消息头部和加密的消息有效载荷;以及使得所述子节点进入所述解锁状态还包括:在将所述消息从所述控制器转发到所述子节点之前,(A)解密所述加密的消息有效载荷,以及(B)将经解密的消息有效载荷中的一个或多个比特的比特序列修改为由所述子节点辨识为解锁消息指示符的值。
方面9、根据方面7或8所述的方法,其中:分析所述消息头部中的一个或多个比特的比特序列包括:分析所述消息头部的以太网类型字段内的比特序列;以及修改所述消息头部中的所述比特序列以包含由所述子节点辨识的值包括:修改所述以太网类型字段以包含由所述子节点辨识的以太网类型信息。
方面10、根据方面7至9中任一方面所述的方法,其中,所述子节点是逻辑解算器。
方面11、根据方面1至10中任一方面所述的方法,其中,分析所述消息头部中的一个或多个比特的比特序列包括:将所述消息头部中的所述比特序列与已知对应于解锁消息的比特序列进行比较。
方面12、根据方面1至11中任一方面所述的方法,其中,确定手动控制机构是否已被操作人员置于特定状态包括:确定物理按钮当前是否被操作人员按压。
方面13、一种入侵保护设备,包括:手动控制机构;以及一个或多个处理器,所述一个或多个处理器被配置为:(A)经由通信网络接收消息,所述消息包括消息头部和消息有效载荷,(B)至少通过分析所述消息头部中的一个或多个比特的比特序列来确定所述消息是否为被配置为访问过程控制系统的嵌入式节点的一个或多个受保护的功能的解锁消息,(C)确定所述手动控制机构是否已被操作人员置于特定状态,以及(D)当确定所述消息是解锁消息并且确定所述手动控制机构已被置于所述特定状态时,使得所述嵌入式节点进入解锁状态。
方面14、根据方面13所述的入侵保护设备,其中,所述消息头部中的所述比特序列是所述消息头部的以太网类型字段中的比特序列。
方面15、根据方面13或14所述的入侵保护设备,其中,所述手动控制机构是物理按钮。
方面16、根据方面13至15中任一方面所述的入侵保护设备,其中,所述一个或多个处理器被配置为至少通过以下方式来使得所述嵌入式节点进入解锁状态:将所述解锁消息转发到所述嵌入式节点或作为所述嵌入式节点的父亲的控制器。
方面17、一种过程控制系统的安全子系统,所述安全子系统包括:控制器,所述控制器包括一个或多个控制器处理器,所述一个或多个控制器处理器被配置为实现一个或多个过程控制模块;逻辑解算器,所述逻辑解算器包括一个或多个逻辑解算器处理器,所述一个或多个逻辑解算器处理器被配置为支持多个功能,其中,所述多个功能包括一个或多个受保护的功能,并且其中,所述逻辑解算器耦合到所述控制器作为所述控制器的子节点;以及入侵保护设备,所述入侵保护设备包括:手动控制机构,以及一个或多个入侵保护处理器,所述一个或多个入侵保护处理器被配置为:(A)经由通信网络接收消息,其中,所述消息包括消息头部和消息有效载荷,(B)至少通过分析所述消息头部中的一个或多个比特的比特序列来确定所述消息是否为解锁消息,(C)确定所述手动控制机构是否已被操作人员置于特定状态,以及(D)当确定所述消息是解锁消息并且确定所述手动控制机构已被置于所述特定状态时,将所述消息转发到所述控制器,其中,所述一个或多个控制器处理器还被配置为:当所述消息被转发到所述控制器时,(A)修改所述消息的所述消息头部中的所述比特序列以包含由所述逻辑解算器辨识的值,以及(B)在修改所述消息头部中的所述比特序列之后,将所述消息转发到所述逻辑解算器,并且其中,所述一个或多个逻辑解算器处理器被配置为:当所述消息被转发到所述逻辑解算器时,(A)至少通过分析所述消息有效载荷中的一个或多个比特的比特序列来确定所述消息是否为解锁消息,以及(B)当确定所述消息是解锁消息时,解锁所述一个或多个受保护的功能中的至少一个。
方面18、根据方面17所述的安全子系统,其中,经由所述通信网络接收的所述消息是加密的消息,所述加密的消息包括未加密的消息头部和加密的消息有效载荷。
方面19、根据方面17或18所述的安全子系统,其中,所述一个或多个控制器处理器还被配置为:当所述消息被转发到所述控制器时:解密所述加密的消息有效载荷;以及修改经解密的消息有效载荷中的所述比特序列以包含由所述逻辑解算器辨识为解锁消息指示符的值。
方面20、根据方面17或18所述的安全过程控制子系统,其中,所述一个或多个控制器处理器被配置为:在不首先解密所述加密的消息的任何部分的情况下将所述加密的消息转发到所述逻辑解算器。
当在软件中实现时,本文描述的任何应用、服务和引擎可以储存在任何有形的、非暂时性计算机可读存储器中,诸如在磁盘、激光盘、固态存储器设备、分子储存器或其它储存介质上,在计算机或处理器的RAM或ROM中等等。虽然本文公开的示例性系统被公开为包括在硬件上执行的软件和/或固件以及其它部件,但应该注意,这些系统仅仅是说明性的,不应视为限制。例如,预期这些硬件、软件和固件部件中的任何一个或全部可以专门以硬件、专门以软件或以硬件和软件的任何组合来体现。因此,尽管本文描述的示例性系统被描述为在一个或多个计算机设备的处理器上执行的软件中实现,但是本领域普通技术人员将容易理解,所提供的示例不是实现这样的系统的唯一方式。
因此,尽管已经参考具体实施例描述了本发明,这些实施例仅用于说明而不是限制本发明,但本领域普通技术人员显而易见的是,在不脱离本发明的精神和范围的情况下,可以对所公开的实施例进行更改、添加或删除。

Claims (18)

1.一种用于降低未经授权地访问过程控制系统的安全子系统中的嵌入式节点的风险的方法,所述方法包括:从在所述安全子系统外部的源并经由通信网络接收消息,所述消息包括未加密的消息头部和加密的消息有效载荷;基于所述未加密的消息头部中的一个或多个比特的比特序列来确定所述消息是被配置为访问所述嵌入式节点的一个或多个受保护的功能的解锁消息;确定手动控制机构是否已被操作人员置于特定状态;基于(i)确定所述消息是解锁消息,以及(ii)确定所述手动控制机构是否已被置于所述特定状态,确定要使得所述嵌入式节点进入解锁状态或不使得所述嵌入式节点进入解锁状态;响应于确定要使得所述嵌入式节点进入解锁状态,修改所述消息的所述未加密的消息头部中的所述比特序列的部分;以及将所述消息转发到所述嵌入式节点,使得所述嵌入式节点进入所述解锁状态。
2.根据权利要求1所述的方法,其中,使得所述嵌入式节点进入解锁状态或不使得所述嵌入式节点进入解锁状态包括:响应于确定(i)所述消息是解锁消息,以及(ii)所述手动控制机构已被置于所述特定状态,使得所述嵌入式节点进入所述解锁状态;或者响应于确定(i)所述消息是解锁消息,以及(ii)所述手动控制机构尚未被置于所述特定状态,不使得所述嵌入式节点进入所述解锁状态。
3.根据权利要求1所述的方法,其中,使得所述嵌入式节点进入解锁状态或不使得所述嵌入式节点进入解锁状态包括:响应于确定(i)所述消息是解锁消息,以及(ii)所述手动控制机构已被置于所述特定状态,将所述解锁消息转发到所述嵌入式节点或作为所述嵌入式节点的父亲的控制器;或者响应于确定(i)所述消息是解锁消息,以及(ii)所述手动控制机构尚未被置于所述特定状态,丢弃所述解锁消息而不转发所述解锁消息。
4.根据权利要求1所述的方法,其中,基于所述未加密的消息头部中的一个或多个比特的比特序列来确定所述消息是解锁消息包括:基于所述未加密的消息头部的以太网类型字段中的一个或多个比特的比特序列来确定所述消息是解锁消息。
5.根据权利要求1所述的方法,其中,所述嵌入式节点是控制器。
6.根据权利要求1所述的方法,其中:所述嵌入式节点是控制器的子节点;使得嵌入式节点进入解锁状态或不使得所述嵌入式节点进入解锁状态包括:响应于确定(i)所述消息是解锁消息,以及(ii)所述手动控制机构已被置于所述特定状态,使得所述子节点进入所述解锁状态;以及使得所述子节点进入所述解锁状态包括:在所述控制器处,修改所述未加密的消息头部中的所述比特序列以包含由所述子节点辨识的值,以及在修改所述未加密的消息头部中的所述比特序列之后,将所述消息从所述控制器转发到所述子节点。
7.根据权利要求6所述的方法,其中:使得所述子节点进入所述解锁状态还包括:在将所述消息从所述控制器转发到所述子节点之前,解密所述加密的消息有效载荷,以及将经解密的消息有效载荷中的一个或多个比特的比特序列修改为由所述子节点辨识为解锁消息指示符的值。
8.根据权利要求6所述的方法,其中:基于所述未加密的消息头部中的一个或多个比特的比特序列来确定所述消息是解锁消息包括:基于所述未加密的消息头部的以太网类型字段内的比特序列来确定所述消息是解锁消息;以及修改所述未加密的消息头部中的所述比特序列以包含由所述子节点辨识的值包括:修改所述以太网类型字段以包含由所述子节点辨识的以太网类型信息。
9.根据权利要求6所述的方法,其中,所述子节点是逻辑解算器。
10.根据权利要求1所述的方法,其中,基于所述未加密的消息头部中的一个或多个比特的比特序列来确定所述消息是解锁消息包括:将所述未加密的消息头部中的所述比特序列与已知对应于解锁消息的比特序列进行比较。
11.根据权利要求1所述的方法,其中,确定手动控制机构是否已被操作人员置于特定状态包括:确定物理按钮当前是否被操作人员按压。
12.一种入侵保护设备,包括:手动控制机构;以及一个或多个处理器,所述一个或多个处理器被配置为:从在过程控制系统的安全子系统外部的源并经由通信网络接收消息,所述消息包括未加密的消息头部和加密的消息有效载荷,基于所述未加密的消息头部中的一个或多个比特的比特序列来确定所述消息是否为被配置为访问过程控制系统的嵌入式节点的一个或多个受保护的功能的解锁消息,确定所述手动控制机构是否已被操作人员置于特定状态,以及当确定所述消息是解锁消息并且确定所述手动控制机构已被置于所述特定状态时:(i)确定要使得所述嵌入式节点进入解锁状态;(ii)修改所述消息的所述未加密的消息头部中的所述比特序列的部分,以及(iii)将所述消息转发到所述嵌入式节点,使得所述嵌入式节点进入所述解锁状态。
13.根据权利要求12所述的入侵保护设备,其中,所述未加密的消息头部中的所述比特序列是所述未加密的消息头部的以太网类型字段中的比特序列。
14.根据权利要求12所述的入侵保护设备,其中,所述手动控制机构是物理按钮。
15.根据权利要求12所述的入侵保护设备,其中,所述一个或多个处理器被配置为至少通过以下方式来使得所述嵌入式节点进入解锁状态:将所述解锁消息转发到所述嵌入式节点或作为所述嵌入式节点的父亲的控制器。
16.一种过程控制系统的安全子系统,所述安全子系统包括:控制器,所述控制器包括一个或多个控制器处理器,所述一个或多个控制器处理器被配置为实现一个或多个过程控制模块;逻辑解算器,所述逻辑解算器包括一个或多个逻辑解算器处理器,所述一个或多个逻辑解算器处理器被配置为支持多个功能,其中,所述多个功能包括一个或多个受保护的功能,并且其中,所述逻辑解算器耦合到所述控制器作为所述控制器的子节点;以及入侵保护设备,所述入侵保护设备包括:手动控制机构,以及一个或多个入侵保护处理器,所述一个或多个入侵保护处理器被配置为:从在所述安全子系统外部的源并经由通信网络接收消息,其中,所述消息包括未加密的消息头部和加密的消息有效载荷,基于所述未加密的消息头部中的一个或多个比特的比特序列来确定所述消息是否为解锁消息,确定所述手动控制机构是否已被操作人员置于特定状态,以及当确定所述消息是解锁消息并且确定所述手动控制机构已被置于所述特定状态时,将所述消息转发到所述控制器,
其中,所述一个或多个控制器处理器还被配置为:当所述消息被转发到所述控制器时,修改所述消息的所述未加密的消息头部中的所述比特序列以包含由所述逻辑解算器辨识的值,以及在修改所述未加密的消息头部中的所述比特序列之后,将所述消息转发到所述逻辑解算器,并且其中,所述一个或多个逻辑解算器处理器被配置为:当所述消息被转发到所述逻辑解算器时,基于所述加密的消息有效载荷或经解密的消息有效载荷中的一个或多个比特的比特序列来确定所述消息是否为解锁消息,以及当确定所述消息是解锁消息时,解锁所述一个或多个受保护的功能中的至少一个。
17.根据权利要求16所述的安全子系统,其中,所述一个或多个控制器处理器还被配置为:当所述消息被转发到所述控制器时:解密所述加密的消息有效载荷以生成经解密的消息有效载荷;以及修改经解密的消息有效载荷中的所述比特序列以包含由所述逻辑解算器辨识为解锁消息指示符的值。
18.根据权利要求16所述的安全子系统,其中,所述一个或多个控制器处理器被配置为:在不首先解密所述消息的任何部分的情况下将所述消息转发到所述逻辑解算器。
CN201810796002.4A 2017-07-21 2018-07-19 针对过程控制系统中的加密业务的防火墙 Active CN109286606B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US15/656,002 US11196711B2 (en) 2017-07-21 2017-07-21 Firewall for encrypted traffic in a process control system
US15/656,002 2017-07-21

Publications (2)

Publication Number Publication Date
CN109286606A CN109286606A (zh) 2019-01-29
CN109286606B true CN109286606B (zh) 2023-08-15

Family

ID=63042796

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810796002.4A Active CN109286606B (zh) 2017-07-21 2018-07-19 针对过程控制系统中的加密业务的防火墙

Country Status (5)

Country Link
US (1) US11196711B2 (zh)
JP (1) JP7148303B2 (zh)
CN (1) CN109286606B (zh)
DE (1) DE102018117465A1 (zh)
GB (1) GB2565224B (zh)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2021040239A (ja) * 2019-09-03 2021-03-11 ファナック株式会社 機械学習装置、受信装置及び機械学習方法
US11405215B2 (en) * 2020-02-26 2022-08-02 International Business Machines Corporation Generation of a secure key exchange authentication response in a computing environment
US11310036B2 (en) 2020-02-26 2022-04-19 International Business Machines Corporation Generation of a secure key exchange authentication request in a computing environment
US11489821B2 (en) 2020-02-26 2022-11-01 International Business Machines Corporation Processing a request to initiate a secure data transfer in a computing environment
US11502834B2 (en) 2020-02-26 2022-11-15 International Business Machines Corporation Refreshing keys in a computing environment that provides secure data transfer
US11184160B2 (en) 2020-02-26 2021-11-23 International Business Machines Corporation Channel key loading in a computing environment
US11546137B2 (en) 2020-02-26 2023-01-03 International Business Machines Corporation Generation of a request to initiate a secure data transfer in a computing environment
US11652616B2 (en) 2020-02-26 2023-05-16 International Business Machines Corporation Initializing a local key manager for providing secure data transfer in a computing environment
CN114598726A (zh) * 2020-12-07 2022-06-07 上汽通用汽车有限公司 远程解锁车辆防火墙的系统、方法及存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101387884A (zh) * 2007-09-14 2009-03-18 费舍-柔斯芒特系统股份有限公司 用于安全仪表化过程控制系统的入侵防御的设备及方法
CN102789214A (zh) * 2011-05-19 2012-11-21 费希尔-罗斯蒙特系统公司 一种在过程控制系统与资产管理系统之间的软件锁定协调
CN105629924A (zh) * 2014-11-21 2016-06-01 费希尔-罗斯蒙特系统公司 具有受保护的外部访问的过程工厂网络
CN105915531A (zh) * 2016-05-20 2016-08-31 青岛海信移动通信技术股份有限公司 一种屏幕解锁方法及终端

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10111860A (ja) * 1996-10-08 1998-04-28 Fujitsu Ltd 並列計算機のデータ転送装置
JP3450808B2 (ja) 2000-08-25 2003-09-29 株式会社東芝 電子機器及び接続制御方法
JP2002176455A (ja) 2000-12-06 2002-06-21 Nec Corp セキュリティシステム及びそれに用いる音声データセキュリティ方法
JP3624878B2 (ja) 2001-12-05 2005-03-02 日本電気株式会社 Ipネットワーク及びそれに用いるアドミッション制御方法
JP3857627B2 (ja) 2002-08-05 2006-12-13 株式会社日立製作所 無線通信処理システム、無線通信処理装置、無線通信処理装置を用いた機器及び無線通信処理方法
CN1745555B (zh) * 2003-02-28 2011-05-11 捷讯研究有限公司 保护通信设备上的数据的系统和方法
JP2004272319A (ja) 2003-03-05 2004-09-30 Hitachi Ltd セキュリティ性向上と管理容易化のための装置をもった計算機と方法
US7549044B2 (en) * 2003-10-28 2009-06-16 Dphi Acquisitions, Inc. Block-level storage device with content security
JP2007122629A (ja) 2005-10-31 2007-05-17 Kubota Systems Inc 処理システム、入出力装置及びコンピュータプログラム
US8590033B2 (en) 2008-09-25 2013-11-19 Fisher-Rosemount Systems, Inc. One button security lockdown of a process control network
JP5797060B2 (ja) 2011-08-24 2015-10-21 株式会社野村総合研究所 アクセス管理方法およびアクセス管理装置
CN103685175B (zh) 2012-09-11 2017-12-01 腾讯科技(深圳)有限公司 应用平台与应用共享登录态的方法、代理服务器及系统
US10638202B1 (en) * 2013-03-15 2020-04-28 CSC Holdings, LLC State synchronization and management for two-way connected consumer electronic devices
US10055567B2 (en) * 2014-05-30 2018-08-21 Apple Inc. Proximity unlock and lock operations for electronic devices
US9813399B2 (en) * 2015-09-17 2017-11-07 T-Mobile Usa, Inc. Secure remote user device unlock for carrier locked user devices

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101387884A (zh) * 2007-09-14 2009-03-18 费舍-柔斯芒特系统股份有限公司 用于安全仪表化过程控制系统的入侵防御的设备及方法
CN102789214A (zh) * 2011-05-19 2012-11-21 费希尔-罗斯蒙特系统公司 一种在过程控制系统与资产管理系统之间的软件锁定协调
CN105629924A (zh) * 2014-11-21 2016-06-01 费希尔-罗斯蒙特系统公司 具有受保护的外部访问的过程工厂网络
CN105915531A (zh) * 2016-05-20 2016-08-31 青岛海信移动通信技术股份有限公司 一种屏幕解锁方法及终端

Also Published As

Publication number Publication date
JP2019049968A (ja) 2019-03-28
JP7148303B2 (ja) 2022-10-05
CN109286606A (zh) 2019-01-29
GB2565224A (en) 2019-02-06
US11196711B2 (en) 2021-12-07
DE102018117465A1 (de) 2019-01-24
GB2565224B (en) 2022-03-09
GB201810444D0 (en) 2018-08-08
US20190028437A1 (en) 2019-01-24

Similar Documents

Publication Publication Date Title
CN109286606B (zh) 针对过程控制系统中的加密业务的防火墙
US11700232B2 (en) Publishing data across a data diode for secured process control communications
CN105939334B (zh) 工业通信网络中的异常检测
EP3002648B1 (en) Scada intrusion detection systems
US20180115528A1 (en) Securely Transporting Data Across a Data Diode for Secured Process Control Communications
US11212322B2 (en) Automated discovery of security policy from design data
US10110561B2 (en) Firewall with application packet classifer
EP3763099B1 (en) Attribute-based policies for integrity monitoring and network intrusion detection
EP2866407A1 (en) Protection of automated control systems
US10261489B2 (en) Detection of mis-configuration and hostile attacks in industrial control networks using active querying
JP2019080310A (ja) 強化されたスマートプロセス制御スイッチのポートロックダウン
EP3518478B1 (en) Configurable network switch for industrial control systems including deterministic networks
US20210092097A1 (en) Whitelisting for HART Communications in a Process Control System
JP2021064934A (ja) 安全で、公開可能なプロセスプラントデータ配信のためのエッジゲートウェイシステム
EP3675455A1 (en) Bi-directional data security for supervisor control and data acquisition networks
EP3667526B1 (en) Rapid file authentication on automation devices
Colelli et al. Securing connection between IT and OT: the Fog Intrusion Detection System prospective
CN216596008U (zh) 现场通信器设备
US20240219879A1 (en) Method, System and Inspection Device for Securely Executing Control Applications
Banerjee et al. Selective Encryption Framework for Securing Communication in Industrial Control Systems

Legal Events

Date Code Title Description
PB01 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