普渡大学ICS参考模型
普渡企业参考架构(PERA)是由西奥多·J·威廉姆斯(Theodore J. Williams)和普渡大学计算机集成制造工业大学联盟的成员在1990年代开发的企业架构参考模型。该模型被ISA-99(现为ISA/IEC 62443)等工业安全标准所采用,并用作ICS网络分段的关键概念。普渡参考模型(或简称“普渡模型”)在ICS社区中被广泛用于描述一个大型ICS中所有主要组件之间的主要相互依赖性和相互作用,是理解任何OT环境的一个很好的起点。
我们将在后续章节中详细讨论普渡参考模型与安全策略和架构的关系。现在,我们将高层次地看一下其主要组件和级别,如图所示。
-
Level 5: 企业区
企业区是管理供应链的地方。ERP系统如SAP和JD Edwards被用来理解和响应供应和需求。这些系统从所有下属系统(通常跨多个站点或一个企业)获取数据,以查看总体供应、生产和需求,从而管理工作订单。ICS很少直接连接到这一层,但显然需要从各种OT网络和ICS组件获得准确和及时的信息。 -
Level 4:现场业务规划和物流
而第5级通常存在于公司或多站点总部
4表示每个站点、工厂或设施用于控制本地设施运行的IT系统。该级别接受来自第5级的订单,并监视较低级别的性能,以了解操作状态、与生产计划的性能、本地工厂的问题管理,以及更新第5级的企业系统。 -
ICS-Demilitarized区
非军事区(ICS-DMZ)是IT和OT之间共享信息的层。这是一个更加现代化的结构,由NIST网络安全框架、NIST 800-82、NERC CIP和ISA-62443等标准努力推动。通常出现在ICS-DMZ中的有复制服务器、补丁管理服务器、工程工作站和配置/变更管理系统。DMZ的目的是提供IT信息的安全交换,而不会将较低层的关键组件直接暴露给攻击者。这是安全规划的一个主要重点领域 -
Level 3:现场制造与运行控制
虽然第5层和第4层仅存在于网络的IT侧,隔离区(DMZ)就像夹心饼干中的夹心,但第3层及以下定义并构成了网络OT侧的系统。第3层通常包含SCADA的监督部分、DCS的视图和控制访问,或是控制室的视图和监控功能,用于监控OT网络的其余部分。这是操作员与系统进行交互的主要层次,操作员在该层次查看和监控过程事件和趋势,响应警报和事件,通过工作订单维护等功能管理过程的正常运行时间和可用性,并确保产品质量。 -
Level 2:区域监督控制
第2级具有许多与第3级相同的功能,但是在这个级别中,过程单元或线级功能主要用于对过程的各个区域进行局部控制。这个级别的区别在于实际的ics开始出现的级别,例如plc和变频驱动器(vfd)。然而,这个级别的主要系统包括hmi。在这个级别中,您可以通过HMI面板看到实时流程事件和操作员级流程交互的本地视图,并通过这些逻辑驱动组件看到流程的自动控制。 -
Level 1:基本控制
虽然一些PLC、VFD等设备存在于第2层,但这是这些设备的主要位置。该层次包括所谓的基本过程控制系统(BPCS)。BPCS是一个通用术语,适用于非安全相关的控制系统,其中执行和管理以下功能:
- BPCS在可配置的限制(称为设定点)内控制过程。
- BPCS向HMI提供实时数据,用于操作员级别的过程交互。
- 操作员在此层次与BPCS的设定点和逻辑进行交互,以优化工厂操作。
- 过程级别的警报和事件在此层次进行管理和响应。第2层依赖于第3层及以上层次的信息,用于日程安排、监控警报和提供反馈以管理过程。
- BPCS还包括传感器、执行器、继电器和其他组件,这些组件将过程值测量并报告给PLC、DCS、SCADA和第1至5层的其他组件。
- Level 0:过程
也称为受控设备(EUC)级别,这是由1级控制的物理设备所在的位置。这些包括驱动、马达、阀门和其他组成实际过程的部件。0级的完整性对于安全和高效的操作至关重要,因为这是操作过程实际物理特性的地方。如果BPCS和EUC不能正常运行,或者关于工艺状态的信息不准确,则BPCS或操作员无法准确响应工艺条件。
结合:
图中说明了所有这些层是如何协同工作以内聚地管理整个过程的。入侵ICS需要详细了解所有级别的功能和相互作用,并结合工业通信协议本身的知识,以便传播攻击。
SCADA
当应用于更通用的ICS术语时,监控和数据采集系统可能是最被广泛滥用的术语。SCADA主要是指在广泛的地理区域内对多种ICS类型进行分组,如图所示。SCADA系统是由组成整个系统的所有单独的控制和通信组件组成的。SCADA环境的典型例子包括供水设施、天然气管道和电力传输和分配系统。
DCS
分布式控制系统(DCS)通常是用于自动化大型设施(如石油和天然气精炼厂以及化工厂)中数千个I/O点的大规模系统。DCS和SCADA之间的差异微妙,但传统上SCADA用于地理分布更广泛的操作,例如水/废水或电力分配,而DCS通常局限于工厂的四面墙内。然而,DCS的特性使其有些独特。DCS通常是高度工程化和刚性的系统,遵循供应商规定的严格部署和架构。
DCS结合了基于Unix、Linux或Microsoft的终端作为工作站来查看和控制过程,通常连接在一个冗余网络中,该网络利用多宿主计算机和网络交换技术提供高可用性。DCS的例子包括霍尼韦尔FTE和艾默生DeltaV。
PLC
plc是工业自动化领域的主力,几乎在每个工厂都可以找到。这些设备通常被称为“控制器”,广泛应用于工厂环境和看似不太可能的地方,如电梯、机场的坡道控制,甚至在我们驾驶的汽车中。plc的大小从成人拳头的大小到小型台式计算机的大小,它们的特点是三个主要组件:微控制器,扩展槽和背板。
微控制器是PLC的大脑,也是固件、程序(通常是梯形逻辑)和设定点存在的地方。在传统的plc中,固件和控制器程序在很大程度上是静态的。设定点是为运行中的程序所配置的变量,可以由进程的状态手动或动态地更改。
在微控制器旁边,通常有扩展槽或模块连接,以扩展PLC的能力。这些模块包括
- 多种网络类型,如以太网,远程I/O, ControlNet,
PROFINET或其他 - 支持802.11、802.15.4或其他网络类型的无线扩展
- 数字或模拟I/O卡连接到现场设备
- 机箱防火墙、网络网关等其他模块
将所有这些结合在一起的是背板,这是一个硬线接口,允许多个设备和微控制器之间的通信。这方面是最重要的,因为网络安全分析师和攻击者都必须了解背板的工作原理和控制器的工作原理。例如,可以部署PLC并将其用作控制传送系统的驱动器的控制器。或者,相同的PLC具有相同的卡,但不同的程序可以简单地用于汇集多种网络类型。尽管后者没有“控制”功能
HMI
人机界面(HMI)是ICS的“视图”。HMI可能仅仅是驱动柜外部的一个小面板。大多数情况下,HMI使用键盘或触摸的显示器,以图形方式显示整体过程,并允许操作员通过为特定组件输入命令来控制过程中的各个点。图中显示了蒸馏塔的常见图形表示,这在许多化工厂和石油天然气精炼厂中是一个常见的过程。
值得注意的是,对于攻击者来说,人机界面 (HMI) 通常是一个显示所有过程自动控制点的图形界面。寻找轻松攻击过程的方法的攻击者会首先集中在这里,试图接管 HMI 的显示。尽管这将是一次“嘈杂”的网络攻击,攻击者仍然可以部署一个远程桌面协议 (RDP) 会话,并像在同一控制台的操作员一样与过程进行交互。
SIS
安全仪表系统(SIS)在事情不按计划进行时发挥作用。SIS 是高度工程化的专业控制系统。通常,供应商会使用其现有的 PLC 平台来创建 SIS。除了核心微控制器,SIS 还使用一系列复杂的模拟和数字投票系统(1 出 2 或 2 出 3)来监控和响应不利的过程条件。通常,SIS 只设计提供几个核心功能,即在硬件故障发生时将过程带入安全状态或启动有序关闭。
重要的是要注意,SIS 在许多工业控制系统(ICS)环境中并不广泛使用。传统上,SIS 仅在硬件故障发生的可预测率表明随机故障将在给定时间段内 X 次引起危险情况时使用。如果这种随机硬件故障发生的概率统计上不太可能足以导致不安全状况,那么通常不会使用 SIS。这一点很关键,因为迄今为止,安全领域主要关注的是随机硬件故障。尽管安全标准确实表明安全性很重要,但现在才开始认真应对这样一个事实:尽管随机硬件故障的概率不足以保证使用 SIS,但确定性的网络安全威胁的可能性可能会建议使用更加稳健的 SIS 来代替或与 PLC 结合使用。
VFD
变频驱动器(VFD)本质上是“智能”电机。它们是一种小型 PLC 的变体,称为驱动控制器,通过维持一个程序来响应手动输入或控制程序的需求,以改变其连接的驱动器的速度。对于工业控制系统(ICS)网络研究人员或攻击者来说,这种驱动控制器是主要关注点,因为它的功能类似于 PLC,可以以类似的方式进行攻击,但由于所控制的设备是大规模的强力驱动器,往往会有立竿见影的后果。变频驱动器通过改变施加到驱动器上的频率和电压来控制其速度和操作方向。你可以在图中看到一个 VFD 的示例。
ICS 杀伤链
2015年10月,SANS研究所发布了“ICS杀伤链”,作者是
迈克尔·j·阿桑特、罗伯特·m·李(https://www.sans.org/readingroom/whitepapers/ICS/industrial-control-system-cyber-kill-chain-36297)。
ICS杀伤链的突出之处在于,它不仅准确地代表了我们所看到的ICS恶意软件活动(如Stuxnet和Havex)所展示的整个方法和攻击过程,而且还强调了一个事实,即重大ICS事件需要彻底了解目标的过程环境。
报告的作者在他们对侦察、开发和验证/测试阶段的描述中说明了这一点,并强调了“战役”的心态和策略。换句话说,ICS Kill Chain考虑了攻击者用来了解流程环境的方法和总体流程,开发重要的ICS特定攻击,并在部署之前测试/验证/调整漏洞利用。这个微分器可以在第二阶段找到,如图所示。