基于最小特权的过程控制软件安全架构制造技术

技术编号:21831521 阅读:30 留言:0更新日期:2019-08-10 17:35
一种过程控制系统软件安全架构,其更有效地防止零日或其他类型的恶意软件攻击,当执行应用程序和服务运行在计算机设备内时,实现了使用“最小特权”。所述基于最小特权的架构通过将软件系统的全局命名空间划分为服务命名空间和登录用户命名空间,以及通过使用进程间通信来严格地控制在这些不同命名空间中的应用程序和服务之间的通信来将“服务”进程与代表登录用户运行的桌面应用程序进行分离。此外,所述安全架构使用定制账号来保证每一个服务进程具有实现其功能所需要的特权的最小集合,而不考虑与调用的应用程序或用户相关联的特权。

Process Control Software Security Architecture Based on Minimum Privilege

【技术实现步骤摘要】
基于最小特权的过程控制软件安全架构本申请是2015年7月24日提交的申请号为201510441630.7的同名专利申请的分案申请。
本申请总体上涉及过程工厂计算机系统,并且更具体地,涉及用于在过程或工厂环境下保障设备(例如,计算机设备)内的软件进程的操作的方法和装置。
技术介绍
过程控制系统(例如,像那些在发电、化工、石油或其他过程中使用的分布式或可扩展的过程控制系统)通常包括一个或多个控制器,所述一个或多个控制器通信地相互耦合、经由过程控制网络耦合到至少一个主机或操作员工作站,并且经由模拟、数字或结合的模拟/数字总线耦合到一个或多个现场设备。现场设备可以例如是阀、阀门定位器、开关和发射机(例如,温度、压力以及流量传感器),所述现场设备可以在该过程或工厂内执行功能,例如,打开或关闭阀门、开启和关断设备、以及测量过程参数。控制器接收对由现场设备进行的过程或工厂测量进行指示的信号和/或与现场设备相关的其他信息,使用所述信息来实现控制例程并且随后生成控制信号,所述控制信号通过总线被发送到现场设备以控制过程或工厂的操作。通常使来自现场设备和控制器的信息对由操作员工作站执行的一个或多个应用程序是可用的,以使操作员能够执行关于过程或工厂的任何期望的功能,例如,查看工厂的当前状态、修改工厂的操作等。通常位于过程工厂环境内的过程控制器接收对由现场设备进行的或与现场设备相关联的过程测量或过程变量进行指示的信号和/或与现场设备有关的其他信息,并且使用所述信息来执行控制器应用程序。控制器应用程序实现例如做出过程控制决定、基于接收到的信息生成控制信号、以及与现场设备(例如,和现场总线现场设备)中的控制模块或块协作的不同控制模块。过程控制器中的控制模块通过通信线路或其他信号路径将控制信号发送到现场设备,以由此控制过程的操作。通常还使来自现场设备和过程控制器的信息经由过程控制网络来对一个或多个其他硬件设备(例如,操作员工作站、维护工作站、服务器、个人计算机、手持设备、数据历史记录、报告生成器、集中式数据库等)可用。通过网络所传输的信息使得操作员或维护人员能够执行关于过程的所期望的操作和/或查看工厂的操作。例如,该信息允许操作员改变过程控制例程的设置、修改过程控制器或智能现场设备内的控制模块的操作、查看过程的当前状态或过程工厂内特定设备的状态、查看由现场设备和过程控制器生成的警报、出于训练人员或测试过程控制软件的目的来对过程的操作进行仿真、诊断过程工厂内的问题或硬件故障等。现场设备通常通过过程控制网络(其可以是,例如,以太网配置的LAN)与其他硬件设备进行通信。网络通过各种网络设备来对过程参数、网络信息以及其他过程控制数据进行中继并且将其中继到过程控制系统中的各种实体。通常的网络设备包括网络接口卡、网络交换机、路由器、服务器、防火墙、控制器、以及操作员工作站。网络设备通常通过控制数据流的路由、帧率、超时、以及其他网络参数来帮助数据流通过网络,但是其本身并不改变过程数据。随着过程控制网络的规模和复杂度的增长,网络设备的数量和类型相应地增长。系统和网络增长的结果是,这些复杂系统中的安全性和管理可能变得日益困难。例如,每一个网络设备可以包括一个或多个通信端口,所述一个或多个通信端口提供用于使过程控制系统部件和其他网络设备通过网络将彼此物理地互连的接入点或端口。然而,可以使用这些端口或连接中的一些来将控制设备连接到可公开访问的网络(例如,互联网),以及将便携存储器设备连接到控制系统设备。因此,设备上的公开端口可以通过添加其他设备而成为用于网络扩展的接入点、或者可以允许恶意或非恶意的实体来访问网络并且启动不期望的并且潜在有害的网络业务或者引入可能在工厂控制系统内导致严重问题的恶意软件(例如,包括恶意程序、间谍或数据收集程序、广告软件、或其他不想要的并且潜在有害的危险软件)。随着网络设备以及相关联的接入点的数量的增加,有效地监控或控制对控制整个复杂过程控制系统的通信的网络内的设备上的所有端口的访问很快变得不切实际。同样地,在一般的工业控制系统中,工作站/服务器被按策略地放置在工厂网络与执行控制以及数据获取功能的嵌入式设备(例如,控制器、PLC、RTU)之间,并且因此这些工作站/服务器的主要安全目标是防止恶意软件进入控制系统并且不利地影响嵌入式设备,以及防止恶意软件改变存储在工厂数据库中的配置和历史数据。尽管可以使用多个安全特征(例如“反病毒”软件和“白名单”)来解决这个目标,但是这些安全特征通常是不够的。例如,反病毒软件不能对抗“零日”病毒,并且白名单仅防止未授权的应用程序运行。此外,这些特征中的一些是过于侵入性的,以至于在过程控制系统中不能实际操作,这是因为这些安全特征具有阻止工厂操作员活动的潜在可能。一般而言,恶意软件(例如,处于零日攻击核心的恶意软件)通常经由外部存储器设备(例如,可移除的闪存驱动器)或经由通信连接通过操作具有访问这些存储器设备、网络端口或直接数据链路的特权或许可的应用程序或服务在特定设备处被引入到控制系统中。(出于本专利的目的,通信连接包括经由通信网络连接或经由诸如调制解调器连接之类的直接数据链路而进行的连接)。此后,恶意软件能够被传播到其他设备(例如,经由通信或便携式存储器设备)和/或使用被该恶意软件感染的应用程序或服务的安全特权在设备内执行。此外,恶意软件可以本地自我保持以允许其在重启后再次被执行。在一些情况下,恶意软件可以使用该应用程序或服务在其中执行的账号的特权来升级宿主(例如,被感染的应用程序或服务)的特权,并且通过这样做,恶意软件可能能够在要求更高特权的过程控制设备或系统中执行动作或操作,并且由此通常更加有害于控制系统操作。在任何事件中,感染了已经运行的应用程序的零日攻击在过程控制系统中造成严重问题,这是因为并没有用于防止这些类型的攻击的良好技术。然而,当这些攻击破坏工厂控制系统的正在进行的操作时,在过程工厂内,这些攻击可能具有严重的并且潜在的破坏性,甚至致命的影响。
技术实现思路
过程控制系统使用更有效地防止零日或其他类型的恶意软件攻击的新的安全特征集合或软件安全架构。一般而言,所述新的安全特征或架构实现了当执行应用程序和服务在任何特定控制系统设备(例如,在工作站、服务器、数据库、控制器、现场设备内等)内运行时,使用本文中所称为的“最小特权”,以便减少可能感染工作站、服务器、或其他设备的恶意软件的影响。本文中的术语“特权”包括操作系统特权/权利和访问控制许可二者。例如,用户可以被授予远程登录或模仿另一个用户的权利(特权),并且还被授予读/写/执行具体文件的访问(许可)。概括而言,基于最小特权的安全特征或架构通过例如将设备(例如,控制器、工作站、服务器等)的全局命名空间划分为服务命名空间以及如果存在(例如,在桌面应用程序中)划分为登录用户命名空间,来将“服务”进程与代表登录用户(本地或远程)运行的桌面应用程序分离。该架构随后使用进程间通信(而不是共享存储器)来严格地控制在这些不同命名空间中的进程(例如,应用程序和服务)之间的通信,以便防止被感染的服务或应用程序能够直接感染或损坏其他的服务或应用程序。具体地,所述新的安全架构使用这样的命名空间划分来防止桌面应用程序直接访问服务命名空间中的对象并且反之本文档来自技高网
...

