工业控制从专用系统向开放式系统的转变使跨商业系统和跨网络的无缝整合得以实现,这种整合使控制进一步优化,使商业运营更加灵活。然而,也恰恰是由于系统之间存在交互工作,这些系统才更加容易受到攻击。从病毒、蠕虫到木马和数据篡改,各种各样的网络威胁对控制系统造成了影响,甚至扰乱了工厂作业。过程控制领域近期的网络安全事件表明,如果不具备综合安全策略,那么工业控制系统是十分脆弱的。
然而,即使具备了所有的安全策略,有统计显示工厂工程师所面临的最主要的威胁并非来自于外部——而大部分来自于工厂内部。
超过60%的受访工程师表示工业安全问题确实来自于内部原因。这并非意味着工厂雇员或者承包商有意使系统暴露于恶意攻击,安全问题都来自于雇员的无意之为,因为他们并不知晓正确的安全规程。
从上报的恶意事件分析,很多情况都是由恶意软件导致,包括病毒、蠕虫和木马,它们并非专门针对受影响的工厂。其他的情况呢?剩下大多数的安全问题就是纯粹的事故,包括用户失误或者配置故障所导致。
例如,2006年Browns Ferry核电站控制系统网络上来自于两家供应商的产品之间产生了巨量数据流,导致控制循环水系统的冗余驱动器失效,进而导致核电站紧急停机。又例如2008年Edwin I. Hatch核电站在对其工厂的商务网络中一台计算机进行软件更新之后发生了紧急停机。
保护过程控制系统并非难如登天,实际上它是很容易实现的。将它看做一种健康的生活规律:就像人体需要规律的生活,控制系统亦需要建立规律的检查和评估机制。通过对网络健康状况进行检查,获得控制系统性能信息,工厂操作人员能够判断采取何种措施才能为系统建立起良好的安全策略。
完整的工作规程
Stuxnet病毒的威力依旧令人胆寒,很多工厂操作人员试图寻找到一种可以免受攻击的方法。实际上包治百病的方法并不存在。医生无法开出能够确保健康的药方,健康是合理饮食、锻炼、睡眠和控制体重的结果。确保控制系统不易受攻击不能仅依靠单一方法,而需要依靠多种方法从多个方面抵御攻击。
“Stuxnet病毒的威力依旧令人胆寒,很多工厂操作人员试图寻找到一种可以免受攻击的方法,实际上包治百病的方法并不存在。”
具有安全网络的工厂必定能够达到各种技术、策略和程序的稳固结合以有效应对潜在威胁。这与健康计划很类似,工厂首先需要定义各种目标,明确当前状态,然后努力达到既定目标。
那么,良好的网络健康状况应该是什么样子的?有些例子还是很明显的,但是并未被广泛地落实。例如,供应商的产品通常都有默认密码,而令人惊讶的是,大多数情况下默认密码并未被改动而是沿用下去。使用默认的密码和默认的安全设置就如同在开车时不关车门一样。
其他简单却又经常被忽视的步骤包括微软 Windows操作系统补丁管理和防病毒更新,这些步骤对于确保网络的安全性至关重要。补丁可以使控制系统保持最新,通常发现新漏洞的同时,新的补丁都会发布。如果不及时更新补丁,即使知道漏洞所在,系统仍旧易受攻击。
过程控制供应商在测评防病毒软件上也有用武之地,在评估微软安全升级之类的补丁中他们也应该有所作为。选择经过评估的防病毒软件对工厂大有裨益,先进的防病毒软件必定比同类软件有见长之处。供应商也可以采用有利于系统安全性的锁定模式,为用户提供预设的文件、地址和注册码等安全设置,抵御来自恶意用户和无意失误造成的恶意软件攻击。
例如存储卡之类的便携式存储设备的使用方针必须定义并严格执行,在USB端口上插入存储卡能够避开用来抵御感染的所有网络安全机制。例如,Stuxnet蠕虫的感染机制之一就是通过USB存储卡进入毫无防备的系统。
理解深度防御
并非所有用来获得网络安全的步骤都显而易见并且易于理解,特别是当讨论深度防御时。构建深度防御的首要前提是构建多层防御体系用来抵御威胁。网络安全手段怎样才能实现分层呢?
依据ANSI/ISA-99或者IEC 62443标准,网络安全最佳方式是分层或者分区,这种方法能够帮助抵御威胁,并能够阻止病毒在整个网络中传播。关键的自动化和控制设备应该分在一组,分享共同的安全层级要求。这些区域之间的通讯必须经过受保护和监控的通路来实现,在这些区域之间规范数据的流通以实现更安全的通讯。
ISA-99定义了高、中、低三层的安全区。通过分析工厂的风险分析,并考虑到可能出现的威胁的严重程度和范围,每个区域都需要定义安全级别目标。每个区域内的设备都需要具有相应安全级别的能力,当这种能力低于该区域的安全级别目标时,必须使用安全技术或者安全策略来平衡这两者之间的关系,这有助于降低风险。
使用这种方法,网络安全更加容易管理。通过划分安全区域,只有在安全级别目标需要调整的时候才会提高安全层级,而这一切都可通过潜在的风险来判断。
基于安全区域同样会提升威胁检测能力(假设威胁检测能力是安全区策略的一部分)。确定那些必定会发生的问题的来源是较为简单的,因为工厂操作人员能够在源头解决问题,并找到其他直接的威胁。合理的分隔能够将区域之间的通讯限制在必要程度之下,并且仅仅通过被定义的和受到保护的通路进行通讯。这会阻止问题向其他区域扩散,包括关键的控制系统。这种强大的防御能够搭建一步一步深入的安全策略,在区域内创建更多区。这种机制能够阻止在其中一个小区域内发生的内部操作人员的失误在整个区域内蔓延,为多个安全层次搭建防御系统。
“全面的评估覆盖了网络所有部分,工厂管理人员从而知晓工厂距离工业标准和那些优秀的案例还有哪些需要改进之处。”
分层的原则遵循重要性的逻辑排序。分层网络提供了多层防御系统,并将最关键的系统位于最深层。
层1:关键设备、过程控制器和I/O工作于层1。大体来说,这些关键的嵌入式控制器件应该使用控制防火墙与网络隔离开来。
层2:过程控制操作员站点和监管控制工作于此层级中。操作员站点一般就是Windows站点,需要使用高等级的安全模型来锁定节点,使用基于节点的防火墙并采用专用的网络技术来限制网络异常,并考虑到可能出现的威胁的严重程度和范围,每个区域都需要定义安全级别目标。每个区域内的设备都需要具有相应安全级别的能力,当这种能力低于该区域的安全级别目标时,必须使用安全技术或者安全策略来平衡这两者之间的关系,这有助于降低风险。
使用这种方法,网络安全更加容易管理。通过划分安全区域,只有在安全级别目标需要调整的时候才会提高安全层级,而这一切都可通过潜在的风险来判断。
基于安全区域同样会提升威胁检测能力(假设威胁检测能力是安全区策略的一部分)。确定那些必定会发生的问题的来源是较为简单的,因为工厂操作人员能够在源头解决问题,并找到其他直接的威胁。合理的分隔能够将区域之间的通讯限制在必要程度之下,并且仅仅通过被定义的和受到保护的通路进行通讯。这会阻止问题向其他区域扩散,包括关键的控制系统。这种强大的防御能够搭建一步一步深入的安全策略,在区域内创建更多区。这种机制能够阻止在其中一个小区域内发生的内部操作人员的失误在整个区域内蔓延,为多个安全层次搭建防御系统。
分层的原则遵循重要性的逻辑排序。分层网络提供了多层防御系统,并将最关键的系统位于最深层。
层1:关键设备、过程控制器和I/O工作于层1。大体来说,这些关键的嵌入式控制器件应该使用控制防火墙与网络隔离开