施耐德昆腾140CPU65150私有协议脆弱性导致PLC宕机

 

1 设备描述

施耐德电气有限公司(Schneider Electric SA)是总部位于法国的全球化电气企业。昆腾140CPU65150Modicon Quantum 自动化平台的Unity处理器。

施耐德昆腾140 CPU 65 150

2 漏洞说明

施耐德昆腾140 CPU 65 150 PLC基于Modbus90功能码,即UMAS协议,与编程工具或组态软件进行通信。与普通Modbus TCP协议相比,UMAS协议在安全性上有了较大改进:不仅协议私有,而且增加了会话管理机制。

UMAS协议流量

基于Unity Pro XL编程工具制造具有针对性的工控数据包,并结合github参考资料(https://github.com/mliras/malmod),对该协议深入分析后,进而开展安全研究工作。

Unity Pro XL编程工具

github关于UMAS协议参考资料

研究分析发现,向施耐德昆腾140CPU 65 150 PLC发送两个精心构造的恶意数据包,可直接触发其内部异常,导致设备无法正常运行,从而影响其所控制的物理层工控设备,威胁人身安全。只能通过冷启动(强行断电后重新上电,启动设备)地方式进行恢复。而且,PLC冷启动后处于Stop状态,需要人工设置为Run状态,才能恢复正常运行。

施耐德昆腾140 CPU 65 150 内部系统异常

详细攻击过程,可参考文章末尾的视频。

 

3 行业影响

目前施耐德系列产品已被广泛应用于制造业、水务、医疗和能源等多个领域。攻击者成功利用该漏洞,可直接导致使用该设备的产线停止生产。

(完)