4个开源 TCP/IP 栈被曝33个漏洞,数百万智能和工业设备受影响
编译:奇安信代码卫士团队
Forescout 公司的安全研究员披露了150多个厂商产品固件中当前所使用的四个开源 TCP/IP 库中的33个安全缺陷,被统称为 “Amnesia:33”。
研究人员认为目前数百万消费者级和工业级设备受所发现漏洞的影响。受影响系统包括几乎一切所能想到的所有系统,包括智能手机、游戏控制台、传感器、片上系统 (SOC) 板、HVAC 系统、打印机、路由器、交换机、IP 摄像头、自助结账系统、RFID 资产追踪、标志阅读器、不断电系统和所有类型的工业设备。
Amensia:33 漏洞产生的广泛影响可按照安全缺陷的位置来解释,它们位于四个开源库中:uIP、FNET、picoTCP 和 Nut/Net。
过去20年来,设备厂商经常将其中一个库添加到设备固件中,以使产品支持当前使用最广泛的网络通信协议 TCP/IP。
由于这些协议向设备提供重要功能,因此研究人员表示如漏洞遭利用,可导致攻击者执行大量攻击活动,如:
远程代码执行,以控制目标设备。
拒绝服务攻击,以影响功能使用和业务操作。
信息泄漏,获取潜在的敏感信息。
DNS 缓存投毒攻击,将设备指向恶意网站。
然而,通过其中一个漏洞攻击设备取决于企业所使用的设备以及设备在网络中部署的位置。例如,从本质上来看,路由器可遭远程利用,因为它们通常和企业的外部接口连接。其它设备如传感器和工业设备可能首先要求攻击者获得对企业内网的访问权限。
研究人员表示,他们在今年年初开启的研究项目 “Project Memoria” 中发现了这些 Amensia:33 漏洞。受到 Treck TCP/IP 栈中被爆出 Ripple20 漏洞的启发,研究人员分析了其它7个 TCP/IP 栈的安全性,期望从中找到类似的危险漏洞。
Forescout 公司的研究团队表示,“执行分析时,我们结合使用自动化模糊测试(基于 libFuzzer 的白盒代码插装)、手动分析(使用 Joern 代码查询引擎以及一个预存在的漏洞语料库猎取变体)以及手动代码审计。“
研究团队指出,“我们在研究中未找到 IwIP、Uc/TCP-IP 和 CycloneTCP 栈中的任何漏洞。尽管这无法说明这些栈中不存在任何缺陷,但我们发现这三个栈中具有非常一致的边界检查而且一般并不依赖于shotgun 解析(我们发现的最常见的反模式之一)。”
但是虽然 Amnesia:33 漏洞易于发现和修复,但真正的工作才开始。就像 Ripple20 漏洞案例一样,设备厂商将需要把更新后的 TCP/IP 栈集成为产品的固件更新。
虽然在某些情况下,如智能手机或网络设备中,可以通过无线更新机制完成,但很多其它易受攻击的设备甚至无法更新该固件,意味着某些设备在生命周期中仍然易受攻击。在这些情况下,企业或者需要替换设备,或者需要部署应变措施,阻止 Amnesia:33 漏洞遭利用。
然而,Forescout 公司的研究人员指出,检测这些漏洞也是个艰巨的任务,主要原因是当今很多设备并没有提供软件物料清单,而企业甚至不清楚它们所运行的系统使用了易受攻击的四个 TCP/IP 栈之一。
换句话说,该智能设备生态系统仍然一团糟,而且在未来仍然可能是一种安全灾难。Forescout 公司指出,所有这些都归结为不良的编码实践,如缺乏基本的输入验证和 shotguan 解析,而这些是 Ripple20 和 Amnesia:33 漏洞都有的问题。
了解这些漏洞的更多情况,可参见:
https://www.forescout.com/company/resources/amnesia33-how-tcp-ip-stacks-breed-critical-vulnerabilities-in-iot-ot-and-it-devices/
为了免遭多数网络攻击,中小企业最应该保护哪三个 TCP 端口?
题图:Pixabay License
本文由奇安信代码卫士编译,不代表奇安信观点。转载请注明“转自奇安信代码卫士 https://codesafe.qianxin.com”。
奇安信代码卫士 (codesafe)
国内首个专注于软件开发安全的
产品线。