摘要:本文首先详细介绍了信息物理系统(CPS)的概念及其特点,其次简要概述了CPS的网络安全保护措施以及针对CPS的攻击及隐私泄露问题,并给出了典型的具体案例。当前关注的重点应当放在那些有针对性的专门攻击CPS系统并可能造成物理损害的网络攻击。
一、信息物理系统概述
Cyber-PhysicalSystems(CPSs)即信息物理系统,它是一个综合计算、网络和物理环境的多维复杂系统,信息物理系统这个概念与物联网概念相似,但与物联网相比,信息物理系统更注重强调控制。
CPSs这个词是2006年由美国国家科学基金会(NSF)的海伦·吉尔首次进行详细的描述,其认为信息物理系统是通过计算核心(嵌入式系统)实现感知、控制、集成的物理、生物和工程系统。信息物理系统的功能由计算和物理过程交互实现。此后得到美国政府和科学界的高度重视,随后各个国家都提出了相似的技术框架和相应的标准,其中最具代表性的包括“德国工业4.0”和“中国制造2025”。
CPSs存在于众多嵌入式计算机和通信技术的物理系统的自动化行业,包括航空航天、汽车、化工生产、民用基础设施、能源、医疗、制造业、新材料和运输等领域。CPSs主要包括3个部分,这三个部分为感知层、数据传输层(网络层)和应用控制层。
感知层主要是由传感器、控制器和采集器等设备组成。感知层中的传感器是作为信息物理系统的末端设备,其主要作用是采集环境中的信息数据,并且定时的发送给服务器,服务器在接收到数据之后作出相应的处理,再返回给物理末端设备作出相应的变化。数据传输层主要是连接信息世界与物理世界的桥梁,主要实现的是数据传输,为系统提供实时的网络服务,保证网络分组实时可靠。应用控制层则是根据认知结果,将物理设备传回来的数据进行分析,并以可视化的客户端界面呈现给客户。
图1 信息物理系统的总体结构
二、CPS的主要特点
CPSs的特点主要包括了:嵌入式系统、实时系统、有线或者无线的网络和控制理论等。
嵌入式系统:嵌入式系统是CPSs最普遍的特征之一,这些计算机通常直接与物理世界相连接(传感器、控制器和执行器),且只执行一些特定的操作。这类计算机并不需要传统计算机那样的计算能力,因此它们的资源往往是有限的。其中一些嵌入式系统甚至不运行操作系统,而只是在固件上运行一个特定的软件,以此来提供对设备和硬件的低级控制,像这样的没有操作系统的设备也被称作为裸金属系统(裸机电脑)。即使嵌入式系统有一个操作系统,它们运行的操作系统通常也仅仅是一个精简版系统,用以支持平台所需的最小工具。
实时系统:对于功能安全来说,为了确保系统的正确性,执行计算的时间是很重要的。实时编程语言可以帮助开发人员为他们的系统指定时间以满足时间要求,而实时操作系统可以保证接受和完成应用程序任务的时间。
网络连接:虽然目前许多关键基础设施(如电力系统)在其SCADA系统中使用了串行通信来监控远程操作,但越来越多的嵌入式系统通过与IP兼容的网络进行通信。系统不同部分之间的信息交换在过去的20年开始才从串行通信迁移到IP兼容的网络。例如:Modicon于1979年发布的串行通信协议Modbus,随后串行协议在20世纪90年代有了更多功能的IEC 60870-5-101和DNP3。在20世纪90年代末和21世纪初,这些串行协议都采用支持Modbus/TCP和IEC 60870-5-104等标准的IP网络。虽然大部分的远距离通信是通过有线网络进行的,但无线网络也是CPSs的一个特点,在消费者嵌入式领域,蓝牙就是一种流行的无线协议。
控制性:大多数的CPSs观察并控制物理世界中的变量。反馈控制系统已经存在了两个世纪,早在1788年,就有蒸汽调速器这样的技术。大多数控制理论采用微分方程建立一个物理模型,然后设计一个控制器以满足一组期望的特性,如稳定性和效率。控制系统最初设计有模拟传感和模拟控制。随着计算机网络的使用,数字控制器远离了传感器和执行器(如泵、阀门等),这样就产生了一种网络控制系统。目前还在研究的是将传统的物理系统模型(如微分方程)和计算模型(如有限状态机)结合起来,封装在一个混合系统内,称之为混合系统。
由于CPSs是多种多样的,包括工业系统、现代车辆、医疗设备等,这些系统都有不同的特点,上述特点为CPSs的一般特点,并不能适用于所有的CPSs中。在讨论网络安全问题之前,需要先描述自动控制系统下运行的物理系统是如何免受事故和自然故障的影响,以及针对非恶意对手的保护措施为何不足以应对恶意攻击者的。
三、CPS的保护措施
物理基础设施的控制设备发生故障,会对人、环境和其他物理基础设施造成无法弥补的伤害。因此工程师们开发了各种保护措施用于防止事故和自然原因造成的故障,包括了安全机制、保护机制、故障检测机制和鲁棒控制机制。
功能安全机制:例如针对控制系统的通用安全标准(IEC 61508),其基本原理是获取需求并从危害和风险分析已知故障的可能性和故障的后果,然后设计系统,在考虑所有故障的原因后满足安全要求。这个通用安全标准在特定的行业中作为其他许多标准的基础,例如流程工业(炼油厂、化学系统等)使用IEC 61511标准来设计安全仪表系统(SIS)以防止事故的发生。
保护机制:与安全相关的另一个概念就是保护,例如电网中的保护系统包括:
· 发电机保护:当系统频率过低或过高时,发电机会自动与电网断开,以防止对发电机的永久性破坏。
· 低频减载(UFLS):如果电网频率过低,则启动受控减载。以一种可控的方式进行部分电力分配系统的断开,同时避免像医院、供水等安全关键负荷的中断。UFLS的启动是为了提高电网的频率,防止发电机断开。
· 过流保护:当线路中电流过高时,会出发保护继电器,使线路断开,防止线路两侧设备损坏。
· 过/欠压保护:如果母线电压过低或者过高,会触发电压继电器。
可靠性机制:当安全和保护系统试图防止事故发生时,仍需要其他的方法保证系统发生故障后能够持续运行。
故障检测机制:通过故障检测、隔离和重新配置来保证其容错率。采用基于模型的检测系统或纯数据驱动系统来检测异常。隔离则是识别异常来源的过程,重新配置是从故障中恢复的过程,通常通过移除故障传感器来进行重新配置。
鲁棒控制机制:鲁棒控制研究的是控制系统在运行中如何面对不确定性问题。这些问题可能来源于自然环境(如飞机运行时的阵风)、传感器噪声、未被工程师建模的系统动力学和系统部件随时间的退化。鲁棒控制通常选取最不利运行的条件来设计控制算法,使系统安全运行。
功能安全与网络安全:添加新的安全防御可能会带来安全问题,例如,一个发电厂可能因为电脑在应用补丁后重启而致发电机组关闭。软件更新和补丁可能会违反安全认证,阻止未经授权的用户访问CPS也可能会在紧急情况下阻止急救人员访问系统(例如,护理人员可能需要访问阻止喷口未经授权连接的医疗设备)。在设计和部署新的安全机制时,安全解决方案应考虑CPS的安全问题。
CPSs即便拥有了上述机制,但也不足以保护其安全。随着CPS安全成为主流领域,对于拥有安全机制、保护机制、容错机制、和鲁棒控制机制的CPSs,已经不能免受网络攻击。已经有研究证实,电网中故障检测(坏数据检测)算法是如何被绕过的,通过发送与电网合理配置一致的错误数据即可进行绕过。攻击者在传感器中注入少量虚假数据,从而使故障检测系统无法将其识别为异常,现在已经有现实世界的攻击会针对这些用于预防事故的保护措施。
四、网络安全和隐私问题
CPSs是医疗保健设备、能源系统、武器系统和运输管理的核心。特别是工业控制系统,在关键的国家基础设施中有着重大的作用及影响,如果这些设施的中断,将会造成重大影响,并且会产生巨大的经济损失。例如,对电网的攻击会导致停电,停电则会导致其他关键基础设施(如供水系统、医疗系统等)产生级联影响。攻击GPS系统会导致司机到达了攻击者期望的目的地。
4.1针对CPSs的攻击
一般来说,CPS控制的是一个物理进程,一组传感器向控制器报告进程的状态,控制器又向执行器(如阀门)发送控制信号,以维持系统所期望的状态。控制器常常与监控设备或其他配置设备(如电网中的SCADA系统或医疗设备编程器)通信,这些设备可以监控系统或更改控制器的配置。
图2 CPS的总体架构及攻击点
1.攻击步骤①表示攻击者可以通过破坏传感器(例如数据未经验证的传感器或者攻击者拥有传感器密钥),并注入虚假的传感器信号,导致系统的控制器对恶意数据进行操作。
2.攻击步骤②表示攻击者在传感器和控制器之间的通信线路上进行攻击,攻击者可以通过延迟甚至完全阻止传感器到控制器的信息,使控制器失去对系统的可观察性,从而导致控制器使用传感器之前传来的陈旧数据进行操作。根据攻击者采用延迟或阻断数据通信可以分为拒绝服务攻击和过时数据攻击。
3.攻击步骤③表示攻击者可以直接攻击控制器,例如通过控制器向执行器发送错误的控制信号。
4.攻击步骤④表示攻击者可以延迟或阻止任何控制器传来的控制命令,使执行器无法接受到控制器的任何控制命令或接收到过时的控制命令。这类攻击也被认为是针对执行器的拒绝服务攻击。
5.攻击步骤⑤表示攻击者可以破坏执行器或使执行器执行与控制器意图不同的控制动作。这种攻击不同于直接攻击控制器,虽然都可以导致执行器执行计划之外的行为,但从原理和结果还是有些细微的差别。
6.攻击步骤⑥则是表示攻击者可以直接对物理系统进行物理攻击(例如破坏部分的基础设施),虽然这种攻击不属于网络攻击,但他可以与网络攻击结合起来一起被攻击者使用,这样的物理、网络联合攻击可以使攻击者更容易成功。
7.攻击步骤⑦表示攻击者可以延迟或阻止监视控制设备及配置设备与控制器之间的通信,这种攻击将使控制器无法收到或延迟收到配置设备的命令,或使监视控制设备无法获取控制器的信息。
8.攻击步骤⑧则通过破坏或假冒SCADA系统及配置设备进行攻击,并向控制器发送恶意控制或更改配置信息。这类攻击类型已经在乌克兰电网被攻击事件中得到了证明,攻击者破坏了SCADA系统控制室的计算机。
网络安全的本质是信息安全,而信息安全则包括了隐私泄露,CPSs还具有设计者未曾意料到的隐私泄露问题。CPS设备可以以前所未有的粒度收集各种人类活动的物理数据,如电力消耗、位置信息、驾驶习惯和生物传感器数据等等,并且这种被动的信息收集方式会让很多人不知道他们的信息正在被收集,正规企业或工厂可以通过他们收集到的信息进行分析,从而制定企业战略或生产方式等计划,但这些信息也将成为攻击者的目标,攻击者可以通过非法的手段获取这些信息,造成用户或企业的隐私泄露。
4.2针对CPSs攻击的真实案例
几十年来,控制系统一直是关键基础设施、制造业和工业工厂的核心,然而,很少有确认的明确是针对控制系统的网络攻击案例(这里关注的是来自恶意对手的攻击,而不是研究人员出于说明目的而发起的攻击)。
非针对性攻击是指因计算机可能遭受的相同攻击引起的事件,属于误伤的攻击。例如“Slammer”蠕虫,它不加区别地攻击Windows服务器,但无意中感染了戴维斯-贝斯核电站,影响了工程师监控系统状态的能力。另一个非目标攻击的例子是在水过滤装置中使用控制器发送垃圾邮件。
针对性的攻击是指对手知道他们的目标是CPS,因此,根据特定CPS属性调整攻击策略。当前特别关注对物理世界有影响的攻击,而重点不在用于侦察CPSs的攻击(如Havex或BlackEnergy)。
2000年澳大利亚昆士兰Maroochy污水处理厂内部工程师多次攻击SCADA系统,导致三个月时间内有75万加仑未经处理的污水流入公园、河流等场地,造成海洋生物损失、危及公共安全等后果,并造成了巨大经济损失。这是有公开报道的第一次CPSs受到攻击。
2010年针对伊朗Natanz核浓缩项目的Stuxnet蠕虫病毒,该病毒拦截了可编程逻辑控制器(PLC)上的读、写块的请求。通过拦截这些请求,Stuxnet能够在PLC操作员不知情的情况下修改发送或返回给PLC的数据。Stuxnet可以将不正确的转速发送给驱动铀浓缩的离心机的马达,导致离心机故障,从而需要更换。结果,离心机设备不得不定期更换,降低了Natanz工厂浓缩铀的产量。
参考文献:
1.加州大学圣克鲁兹分校Alvaro Cardenas,《Cyber-Physical Systems Security Knowledge Area 》
2.智慧工业,《聊聊信息物理系统(CPS)》
3.《信息安全与通信保密》期刊,《工业控制系统安全事件纵览》
声明:本文来自网络安全应急技术国家工程实验室,版权归作者所有。文章内容仅代表作者独立观点,不代表安全内参立场,转载目的在于传递更多信息。如有侵权,请联系 anquanneican@163.com。