鉴于内置安全的明显缺失,可编程逻辑控制器(PLC)长久以来都是攻击者眼中诱人的目标。如今,安全研究人员更进一步,将在近期举行的S4大会上演示如何通过PLC本身的高级通信功能控制这些PLC。
ICS/SCADA网络安全监测公司Indegy高级软件工程师 Roee Stark 发现,可以利用罗克韦尔自动化公司的 CompactLogix PLC 内置的两个通信功能发起网络攻击。网络罪犯或民族国家黑客组织可以将这些功能作为秘密渗透和控制工业过程及运营的新手段,甚至以此摸进目标的IT网络基础设施。
截至目前的大多数PLC安全研究都集中在如何黑进PLC或往PLC中植入恶意软件上,目的要么是改变工业过程,要么是篡改其梯形逻辑(用于编码PLC的编程语言)。用于PLC的rootkit和蠕虫都早已出现。
但Stark的黑客研究关注PLC的连接功能。PLC对网络连接开放,这一设计让它们对基于网络的攻击毫不设防。利用PLC的联网功能比改变该控制器的编程或让它爆炸来得容易得多。
Stark利用的第一个PLC内置功能名为复杂路径,存在于罗克韦尔 CompactLogix PLC 中,是通用工业协议(CIP)芯片集的一部分。CIP是将工业操作与IT网络和互联网集成的工业网络所用的通信架构,运行于EtherNet/IP、Control/IP和其他流行工业网络协议之上。
复杂路径功能可供黑客在两个没有直接连接的PLC之间创建CIP会话。所以,如果 PLC A 连接 PLC B,PLC B 连接 PLC C,就可以通过 PLC B 在 PLC A 和 PLC C 之间构建通路。该功能允许PLC之间转发和传输消息。
第二个被利用的功能名为套接字对象,可供PLC收发TCP或UDP数据包。
组合使用这两个功能,就可以从已被掌控的PLC向与其连接的其他PLC发送/接收消息,不用考虑连接类型。
能直接或远程访问罗克韦尔PLC的攻击者可以滥用这两个功能收集数据,探测环境,渗漏数据,以及运用已知安全漏洞进一步攻击该工业网络。
只要攻击者可以通过局域网或互联网访问厂房车间的PLC,就能摸清这些控制器中的通信模块是哪些,然后利用复杂路径功能建立通信。
通信建立起来之后就能通过套接字接口用查询和扫描来收集数据。
因为尚未一一测试,Stark不确定此类攻击在其他供应商的PLC上有没有效。不过,他也指出,即便罗克韦尔PLC的这两个内置功能可能被黑客滥用,其CompactLogix系列也比其他大多数PLC含有更多高级通信协议和功能。这些高级通信协议和功能是相当独特的。
Indegy并未向罗克韦尔披露该研究,因为这不是纯粹的漏洞披露而是滥用控制器功能的一种方法。攻击者并没有绕过什么防护,也没有利用任何控制措施漏洞。滥用该功能的时候程序流正是忠实执行了自己的既定任务。
罗克韦尔自动化公司的发言人拒绝就Indegy的研究发表任何评论。
缺失环节
罗克韦尔PLC实际上有个日志功能可以帮助捕获此类攻击,只不过,该日志功能默认是禁用的。而开启该功能有点麻烦,得深入PLC的Web接口层层查找,然后用特殊的CIP指令将之打开并开始记录。
身份验证也有助于挫败此类攻击,但PLC并未设置身份验证功能。Stark还表示,Indegy的持续网络监视产品能够发现利用罗克韦尔设备中合法PLC通信功能的任何恶意网络活动。另外,路由器白名单也可以防止未授权PLC流量。
相较之下,保护工厂车间内PLC的工作历来把重点放在如何避免恶意固件更新或防止恶意软件感染带来的危害,往往只考虑执行流,没有关注通信流。
相关阅读