M221的安全认证历史记录

  • A+
所属分类:安全闲碎

M221的安全漏洞解读

Modicon PLC在数十年的今天的IT-OT融合以及保护连接设备的安全性之前就已经存在。Modicon是1968年在美国开发的第一台PLC。该公司是Bedford Associates的子公司,后者为GM Hydramatic开发了PLC。1977年,古尔德电子公司收购了Modicon,然后在1989年将其出售给AEG。AEG和Schneider Group于1994年合并为AEG Schneider Automation,在1996年成为Schneider的独资公司,并于1999年更名为Schneider Electric。

M221的安全认证历史记录

施耐德一直对Modicon M221的安全性保持警惕,最早可以追溯到2017年和2018年,当时披露并解决了许多身份验证和加密漏洞,这些漏洞可能会使设备上的凭据面临风险。例如,在产品开发的一个阶段,身份验证仅限于客户端密码检查,该检查密码仅用于防止未经授权的人员对PLC进行修改。顺便说一下,密码信息是以明文形式传输的。

M221的安全认证历史记录

M221的安全认证历史记录

SoMachine Basic 1.4 SP1的较旧版本与Application Protection进行接口,而Wireshark PCAP与从服务器传输的具有纯文本客户端验证的密码。

随着M221中的每一个新漏洞披露,随着Schnedier对问题的及时披露,该产品的安全性得到了改善。结果是,在后续版本中,密码哈希已替换为明文密码,已添加服务器端身份验证,并且密钥交换和数据已加密。

在最新版本中,存在读和写密码命令,但只能通过事先发送包含密码哈希值的加密消息来使用。在不输入密码的情况下,仅读取数据的选定部分。使用具有子类型6和7(分别用于读取和写入密码)的子功能0x6d(专用)发送加密的哈希。

M221的安全认证历史记录

M221的安全认证历史记录

M221的安全认证历史记录

新的EcoStruxure MachineExpert Basic 1.0 SP2接口具有写保护,而Wireshark PCAP具有相关的Diffie-Hellman密钥交换和写口令认证。

CVE时间表

M221的安全认证历史记录

以下是上述时间轴中与Schneider的M221身份验证机制相关的CVE的详细信息,这些细节已在今天之前进行了修补:

CVE-2017-7574:硬编码加密密钥的使用

CVE-2017-7575:保护机制失败–发现密码

CVE-2018-7789:不正常的异常或异常情况检查–未经身份验证的重新引导

CVE-2018-7790:信息管理错误–身份验证重播攻击

CVE-2018-7791:权限,特权和访问控制–覆盖密码

CVE-2018-7792:权限,特权和访问控制–解码密码

CVE-2018-7798:数据真实性验证不足–更改网络参数

新漏洞启用身份验证绕过

最新披露解决了多年来实施的那些安全措施中发现的一些缺陷。仅在已经在OT网络或ICS设备上立足的攻击者才能利用6月10日报告给Schneider的漏洞。

例如,攻击者可能会捕获Modicon M221 PLC与EcoStruxure Machine Expert Basic软件之间的网络流量,其中包括上载和下载数据或成功的身份验证尝试。此数据使用4字节XOR密钥加密,这是一种弱加密方法。

可以使用已知明文攻击(将内存中的已知部分与它们对应的加密对应部分进行比较)或数据的统计分析来推断XOR密钥,因为它包含大量的NULL字节。使用弱加密机制传输诸如读写密码哈希之类的数据,因此可以将其提取并传递给“哈希传递”攻击,以向PLC验证攻击者的身份。之所以可行,是因为在身份验证交换中仅使用哈希。攻击者可以从那里执行特权命令,例如将恶意更新或代码上传到PLC或从设备下载信息。

M221的安全认证历史记录

使用4字节XOR密钥加密的读取命令的示例。使用统计分析,可以看到重复序列,从而猜测出密钥,因为它正在加密空字节。

通俗易懂的研究人员还发现了密钥交换机制中的密码实施漏洞。在这种情况下,使用Diffie-Hellman密钥交换方法来创建4字节的XOR密钥,以在认证阶段对读写数据和密码哈希进行加密(每种情况下使用不同的XOR密钥)。

双方都生成一个4字节的密钥,并使用Diffie-Hellman创建一个共享密钥:4字节的XOR密钥。如上所述,4字节XOR密钥是一种弱数据加密方法。但是,这里更大的问题是密钥交换方法本身。

Diffie-Hellman的优势在于,由于离散的对数问题,从传输的信息中计算出秘密实际上是不可能的。意思是,如果机密有N个字节,因此有2种(8×N)可能性,则必须检查每种可能性(的顺序)。例如,对于16字节的机密,这大约有10 38种可能性。但是在我们的情况下,只有4个字节,因此只有4.29×10 9个可能性,这意味着可以使用蛮力/彩虹表攻击从传输的数据中推断出秘密。

M221的安全认证历史记录

研究表明,攻击者如何才能构建预先计算的彩虹表,从而快速有效地破解Diffie-Hellman密钥交换。

能够捕获足够流量的攻击者应该能够在任一交换中推断出客户端或服务器端的机密,并且能够破坏加密的读写命令和加密的密码哈希。这使整个密钥交换机制面临风险。

概括

Modicon M221 PLC在多个行业中使用,具有适当身份验证机制知识和适当密码实施知识的高级攻击者可能会利用这些漏洞并使流程处于危险之中。

以下是这四个漏洞的摘要:

CVE-2020-7565
相关的CWE-326:加密强度不足—读/写加密使用4字节XOR密钥进行数据加密,这是一种较弱的实现,可以使用已知的明文攻击来破坏,其中可能会在某些内存区域中读取数据无需身份验证,也无需对流量中XOR密钥的重复序列进行统计分析。

CVE-2020-7566
相关的CWE-334:较小的随机值空间-一种弱密钥交换方法或读/写加密,其中使用的Diffie-Hellman机密太小,并且可以发现4字节的XOR密钥。

CVE-2020-7567
相关的CWE-311:敏感数据的缺少加密—可以在PLC与EcoStruxure Machine Expert Basic软件之间的上载下载通信中发现密码哈希。能够使用这些漏洞中的另一个漏洞推断XOR密钥的攻击者可能会使用同一密钥来查找密码哈希,并使用“哈希传递”攻击向PLC进行身份验证。

CVE-2020-7568
相关的CWE-200:向未经授权的公开敏感信息—即使激活了读写保护功能,也可以在不输入密码的情况下读取某些部分或内存。



本文始发于微信公众号(IRT工业安全红队):M221的安全认证历史记录

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: