CN117413227A - 用于安全执行控制应用的方法和系统及检查设备 - Google Patents
用于安全执行控制应用的方法和系统及检查设备 Download PDFInfo
- Publication number
- CN117413227A CN117413227A CN202280037914.8A CN202280037914A CN117413227A CN 117413227 A CN117413227 A CN 117413227A CN 202280037914 A CN202280037914 A CN 202280037914A CN 117413227 A CN117413227 A CN 117413227A
- Authority
- CN
- China
- Prior art keywords
- control application
- control
- event
- flow
- inspection
- 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.)
- Pending
Links
- 238000007689 inspection Methods 0.000 title claims abstract description 67
- 238000000034 method Methods 0.000 title claims description 38
- 230000001419 dependent effect Effects 0.000 claims abstract description 28
- 230000001960 triggered effect Effects 0.000 claims abstract description 15
- 230000002093 peripheral effect Effects 0.000 claims abstract description 9
- 230000006870 function Effects 0.000 claims description 16
- 238000012544 monitoring process Methods 0.000 claims description 12
- 230000008569 process Effects 0.000 claims description 12
- 238000012549 training Methods 0.000 claims description 8
- 238000004458 analytical method Methods 0.000 claims description 6
- 230000003213 activating effect Effects 0.000 claims description 3
- 230000003993 interaction Effects 0.000 claims description 3
- 238000012545 processing Methods 0.000 claims description 2
- 239000003550 marker Substances 0.000 claims 4
- 230000007704 transition Effects 0.000 claims 1
- 230000006399 behavior Effects 0.000 description 15
- 238000004891 communication Methods 0.000 description 10
- 238000005259 measurement Methods 0.000 description 9
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 230000002572 peristaltic effect Effects 0.000 description 2
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000008030 elimination Effects 0.000 description 1
- 238000003379 elimination reaction Methods 0.000 description 1
- 238000002347 injection Methods 0.000 description 1
- 239000007924 injection Substances 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000004801 process automation Methods 0.000 description 1
- 230000001681 protective effect Effects 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000011664 signaling Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/12—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/04—Programme control other than numerical control, i.e. in sequence controllers or logic controllers
- G05B19/042—Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
- G05B19/0428—Safety, monitoring
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/418—Total 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/4184—Total 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 fault tolerance, reliability of production system
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B23/00—Testing or monitoring of control systems or parts thereof
- G05B23/02—Electric testing or monitoring
- G05B23/0205—Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults
- G05B23/0259—Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults characterized by the response to fault detection
- G05B23/0267—Fault communication, e.g. human machine interface [HMI]
- G05B23/027—Alarm generation, e.g. communication protocol; Forms of alarm
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/52—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
Landscapes
- Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Human Computer Interaction (AREA)
- Computing Systems (AREA)
- Computer Hardware Design (AREA)
- Health & Medical Sciences (AREA)
- Quality & Reliability (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Manufacturing & Machinery (AREA)
- Testing And Monitoring For Control Systems (AREA)
- Debugging And Monitoring (AREA)
- Stored Programmes (AREA)
Abstract
针对至少一个控制应用(113、123)指定至少一个事件,在与所述控制应用相关联的程序代码和/或连接到处理所述程序代码的程序流程控制设备(101、102)的至少一个外围设备(510)受到潜在操纵时,所述事件被触发。程序流程控制设备监控所述控制应用的流程与期望的流程行为的偏离,并且在偏离时触发指定的所述事件。在指定的所述事件被触发之后,所述程序代码继续通过所述程序流程控制设备处理并且该事件被报告给与程序流程控制设备分开的检查设备(300)。在识别到所述控制应用的根据检查规则不允许的流程行为时,所述检查设备将所述控制应用和与其相依赖的控制部件转换至预定义的安全运行状态。
Description
技术领域
本发明涉及一种用于安全执行控制应用的方法和系统,尤其是在工业自动化系统内,以及一种检查设备。该系统和检查设备用于执行根据本发明的方法。
背景技术
工业自动化系统通常包括多个经由工业通信网络彼此联网的自动化装置并且在制造或过程自动化或者其他自动化领域的范围内用于控制、调节或者监控设施、机器或者装置。由于工业自动化系统中时间关键性的框架条件,为了在自动化装置之间进行通信,主要使用实时通信协议,如PROFINET、PROFIBUS、实时以太网(Real-Time-Ethernet)或时间敏感网络(TSN)。控制服务或控制应用特别地可以被自动地并根据负载情况分配到工业自动化系统当前可用的服务器或虚拟机上。
WO 2014/109645 A1涉及一种用于监控工业控制系统的方法,其中从工业控制系统外部的一个或多个来源收集数据。另外,从工业控制系统的一个或多个内部来源收集数据。此外,对从内部来源或从外部来源收集的数据进行汇集。还通过与先前收集的数据相关联对收集的数据进行分析,以便用这种方式监控工业控制系统的安全状态。
在WO 2020/182627 Al中描述了一种用于监控工业信息物理系统的完整性的方法,其中提供或者量取利用信息物理系统的不同传感器检测的测量数据或者为信息物理系统的不同执行器确定的控制数据。此外,得出在利用不同的传感器所获取的测量数据之间的至少一个测量数据关联参数,或者在为不同的执行器确定的控制数据之间得出至少一个控制数据关联参数。将至少一个测量数据关联参数与测量数据关联参考比较,或者将至少一个控制数据关联参数与控制数据关联参考比较。基于该比较,评估需监控的信息物理系统的完整性。
WO 2020/212051 A1中已知一种工业自动化装置,该工业自动化装置包括用于检查和监控工业自动化装置的完整性状态的监控单元。此外,设置至少一个装置部件,其无反作用地经由通信连接与监控单元通信。在此,无反作用的通信包括将至少一个装置部件参数从装置部件提供给监控单元。监控单元被设计用于记录并处理提供的工业自动化装置的装置部件的装置部件参数,该参数用于检查和监控工业自动化装置的完整性状态。另外,监控单元被设计用于将工业自动化装置的完整性状态作为经处理的工业自动化装置部件参数的结果记录或提供。此外,通过操纵保护,监控单元作为受信任的装置部件被防操纵地设计在工业自动化装置中。
在先的国际专利申请WO 2021/164911 Al中已知一种用于监控计算装置的完整性状态的计算机辅助方法,其中,首先为总完整性值指定初始化值。之后,总完整性值被存储在存储单元的受信任的存储区域中。随后,通过完整性识别系统得出完整性状态并且生成完整性状态值。其后,将完整性状态值作为完整性状态存储在受信任的存储区域中的总完整性值中。
为了防止在程序代码中利用现有漏洞,可以使用例如基于编译器的漏洞保护(Exploit Protection)方案,其在编译过程期间在程序代码中插入附加的保护或检查例程。这样的保护方案可以纯基于软件或者以硬件支持来实现。利用该保护方案尤其可以在运行时识别诸如代码注入(Code Injection)、缓冲区溢出(Buffer Over flows)、返回导向编程(Return-oriented Programming(ROP))和跳转导向编程(Jump-orientedProgramming(JOP))的威胁。在识别到潜在攻击时,例如在命令行中输出报错消息或者立即停止程序执行。以这种方式使利用现有的漏洞变得困难。通常,在编译过程期间指定用于识别攻击的方法以及对识别到的攻击作出反应的措施,因此在运行时不可再更改。
尽管应用了保护措施,但是并不总能避免针对用于通过工业自动化装置提供的控制应用的程序代码被恶意操纵。旨在消除程序代码中漏洞的补丁经常不能足够及时地供使用或者不能及时被加入。特别是在设施中运行的技术过程或操作限制使随时提供或加入补丁变得不可能。此外,通过调整代码排除漏洞会随所使用的编程语言而或多或少地变得复杂。即使许多保护方案能够在软件性能与保护水平之间实现良好的平衡,原则上也可能出现误报警(False Positives),误报警发出程序代码受攻击的信号,尽管攻击并不存在。在工业自动化系统中,如果自动化过程由于这种误报警而停止是极其成问题的。这通常导致昂贵的、不必要的中断,质量问题,甚至安全风险。由于这些问题,现有的漏洞保护方案对于工业自动化装置经常是无法应用的。
发明内容
本发明的目的在于:创建一种用于安全执行控制应用的方法,该方法尤其在采用漏洞保护方案时,能够通过正确检出的威胁和避免由误报警引起的运行中断来提高可靠性,以及给出用于执行该方法的合适的实施方式。
根据本发明,这一目的通过具有权利要求1中所述特征的方法,通过具有权利要求12中所述特征的系统以及通过具有在权利要求13中所述特征的检查设备来实现。本发明有利的改进方案在从属权利要求中给出。
根据本发明,用于安全执行控制应用的方法为至少一个控制应用指定至少一个事件,在与控制应用相关联的程序代码或至少一个连接到处理程序代码的程序流程控制设备的外围设备受到潜在操纵时,所述事件被触发。程序流程控制设备监控控制应用的流程是否偏离期望的流程行为并且在偏离时触发指定的事件。在此,事件尤其可以包括对程序代码内的代码位置、指定的事件的发生时间、事件类型或报错类型的指定。
根据本发明,在指定的事件被触发之后,程序代码继续通过程序流程控制设备处理,并且该事件被报告给与程序流程控制设备分开的检查设备。在报告事件时,检查设备根据可更新的检查规则分析控制应用的流程行为以及与控制应用相依赖的控制部件。检查规则独立于控制应用的流程而被更新。优选地,所述检查设备对与控制应用相关联的程序代码和与控制应用相依赖的控制部件的操纵结合起来分析。此外,检查设备可以有利地根据程序流程控制设备的运行状态或根据至少一个所选择的状态,分析控制应用的流程行为以及与控制应用相依赖的控制部件。
根据本发明,在根据检查规则识别到控制应用的不允许的流程行为时,检查设备将控制应用和与控制应用相依赖的控制部件转换至预定义的安全运行状态。其优点是,尤其是在工业化自动化装置上运行的软件能被可靠地保护以免受攻击,却又不必为此而被立即停止。更确切地说,首先可以确保攻击不会被误认为是攻击。因此,在可疑情况下有潜在的安全关键性报错消息时可以采取被控的措施。由此允许受控技术系统被控地关停,以被控的方式在受限的运行模式(故障运行)中继续运行或被控地置于运行安全的故障运行状态(故障安全)中。通过对转移到检查设备上的可能的攻击的分析,尤其可以在测试阶段期间可靠地训练或定义检查规则。软件本身的调整是不必要的。总体而言,通过转移到检查设备上的分析,能够以显著更高的概率正确地评估识别到的潜在攻击。
优选地,预定义的安全运行状态包括停止控制应用,停止与控制应用相依赖的控制部件,激活借助控制应用实施的工业自动化装置的故障运行模式或向包括自动化装置的工业自动化系统的运营者发出警报。可替代地或附加地,在预定义的安全运行状态下,可以对输出接口进行重新配置,特别是激活故障安全模式。此外,可以在事件报告之后,通过在规定的时间段内转换至预定义的安全运行状态来停止控制应用和与控制应用相依赖的控制部件。
控制应用的程序代码优选地借助第一编译标记创建。通过第一编译标记,在程序代码中激活至少一个代码序列,该代码序列用于在间接函数跳转时进行检查,其中,在控制应用每次运行时进行该检查。通过该检查,在函数调用时尤其可以分别检查所调用函数的函数原型。函数原型尤其包括调用参数和返回值的数量和类型。
根据本发明的另一优选设计方案,控制应用的程序代码借助第二编译标记创建。通过第二编译标记在程序代码中激活至少一个代码序列,通过该代码序列,使程序流程控制设备在控制应用的流程与期望的流程行为偏离时,暂时处理控制应用的程序代码。在此,报错消息的输出和处理仍然是可能的。
有利地,控制应用在安全环境运行期间,由程序流程控制设备触发的事件被检查设备训练为误报警,该误报警在安全环境运行结束之后报告相应的事件时应被检查设备忽略。因此,可以根据已训练的误报警来创建或更新检查规则。此外,在训练阶段报告给检查设备的事件可以根据用户交互而被选择性地分类为关键或非关键的。相应地,可以根据将事件的分类将检查规则可靠地创建或更新为关键或非关键的。
根据本发明的系统被设置用于执行根据以上实施方案的方法,并且包括至少一个程序流程控制设备以及与程序流程控制设备分开的检查设备。程序流程控制设备被设计用于处理分别与控制应用相关联的程序代码,并且对于至少一个控制应用指定至少一个事件,在与控制应用相关联的程序代码或至少一个连接到处理程序代码的程序流程控制设备的外围设备受到潜在操纵时,该事件被触发。
根据本发明,程序流程控制设备还被设计用于监控控制应用的流程与期望的流程行为之间的偏离,在偏离时触发指定的事件,在指定的事件被触发之后继续处理程序代码,以及将事件报告给检查设备。相应地,检查设备被设计用于在报告指定的事件时,根据可更新的检查规则,分析控制应用的流程行为以及与控制应用相依赖的控制部件。检查设备还被设计用于,在识别到控制应用的根据检查规则不允许的流程行为时,将控制应用和与其相依赖的控制部件转换至预定义的安全运行状态。
根据本发明的检查设备被设置用于根据此前实施方案的系统并为此设计为,在报告指定的、在与控制应用相关联的程序代码受到潜在操纵而通过程序流程控制设备触发的事件时,根据可更新的检查规则,分析控制应用的流程行为以及与控制应用相依赖的控制部件。检查设备还被设计用于,在识别到控制应用的根据检查规则不允许的流程行为时,将控制应用和与控制应用相依赖的控制部件转换至预定义的安全运行状态。
附图说明
以下根据实施例借助附图更详细地解释本发明。附图示出:
图1示出一个工业自动化系统,其具有多个分别提供至少一个控制应用的程序流程控制设备,并且具有用于分析由程序流程控制设备报告的潜在操纵尝试的检查设备,
图2示出在有潜在操纵尝试时,多个程序流程控制设备和检查设备之间消息传递的示意图。
具体实施方式
在图1中示出的工业自动化系统包括分别以自动化装置实施的多个程序流程控制设备101-102,以及单独的检查设备300,该检查设备用于分析程序流程控制设备101-102的关于潜在操纵尝试的通知201-202。程序流程控制设备101-102和检查设备300经由工业通信网络600彼此连接,所述工业通信网络优选地被设计用于时间敏感网络(Time-SensitiveNetwork),尤其是根据IEEE802.3-2018、IEEE 802.1Q-2018、IEEE 802.1AB-2016、IEEE802.1AS-2011、IEEE 802.1BA-2011或IEEE 802.1CB-2017标准的时间敏感网络。在通信网络600内时间关键性的数据转发,例如可以借助根据IEEE 802.1Q-2018的帧抢占(FramePreemption),根据IEEE 802.1Q-2018的时间感知整形器(Time-Aware Shaper),根据IEEE802.1Q-2018的基于信用的整形器(Credit-based Shaper),突发限制整形器(BurstLimiting Shaper)、蠕动整形器(Peristaltic Shaper)或基于优先权来控制。
自动化装置尤其可以被设置为可编程控制器、操作和观测站、I/O控制器或I/O模块。操作和观测站例如用于将通过可编程控制器、输入/输出单元或传感器处理或采集的过程数据或测量和控制参数可视化。操作和观测站尤其可以用于显示控制回路的值和改变控制参数。操作和观测站包括至少一个图形用户界面、输入设备、处理器单元和通信模块。
在本实施例中,程序流程控制设备101-102分别实施可编程控制器。可编程控制器通常分别包括用于处理控制应用113、123的程序代码的处理器111、121,用于加载程序代码的存储器112、122,通信模块以及至少一个输入/输出单元。输入/输出单元原则上也可以设计为分布式外围设备模块,其远离于可编程控制器布置。可编程控制器经由通信模块可以与交换机或路由器或者还与现场总线连接。输入/输出单元用于在可编程控制器101、102与由可编程控制器101、102控制的机器或装置501、502之间交换控制和测量参数。控制应用尤其被设置用于从检测的测量参数中确定合适的控制参数。
为了和连接的机器或装置501、502交换控制和测量参数,原则上也可以设置单独的I/O模块510。I/O模块的控制尤其可以借助每个自动化单元的I/O控制器来进行。对此,I/O模块也可以可替代地通过相关联的可编程控制器控制。
在本实施例中,为了安全执行由程序流程控制设备101、102提供的控制应用113、123,每个控制应用113、123被定义至少一个事件并且被保持在配置数据库110、120中,在与相应的控制应用113、123相关联的程序代码或在连接到程序流程控制设备上的外围设备510受到潜在操纵时,所述事件被触发。在本实施例中,这样的外围设备是连接到程序流程控制设备101的I/O模块510。然而,本发明的应用绝不限于这种类型的外围设备。
程序流程控制设备101、102分别监控其各自的控制应用113、123的流程是否偏离期望的流程行为,并且在偏离时触发相应指定的事件。相应指定的事件尤其可以包括对程序代码内的代码位置、指定的事件的发生时间、事件类型、故障类型或故障频率的指定。根据这些信息,并且尤其基于来自先前所报告的事件的经验,检查设备300可以决定事件是否是关键的并且是否需要抑制风险的进一步措施,例如停止相应的控制应用113、123。
在相应指定的事件被触发之后,程序代码分别由程序流程控制设备101、102继续处理,并且事件被报告给检查设备300。在此,关于触发相应指定的事件的通知201、202被分别发送给检查设备300(还参见图2)。
在报告相应指定的事件时,检查设备300根据存储在检查设备300的规则数据库310中可更新的检查规则,分析相应的控制应用113、123的流程行为以及与控制应用相依赖的控制部件,例如I/O模块510。检查规则可以独立于相应的控制应用113、123的运行而被更新。为此,检查设备300具有更新模块302(参见图2)。
在识别到相应控制应用的根据检查规则不允许的流程行为时,检查设备300将控制应用113、123和与其相依赖的控制部件转换至预定义的安全运行状态。对此,检查设备300分别将带有控制序列的相应的通知401、402发送给相应的控制应用113、123或程序流程控制设备101、102。检查设备300有利地对与相应的控制应用113、123相关联的程序代码和与控制应用相依赖的控制部件的操纵结合起来分析。此外,检查设备300优选地根据相应的程序流程控制设备101、102的运行状态或至少一个所选择的状态,分析相应的控制应用113、123的流程行为以及与控制应用相依赖的控制部件。
预定义的安全运行状态尤其可以包括停止控制应用113、123,停止依赖于控制应用113、123的控制部件,例如停止I/O模块510,激活借助控制应用实施的工业自动化装置的故障运行模式,或发送410给工业自动化系统运营者500的警报(ALARM)(参见图2)。可替代地或附加地,相应的控制应用113、123和与控制应用相依赖的控制部件可以在事件通知之后,通过在规定的时间段内转换至预定义的安全运行状态来停止。
根据一个优选的实施方式,用于控制应用113、123的程序代码分别借助第一编译标记创建。通过在Clang编译器中的这种第一编译标记,例如“-fsanize=cfi”,在程序代码中分别激活代码序列,该代码序列用于在间接函数跳转时进行检查,其中,在相应的控制应用113、123的每次运行中进行该检查。在函数调用时,尤其通过分别检查所调用函数的函数原型进行检查。相应的控制应用113、123的程序代码还可以分别借助第二编译标记创建。通过该第二编译标记,例如在Clang编译器中的“fsanize-recover=all”,在程序代码中分别激活代码序列,在控制应用的流程偏离了期望的流程行为时,通过该代码序列使程序流程控制设备暂时处理相应的控制应用113、123的程序代码。
根据图2,除了更新模块302之外,检查设备300还包括培训或学习模块301。借助该培训或学习模块301,相应的控制应用113、123在安全环境运行期间,由相应的程序流程控制设备101、102触发的事件通过检查设备被训练为误报警,所述误报警在安全环境运行结束后的相应事件的通知中应被检查设备忽略。然后,根据已训练的误报警创建或更新检查规则。此外,在训练阶段中,报告给检查设备300的事件可以根据用户交互而被选择性地分类为关键的或非关键的。根据事件的分类为关键的或非关键的来创建或更新检查规则。
检查设备300可以具有不同的实现方式,即作为程序流程控制设备上集成的、自有的软件部件,作为经由I/O接口连接的外部装置上的部件,或者作为在外部服务器上的实施,例如边缘或云计算服务器。
为了更新用于检查设备300的检查规则,原则上还可以有其他的实施方案变体:
-训练阶段可以由开发者陪同,该开发者更准确地分析故障并且相应地定义或更新检查规则。
-检查设备可以应用基于人工智能或机器学习的方法来更新检查规则。通过分析一个或多个二进制文件中常见的,相同的故障事件并且尤其根据对后续事件的分析,检查设备训练并相应地调整其检查规则。由此便可以训练正确的分析。
-在检查设备的分析中和在必要时更新的检查规则中,可以有利地考虑,在何种环境中提供相应的控制应用。
-有利地,可以根据故障出现的位置来进行分析。例如,如果故障出现在不太关键的代码段中,则不发生响应。对于含有关键部分的代码段,例如用于网络协议栈的功能,可以认为故障是关键的并且可以采取适当的措施。
-在用于检查设备的白名单中,还可以定义哪些故障不是关键的并且可以被忽略。这种白名单优选地也被更新。
-针对检查设备的误报警而对检查规则的训练也可以在投入生产前,例如在数字孪生中进行模拟和优化。
Claims (13)
1.一种用于安全执行控制应用的方法,其中,
-针对至少一个控制应用(113、123)指定至少一个事件,在与所述控制应用相关联的程序代码和/或连接到处理所述程序代码的程序流程控制设备(101、102)的至少一个外围设备(510)受到潜在操纵时,所述事件被触发,
-所述程序流程控制设备监控所述控制应用的流程与期望的流程行为的偏离,并且在偏离时触发指定的所述事件,
-在指定的所述事件被触发之后,所述程序代码继续通过所述程序流程控制设备处理并且所述事件被报告给与所述程序流程控制设备分开的检查设备(300),
-在有事件通知(201、202)时,所述检查设备根据可更新的检查规则分析所述控制应用的流程行为以及与所述控制应用相依赖的控制部件,其中,所述检查规则独立于所述控制应用的流程而被更新,
-在识别到所述控制应用的根据检查规则不允许的流程行为时,所述检查设备将所述控制应用和与其相依赖的所述控制部件转换至预定义的安全运行状态(401、402)。
2.根据权利要求1所述的方法,其中,所述事件包括对所述程序代码内的代码位置、指定的所述事件的发生时间、事件类型和/或故障类型的指定。
3.根据权利要求1或2所述的方法,其中,预定义的所述安全运行状态包括停止所述控制应用,停止与所述控制应用相依赖的所述控制部件,激活借助所述控制应用实施的工业自动化设备的故障运行模式和/或向包括自动化设备的工业自动化系统的运营者发出警报。
4.根据权利要求1至3中任一项所述的方法,其中,通过在报告所述事件之后的规定时间段内转换至预定义的所述安全运行状态,停止所述控制应用和与其相依赖的所述控制部件。
5.根据权利要求1至4中任一项所述的方法,其中,所述检查设备对与所述控制应用相关联的所述程序代码和与所述控制应用相依赖的所述控制部件的操纵结合起来分析。
6.根据权利要求1至5中任一项所述的方法,其中,所述检查设备根据所述程序流程控制设备的运行状态和/或根据至少一个所选择的状态,分析所述控制应用的流程行为以及与所述控制应用相依赖的控制部件。
7.根据权利要求1至6中任一项所述的方法,其中,借助第一编译标记创建所述控制应用的程序代码,其中,通过所述程序代码中的第一编译标记激活至少一个代码序列,该代码序列用于在间接函数跳转时进行检查,并且其中,在所述控制应用的每次运行时进行所述检查。
8.根据权利要求7所述的方法,其中,通过在函数调用时的检查来分别检查所调用函数的函数原型。
9.根据权利要求1至8中的任一项所述的方法,其中,借助第二编译标记创建所述控制应用的程序代码,并且其中,通过所述程序代码中的所述第二编译标记激活至少一个代码序列,通过所述代码序列,使所述程序流程控制设备在所述控制应用的流程与期望的流程行为偏离时,暂时处理所述控制应用的程序代码。
10.根据权利要求1至9中任一项所述的方法,其中,当所述控制应用在安全环境运行期间,由所述程序流程控制设备触发的事件被所述检查设备训练为误报警,该误报警在安全环境运行结束之后报告相应的事件时应被所述检查设备忽略,并且其中,根据所述训练的误报警来创建和/或更新所述检查规则。
11.根据权利要求1至10中任一项所述的方法,其中,在训练阶段报告给所述检查设备的事件根据用户交互而被选择性地分类为关键的或非关键的,并且其中,根据将事件的分类为关键的或非关键的来创建和/或更新所述检查规则。
12.一种用于执行根据权利要求1至11中任一项所述的方法的系统,其中,
-所述系统包括至少一个程序流程控制设备和与所述程序流程控制设备分开的检查设备,
-所述程序流程控制设备被设计用于处理分别与控制应用相关联的程序代码并且为至少一个控制应用指定至少一个事件,在与所述控制应用相关联的程序代码和/或连接到处理所述程序代码的程序流程控制设备的至少一个外围设备受到潜在操纵时,所述事件被触发,
-所述程序流程控制设备还被设计用于监控所述控制应用的流程是否偏离期望的流程行为,在偏离时触发指定的所述事件,在指定的所述事件被触发之后继续处理所述程序代码并且将所述事件报告给所述检查设备,
-所述检查设备被设计用于在报告所述事件时,根据可更新的检查规则分析所述控制应用的流程行为以及与所述控制应用相依赖的控制部件,其中,所述检查规则独立于所述控制应用的流程而被更新,
-所述检查设备还被设计用于,在识别到所述控制应用的根据所述检查规则不允许的流程行为时,将所述控制应用和与其相依赖的控制部件转换至预定义的安全运行状态。
13.一种用于根据权利要求12所述的系统的检查设备,其中,
-所述检查设备被设计用于在报告指定的、在与控制应用相关联的程序代码受到潜在操纵而通过程序流程设备触发的事件时,根据可更新的检查规则分析所述控制应用的流程行为以及与所述控制应用相依赖的控制部件,其中,所述检查规则独立于所述控制应用的流程而被更新,
-所述检查设备还被设计用于,在识别到所述控制应用的根据所述检查规则不允许的流程行为时,将所述控制应用和与其相依赖的控制部件转换至预定义的安全运行状态。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP21175999.8 | 2021-05-26 | ||
EP21175999.8A EP4096186A1 (de) | 2021-05-26 | 2021-05-26 | Verfahren und system zur gesicherten ausführung von steuerungsanwendungen, programmablaufsteuerungseinrichtung und überprüfungseinrichtung |
PCT/EP2022/061992 WO2022248180A1 (de) | 2021-05-26 | 2022-05-04 | Verfahren und system zur gesicherten ausführung von steuerungsanwendungen und überprüfungseinrichtung |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117413227A true CN117413227A (zh) | 2024-01-16 |
Family
ID=76137998
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202280037914.8A Pending CN117413227A (zh) | 2021-05-26 | 2022-05-04 | 用于安全执行控制应用的方法和系统及检查设备 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20240219879A1 (zh) |
EP (2) | EP4096186A1 (zh) |
CN (1) | CN117413227A (zh) |
WO (1) | WO2022248180A1 (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20240073282A1 (en) * | 2022-08-24 | 2024-02-29 | Deere & Company | Systems and methods for remote industrial machine communciation system diagnostics and solutions |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2943843A4 (en) * | 2013-01-08 | 2016-10-26 | Secure Nok As | METHOD, DEVICE AND COMPUTER PROGRAM FOR MONITORING AN INDUSTRIAL CONTROL SYSTEM |
EP3227790A4 (en) * | 2014-12-05 | 2018-12-26 | Honeywell International Inc. | Monitoring and control system using cloud services |
EP3428756B1 (de) * | 2017-07-10 | 2019-06-19 | Siemens Aktiengesellschaft | Integritätsüberwachung bei automatisierungssystemen |
EP3699705A1 (de) * | 2019-02-25 | 2020-08-26 | Siemens Aktiengesellschaft | Verfahren zur überwachung eines industriellen kommunikationsnetzwerkes, sicherheits-system, industrielles kommunikationsnetzwerk, computerprogramm und computerlesbares medium |
EP3709107A1 (de) | 2019-03-14 | 2020-09-16 | Siemens Aktiengesellschaft | Verfahren und system zur überwachung der integrität eines automatisierungssystems |
EP3726408A1 (de) | 2019-04-16 | 2020-10-21 | Siemens Aktiengesellschaft | Industrielles automatisierungsgerät umfassend eine überwachungseinheit zur überprüfung und überwachung eines integritätszustandes des industriellen automatisierungsgerätes |
EP3869367A1 (de) | 2020-02-18 | 2021-08-25 | Siemens Aktiengesellschaft | Computergestütztes verfahren zum speichern eines integritätsstatus, integritätsstatusvorrichtung und computerprogrammprodukt |
-
2021
- 2021-05-26 EP EP21175999.8A patent/EP4096186A1/de not_active Withdrawn
-
2022
- 2022-05-04 WO PCT/EP2022/061992 patent/WO2022248180A1/de active Application Filing
- 2022-05-04 CN CN202280037914.8A patent/CN117413227A/zh active Pending
- 2022-05-04 EP EP22727153.3A patent/EP4320491B1/de active Active
- 2022-05-04 US US18/562,882 patent/US20240219879A1/en active Pending
Also Published As
Publication number | Publication date |
---|---|
EP4320491B1 (de) | 2024-11-13 |
WO2022248180A1 (de) | 2022-12-01 |
EP4320491A1 (de) | 2024-02-14 |
US20240219879A1 (en) | 2024-07-04 |
EP4096186A1 (de) | 2022-11-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6749106B2 (ja) | 産業用通信ネットワークにおける異常検出、異常検出システム、及び異常検出を行う方法 | |
EP3101581B1 (en) | Security system for industrial control infrastructure using dynamic signatures | |
CN106168757B (zh) | 工厂安全系统中的可配置鲁棒性代理 | |
US9921938B2 (en) | Anomaly detection system, anomaly detection method, and program for the same | |
US20170237752A1 (en) | Prediction of potential cyber security threats and risks in an industrial control system using predictive cyber analytics | |
CN111478966A (zh) | 物联网协议的解析方法、装置、计算机设备及存储介质 | |
EP3101586A1 (en) | Active response security system for industrial control infrastructure | |
EP3101491A1 (en) | Security system for industrial control infrastructure | |
CN109286606B (zh) | 针对过程控制系统中的加密业务的防火墙 | |
US20230396634A1 (en) | Universal intrusion detection and prevention for vehicle networks | |
CN106054822B (zh) | 规划和工程设计方法,软件工具和模拟工具 | |
CN112799358B (zh) | 一种工业控制安全防御系统 | |
EP3101490B1 (en) | Rapid configuration security system for industrial control infrastructure | |
US20150229660A1 (en) | Method for Monitoring Security in an Automation Network, and Automation Network | |
CN105320854A (zh) | 通过签名平衡防止自动化组件受到程序篡改 | |
WO2021038527A1 (en) | Systems and methods for enhancing data provenance by logging kernel-level events | |
CN115136080A (zh) | 用于智能地仿真工厂控制系统和模拟响应数据的方法、系统和装置 | |
CN117413227A (zh) | 用于安全执行控制应用的方法和系统及检查设备 | |
RU2647684C2 (ru) | Устройство и способ обнаружения несанкционированных манипуляций системным состоянием блока управления и регулирования ядерной установки | |
US20200183340A1 (en) | Detecting an undefined action in an industrial system | |
CN113518949B (zh) | 控制器系统 | |
WO2018193571A1 (ja) | 機器管理システム、モデル学習方法およびモデル学習プログラム | |
Negi et al. | Intrusion Detection & Prevention in Programmable Logic Controllers: A Model-driven Approach | |
EP3661149A1 (en) | Test system and method for data analytics | |
NL2028737B1 (en) | A method, a monitoring system and a computer program product for monitoring a network connected controller |
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 |