卡巴斯基实验室的研究人员发现OPC UA协议中存在大量漏洞,包括理论上可能被利用来在工业环境中造成物理损坏的缺陷。
由OPC基金会开发和维护的OPC UA代表开放平台通信统一自动化。该协议广泛用于工业自动化,包括控制系统(ICS)以及工业物联网(IIoT)和智能城市系统之间的通信。
作为OPC基金会联盟成员的卡巴斯基实验室的研究人员对OPC UA进行了详细分析,发现了很多漏洞,包括可用于远程执行代码和拒绝服务(DoS)攻击的漏洞。
OPC UA有多种实现方式,但专家们着重于OPC Foundation的实现 - 其源代码是公开的 - 以及使用OPC UA Stack的第三方应用程序。
OPC基金会的产品中共发现17个漏洞,并且在使用这些产品的商业应用中存在一些缺陷。大部分问题都是通过模糊测试发现的。
Kaspersky研究人员Pavel Cheremushkin和Sergey Temnikov在3月份的公司安全分析师峰会上接受安全周刊采访时表示,攻击漏洞取决于目标网络的配置方式,但在大多数情况下,它需要访问本地网络。专家们表示,他们从来没有见过可以直接从互联网上进行攻击的配置。
攻击者首先必须识别使用OPC UA的服务,然后向其发送触发DoS条件或远程代码执行的有效负载。攻击者可以利用远程代码执行漏洞在网络中横向移动,控制工业流程并隐藏其存在。但是,在工业系统的情况下,DoS攻击可能会产生更显着的影响。
Cheremushkin和Temnikov 在周四发布的一份报告中写道:“在工业系统中,拒绝服务漏洞比任何其他软件都构成更严重的威胁。“遥测和遥控系统中的拒绝服务条件可能会导致企业遭受经济损失,并且在某些情况下甚至会导致工业过程的中断和关闭。从理论上讲,这可能会损害昂贵的设备和其他物理损害。“
所有的安全漏洞都被报告给了OPC基金会,并且他们各自的开发人员和补丁被释放。考虑到OPC协议栈是一个DLL文件,只需用新文件替换旧文件即可执行更新,因此应用补丁并不困难。
OPC基金会发布了卡巴斯基研究人员发现的安全漏洞的建议,但将所有问题分为两个CVE标识符:CVE-2017-17433和CVE-2017-12069。后者还影响西门子的自动化和配电产品,西门子也发布了咨询。
“根据我们的评估,目前的OPC UA Stack实施不仅不能保护开发人员免受微不足道的错误,而且往往会引发错误 - 我们已经在实际例子中看到了这一点。鉴于今天的威胁形势,OPC UA广泛使用的产品是不可接受的。研究人员说,这对于为工业自动化系统设计的产品而言更是不能接受。