深度包检测有利于工业自动化和控制系统

为了确保工业自动化和控制系统(IACS)能够理解特定的协议,并对控制系统重要的字段和值应用过滤器,需要对流量进行深度包检测(DPI)。

通过苏尼尔Maryala 二零一七年十一月三十日

工业自动化和控制系统(IACS)采用专有技术,可自主运行,使用寿命长。这些旧系统上的软件和硬件通常在设计时没有考虑安全问题,因为这些系统在工厂内是隔离的。这种隔离造成了一种虚假的安全感,尽管这些设备存在许多漏洞,可能成为网络攻击的潜在目标。这种糟糕的安全设计状况,加上工业控制系统(ICS)内部缺乏意识,仍然存在。

由于需要更多的连接,IACS设备,如可编程逻辑控制器(plc)和监控和数据采集(SCADA)系统连接到网络。

传统的基于串行的协议,如Modbus和DNP,依赖于TCP/IP等开放标准,这使得更多的设备和协议在网络上运行,从而增加了安全风险。最近对关键基础设施和工业控制系统的攻击已经证明,黑客正在试图利用工业协议中存在的漏洞。

基于访问控制的防火墙不能帮助保护IACS。他们的规则关注IP地址和端口号,这些策略主要是静态的。工业协议中的事务性信息存在于应用层。以Modbus/TCP为例,在应用负载中携带Modbus功能信息。

为了保证IACS的安全,需要对流量进行DPI (Deep packet inspection)检测。例如,DPI可以查看准确的事务,以区分“读取”消息和“固件更新”消息。DPI用于理解IACS协议的细节,并将过滤器应用于对控制系统重要的字段和值。

主从协议

在典型的SCADA系统中,通信中有两个组件—主设备和从设备。在一个标准的Modbus网络中,有一个主节点和多达247个从节点;每个都有一个唯一的从地址,从1到247。当主设备发出命令时,从设备服从这些命令。

Modbus报文命令包含MBAP报头=目的Modbus单元,功能码=读/写和从设备完成和命令的要写或要读的数据。缺少的是关于该命令起源的信息。这意味着奴隶必须在不知道命令来源的情况下满足命令。几乎所有的SCADA协议都有一个类似Modbus的数据包结构,并且没有一种方法来验证发起者。

这种情况产生了一个问题,即任何能够到达SCADA设备的人都可以发送命令。例如,恶意黑客可以向SCADA设备发送命令,将发电厂的冷却阈值等参数更改为高于平均温度的设置。这意味着即使电厂的温度超过典型的运行条件,冷却系统也不会启动,从而导致系统过热和机器损坏。如果黑客能够破坏冷却系统,这可能会导致灾难性的破坏,比如核电站的爆炸。

为了避免利用SCADA协议弱点的攻击,必须做两件事。首先,验证命令是否来自有效的主/源。第二,确保所有的要求都是正确的,不会危及工厂的安全。

常规防火墙通过IP地址检测流量,可以防止非法主机发送命令。他们无法阻止使用IP欺骗的场景。在IP欺骗中,应该安装的防火墙可以超越IP地址,查看应用程序有效负载,并理解命令和数据,以了解主设备和从设备之间的确切事务。

总体安全

与安全相关的事件不一定总是由恶意的外部攻击造成的。由于不熟悉系统的全部功能或某些活动的后果的人员在工厂内的人为错误,国际集成系统经常受到破坏。

使用基于dpi的防火墙,可以实现规则,查看发出给机器人的命令和坐标,并允许满足安全移动限制的指令。建立这些规则可以创建安全策略,并与基于dpi的防火墙上的安全策略保持一致。DPI防火墙还可以通过在协议偏离行为或数据包构造标准时执行完整性检查来帮助防止零日攻击。

无论与安全相关的事件是由恶意的外部攻击还是工厂人员的人为错误引起的,利用DPI都很重要。这样做有助于确保工厂的网络安全以及员工的人身安全。

苏尼尔Maryala是思科专注于物联网安全的技术营销工程师。本内容最初出现在ISSSource.com.ISSSource是CFE Media的内容合作伙伴。Chris Vavra编辑,CFE Media制作编辑,cvavra@cfemedia.com

在线额外

参见下面链接的ISSSource的相关故事。