漏洞概述
日前,JSOF研究实验室在Treck公司开发的广泛使用的低级TCP / IP软件库中发现了一系列0day漏洞。这19个漏洞合集被命名为Ripple20,它们影响数亿或更多的联网设备。
由于该软件库广泛传播,以至于对其进行跟踪一直是一个重大挑战。JSOF研究实验室的研究人员表示,他们在追踪Treck的TCP / IP库的分布轨迹时,发现在过去的二十年中,这种基本的网络软件已通过直接和间接使用在世界范围内传播。作为传播媒介,复杂的供应链为其提供了完美的渠道,使得原本的漏洞几乎可以无止境地渗透和伪装自己。
Ripple20覆盖了来自广泛领域的关键物联网设备,涉及了众多供应商团队。受影响的供应商范围从单人的精品店到财富500强跨国公司,例如惠普、施耐德电气、英特尔、Rockwell Automation、Caterpillar,Baxter…以及许多其他可能在医疗,运输,工业控制方面受到影响的主要国际供应商,企业,能源(石油/天然气),电信,零售和商业以及其他行业。
据说,他们之所以将这19个漏洞命令为“Ripple20”,就是因为这些漏洞将会在2020年及以后引发连锁反应式的安全风暴。而且更糟糕的是,攻击者可以通过这一系列漏洞将自己的恶意代码隐藏在嵌入式设备中潜伏多年。这里我们简单举几个例子:比如窃取打印机的数据,控制医用输液泵的行为或工业控制设备等,这些都有可能发生。
漏洞详情
Ripple20漏洞中有四个被评为严重,CVSS得分超过9,并且启用了远程执行代码。关键漏洞之一是DNS协议中的漏洞,并且可能由老练的攻击者通过互联网(甚至在未连接到互联网的设备上)从网络边界外部通过互联网利用。 其他15个漏洞的严重性程度不同,CVSS评分从3.1到8.2不等,其影响范围从拒绝服务到潜在的远程执行代码等,大多数漏洞都是真实的零日漏洞,其中的4个已在过去几年中作为例行代码更改的一部分而关闭,但在某些受影响的设备中仍处于打开状态(严重程度较低3,高1)。由于堆栈的可配置性和多年来的代码更改,导致许多漏洞都有几种变体。
漏洞包括:
CVE ID |
CVSSv3 |
描述 |
潜在影响 |
固定版本 |
CVE-2020-11896 |
10 |
可以通过将多个格式错误的IPv4数据包发送到支持IPv4隧道的设备来触发此漏洞。它会影响使用特定配置运行Treck的任何设备。它可以实现稳定的远程代码执行,并且已在Digi International设备上进行了演示。可能会触发此问题的变体,导致拒绝服务或永久拒绝服务,需要进行硬重置。 |
远程 代码 执行 |
6.0.1.66 (2020年3月3日发行) |
CVE-2020-11897 |
10 |
可以通过向设备发送多个格式错误的IPv6数据包来触发此漏洞。它会影响运行支持IPv6的旧版Treck的任何设备,并且先前已作为例行代码更改进行了修复。它可能会允许稳定的远程代码执行。 |
越界写入 |
5.0.1.35 (2009年4月6日发行) |
CVE-2020-11901 |
9 |
可以通过回答设备发出的单个DNS请求来触发此漏洞。它会影响任何运行支持DNS的Treck的设备,并且我们已经证明它可用于在Schneider Electric APC UPS上执行远程代码执行。我们认为,尽管CVSS评分为9.0,这是最严重的漏洞,这是因为DNS请求可能会离开该设备所在的网络,而精巧的攻击者可能能够利用此漏洞来进行攻击。通过DNS缓存中毒或其他方法从网络外部通过设备访问。因此,攻击者可以绕过网络并利用一个漏洞绕过任何安全措施来接管设备。 格式错误的数据包几乎完全符合RFC标准,因此对于防火墙等安全产品来说,检测该漏洞可能很困难。在仍然在某些设备上运行的非常老版本的Treck堆栈上,交易ID不会随机化,从而使攻击更加容易。 |
远程 代码执行 |
6.0.1.66 (版本03/03/2020) |
下面列出了其他漏洞。
CVE ID |
CVSSv3分数 |
描述 |
固定版本 |
CVE-2020-11898 |
9.1 |
处理未经授权的网络攻击者发送的数据包时,IPv4 / ICMPv4组件中的长度参数不一致(CWE-130)处理不当。可能暴露的敏感信息(CWE-200) |
6.0.1.66 (版本03/03/2020) |
CVE-2020-11900 |
8.2 |
处理网络攻击者发送的数据包时,IPv4隧道组件中可能存在双重释放(CWE-415)。 免费使用(CWE-416) |
6.0.1.41 (2014年10月15日发行) |
CVE-2020-11902 |
7.3 |
处理未经授权的网络攻击者发送的数据包时,IPv6OverIPv4隧道组件中的输入验证不正确(CWE-20)。 可能的越界读取(CWE-125) |
6.0.1.66 (03/03/20版) |
CVE-2020-11904 |
5.6 |
处理未经授权的网络攻击者发送的数据包时,内存分配组件中可能存在整数溢出或环绕(CWE-190) 可能的界外写入(CWE-787) |
6.0.1.66 (版本03/03/2020) |
CVE-2020-11899 |
5.4 |
处理未经授权的网络攻击者发送的数据包时,IPv6组件中的输入验证不正确(CWE-20)。 可能的越界读取(CWE-125)和可能的拒绝服务。 |
6.0.1.66 (03/03/20版) |
CVE-2020-11903 |
5.3 |
处理未经授权的网络攻击者发送的数据包时,DHCP组件中的可能的越界读取(CWE-125)。 可能暴露的敏感信息(CWE-200) |
6.0.1.28 (版本10/10/12) |
CVE-2020-11905 |
5.3 |
处理未经授权的网络攻击者发送的数据包时,DHCPv6组件中可能的越界读取(CWE-125)。 可能暴露的敏感信息(CWE-200) |
6.0.1.66 (03/03/20版) |
CVE-2020-11906 |
5 |
未经授权用户发送的数据包中的以太网链路层组件中的输入验证不正确(CWE-20)。 整数下溢(CWE-191) |
6.0.1.66 (03/03/20版) |
CVE-2020-11907 |
5 |
TCP组件中长度参数不一致(CWE-130)的不正确处理,来自未经授权的网络攻击者发送的数据包 整数下溢(CWE-191) |
6.0.1.66 (03/03/20版) |
CVE-2020-11909 |
3.7 |
处理未经授权的网络攻击者发送的数据包时,IPv4组件中的输入验证不正确(CWE-20)。 整数下溢(CWE-191) |
6.0.1.66 (03/03/20版) |
CVE-2020-11910 |
3.7 |
处理未经授权的网络攻击者发送的数据包时,ICMPv4组件中的输入验证不正确(CWE-20)。 可能的越界读取(CWE-125) |
6.0.1.66 (03/03/20版) |
CVE-2020-11911 |
3.7 |
处理未经授权的网络攻击者发送的数据包时,ICMPv4组件中的访问控制(CWE-284)不正确。 关键资源的权限分配不正确(CWE-732) |
6.0.1.66 (03/03/20版) |
CVE-2020-11912 |
3.7 |
处理未经授权的网络攻击者发送的数据包时,TCP组件中的输入验证不正确(CWE-20)。 可能的越界读取(CWE-125) |
6.0.1.66 (03/03/20版) |
CVE-2020-11913 |
3.7 |
处理未经授权的网络攻击者发送的数据包时,IPv6组件中的输入验证不正确(CWE-20)。 可能的越界读取(CWE-125) |
6.0.1.66 (03/03/20版) |
CVE-2020-11914 |
3.1 |
“处理未经授权的网络攻击者发送的数据包时,ARP组件中的输入验证不正确(CWE-20)。” 可能的越界读取(CWE-125) |
6.0.1.66 (03/03/20版) |
CVE-2020-11908 |
3.1 |
处理未经授权的网络攻击者发送的数据包时,DHCP组件中的Null终止(CWE-170)不正确。 可能暴露的敏感信息(CWE-200) |
4.7.1.27 (07年11月8日发行) |
这些被称为Ripple20的漏洞包括了四个高危远程代码执行漏洞。如果利用这四个漏洞,攻击者可以轻松接管智能设备或任何工业或医疗设备。并且通过这些漏洞绕过边界设备,进而攻击到内部网络。
影响范围
在Ripple20的例子中,起点被嵌入到Treck的TCP/IP低级Internet协议套件库中。这个库可以按原样使用,也可以配置为广泛的用途,或者合并到更大的库中。用户可以购买源代码格式的库并进行广泛的编辑。它可以被合并到代码中,并被植入到各种设备类型中。最初的购买者可能会决定重塑品牌,或者被另一家公司收购,而图书馆的原始历史会丢失在公司的档案中。随着时间的推移,原来的库组件可能会变得几乎无法识别。这就是为什么在最初的漏洞被识别和修补之后很长一段时间,漏洞可能仍然存在,因为跟踪供应链的轨迹实际上是不可能的。
几个月来,JSOF对受Treck Internet协议库漏洞影响的供应商进行了广泛、深入的分析。我们经历的第一个挑战就是如何识别相关的供应商。由于供应链的复杂性,供应商的身份可能会变得模糊不清。即使确定了供应商,补丁实现也很复杂,而且并不总是可行的。在披露过程中,我们发现,虽然补丁对一些供应商来说是困难的,但对于一些终端用户来说,安装补丁可能更加困难,甚至几乎不可能。(例如,如果库位于单独的物理组件上,或者生产该组件的公司已经停止运营。)
包含脆弱代码库的设备数量仅为初步估计;实际的数字可能是数十亿。
以下是受影响的供应商:
本文为翻译整理而来,原文地址:https://www.jsof-tech.com/ripple20
本文始发于微信公众号(凌晨安全):被供应链扩大影响的19个0day(Ripple20)
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论