近日,Qualys的研究人员发现了一种新的Linux漏洞名为“Looney Tunables”,追踪编号为CVE-2023-4911,利用该漏洞,研究人员已经成功获得了Fedora、Ubuntu和Debian等主流发行版系统的完全root权限,而其他发行版也可能会受到该漏洞的影响。
GNU C库,也就是俗称的glibc,是GNU系统以及大多数运行Linux内核的系统中的通用C库,它提供了典型程序所需的系统调用和其他基本功能,例如open、malloc、printf、exit等。其中,glibc的动态加载器尤为重要,因为它负责在使用glibc的Linux系统上准备和执行程序。
而这个漏洞名字的由来,是因为glibc中引入的GLIBC_TUNABLES环境变量,这个环境变量使用户能够在运行时修改库的行为,从而无需重新编译应用程序或库。通过设置GLIBC_TUNABLES,用户可以调整各种性能和行为参数,然后在应用程序启动时应用这些参数,所以该环境变量是开发人员和系统管理员的必备工具。
但是动态加载程序在处理 GLIBC_TUNABLES 环境变量时存在缓冲区溢出漏洞,攻击者能够利用glibc的ld.so动态加载程序中的缓冲区溢出漏洞来获得root权限,这会对系统性能、可靠性和安全性产生重大影响,若是被攻击者获得root权限,可能会产生未经授权的数据访问、系统更改和潜在的数据盗窃等重大安全风险。
漏洞分析详情 来源:Qualys
由于大多数Linux内核都使用到了glibc,只有少部分如使用musl libc的Alpine Linux不受影响,大多数Linux系统都会受到此漏洞的影响。尤其是在Linux环境中运行的物联网设备,因为在自定义操作系统中广泛使用了Linux内核,它们特别容易受到该缺陷的利用,这也意味着智能工厂等嵌入式环境、无人机和机器人等联网设备以及一系列消费设备都面临着巨大的风险。
不过好消息是,研究人员早于9月4日就向Red Hat披露了该漏洞,并于9月19日向OpenWall开源安全项目发送了一份公告和补丁。该补丁随后于10月3日在各种Linux发行版上发布,包括Red Hat、Ubuntu、Upstream、Debian和Gentoo都发布了自己的更新。