【技术保护点】
1.一种计算机设备,包括:处理器;通信端口;本地存储器存储单元;以及操作系统,所述操作系统根据配置数据在所述处理器上执行以实现服务进程,所述服务进程包括能够与所述通信端口进行通信的服务进程,其中,能够与所述通信端口进行通信的所述服务进程不具有写入到所述本地存储器存储单元的特权。

【技术特征摘要】
2014.07.25 US 14/340,8381.一种计算机设备,包括:处理器;通信端口;本地存储器存储单元;以及操作系统,所述操作系统根据配置数据在所述处理器上执行以实现服务进程,所述服务进程包括能够与所述通信端口进行通信的服务进程,其中,能够与所述通信端口进行通信的所述服务进程不具有写入到所述本地存储器存储单元的特权。2.根据权利要求1所述的计算机设备,其中,所述本地存储器存储单元存储服务进程文件或服务进程文件夹。3.根据权利要求2所述的计算机设备,其中,所述本地存储器存储单元还存储桌面应用程序文件。4.根据权利要求1所述的计算机设备,其中,所述计算机设备进一步包括外部介质端口,并且其中,能够与所述通信端口进行通信的所述服务进程中的一个不具有经由所述外部介质端口与能够移除的存储单元进行通信的特权。5.根据权利要求1所述的计算机设备,其中,所述计算机设备进一步包括外部介质端口,并且其中,能够与所述通信端口进行通信的所述服务进程中的一个不具有与具有经由所述外部介质端口与能够移除的存储单元进行通信的特权的另外的服务进程直接进行通信的特权。6.根据权利要求5所述的计算机设备,其中,能够经由所述外部介质端口与能够移除的存储单元进行通信的所述另外的服务进程不具有写入到所述本地存储器存储单元的特权。7.根据权利要求1所述的计算机设备,进一步包括桌面环境,并且其中,所述操作系统执行以施行与桌面命名空间分离的服务命名空间,并且操作以执行在所述服务命名空间中的所述服务进程以及在所述桌面命名空间中的一个或多个桌面应用程序。8.根据权利要求7所述的计算机设备,其中,所述操作系统施行以下要求:运行在所述桌面命名空间中的进程必须经由进程间通信与运行在所述服务命名空间中的进程进行通信。9.根据权利要求8所述的计算机设备,其中,桌面应用程序被分配有操作系统特权的集合,所述操作系统特权的集合是同与启动所述桌面应用程序的用户账号相关联的操作系统特权的集合被分离地设置的,并且其中,被分配给所述桌面应用程序的所述操作系统特权的集合不包括管理员操作系统特权。10.根据权利要求8所述的计算机设备,其中,所述操作系统施行以下规则:所述桌面应用程序在操作系统特权中不能够被提升。11.根据权利要求8所述的计算机设备,其中,所述操作系统施行以下规则:防止所述桌面应用程序写入到存储在本地存储器存储单元中的服务文件或服务文件夹。12.根据权利要求7所述的计算机设备,其中,在桌面应用程序处发起的消息包括识别所述桌面应用程序的用户的用户身份信息,并且其中,所述用户身份信息跟随所述消息通过访问通信网络端口以经由通信网络发送所述消息的所述服务进程。13.根据权利要求1所述的计算机设备,进一步包括桌面,所述桌面包括用户界面,并且其中,所述操作系统施行以下规则:防止所述服务进程中的任何服务进程直接访问所述桌面。14.一种计算机设备,包括:处理器;外部介质端口;本地存储器存储单元;以及操作系统,所述操作系统根据配置数据在所述处理器上执行以实现服务进程,所述服务进程包括能够经由外部介质端口与能够移除的存储器设备进行通信的服务进程,其中,能够经由所述外部介质端口与能够移除的存储器设备进行通信的所述服务进程不具有写入到所述本地存储器存储单元的特权。15.根据权利要求14所述的计算机设备,其中,所述本地存储器存储单元存储服务进程文件或服务进程文件夹。16.根据权利要求15所述的计算机设备,其中,所述本地存储器存储单元还存储桌面应用程序文件。17.根据权利要求14所述的计算机设备,其中,所述计算机设备进一步包括通信端口,并且其中,能够经由所述外部介质端口与能够移除的存储器进行通信的所述服务进程中的一个不具有与具有经由所述通信端口进行通信的特权的另外的服务进程直接进行通信的特权。18.根据权利要求14所述的计算机设备,还包括桌面环境,并且其中,所述操作系统执行以施行与桌面命名空间分离的服务命名空间,并且操作以执行在所述服务命名空间中的所述服务进程以及在所述桌面命名空间中的一个或多个桌面应用程序。19.根据权利要求18所述的计算机设备,其中,所述操作系统施行以下要求:运行在所述桌面命名空间中的进程必须经由进程间通信与在所述服务命名空间中运行的进程进行通信。20.根据权利要求19所述的计算机设备,其中,桌面应用程序被分配有操作系统特权的集合,所述操作系统特权的集合是同与启动所述桌面应用程序的用户账号相关联的操作系统特权的集合被分离地设置的,并且其中,被分配给所述桌面应用程序的所述操作系统特权的集合不包括管理员操作系统特权。21.根据权利要求20所述的计算机设备,其中,所述操作系统施行以下规则:所述桌面应用程序在操作系统特权中不能够被提升。22.根据权利要求14所述的计算机设备,其中,还包括桌面,所述桌面包括用户界面,并且其中,所述操作系统施行以下规则:防止所述服务进程中的任何服务进程直接访问所述桌面。23.一种计算机设备,包括:处理器;外部介质端口;通信端口;以及操作系统,所述操作系统根据配置数据在所述处理器上执行以实现服务进程,所述服务进程包括能够经由外部介质端口与能够移除的存储器设备进行通信的服务进程,其中,能够经由所述外部介质端口与能够移除的存储器设备进行通信的所述服务进程不具有访问所述通信端口的特权。24.根据权利要求23所述的计算机设备,其中,能够经由所述外部介质端口与能够移除的存储器设备进行通信的所述服务进程不具有对能够访问所述通信端口的另一服务进行直接访问的特权。25.根据权利要求23所述的计算机设备,还包括桌面环境,并且其中,所述操作系统执行以施行与桌面命名空间分离的服务命名空间,并且操作以执行在所述服务命名空间中的所述服务进程以及在所述桌面命名空间中的一个或多个桌面应用程序。26.根据权利要求25所述的计算机设备,其中,所述操作系统施行以下要求:运行在所述桌面命名空间中的进程必须经由进程间通信与运行在所述服务命名空间中的进程进行通信。27.根据权利要求23所述的计算机设备,其中,所述操作系统施行以下要求:服务必须经由进程间通信与其他服务进行通信。28.一种计算机设备,包括:处理器;以及操作系统,所述操作系统根据配置数据在所述处理器上执行以实现服务进程和一个或多个桌面进程;其中,所述操作系统执行以施行与桌面命名空间分离的服务命名空间,以及操作以在服务命名空间中执行所述服务进程并且在与所述服务命名空间分离的桌面命名空间中执行一个或多个桌面应用程序,并且其中,在所述服务命名空间中实现的所有进程必须经由进程间通信与所述桌面命名空间中的进程进行通信。29.根据权利要...

【专利技术属性】
技术研发人员:L·A·奈策尔D·H·乌辛
申请(专利权)人:费希尔罗斯蒙特系统公司
类型:发明
国别省市:美国,US

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1