近日,GNU C库(glibc)维护团队公开披露了两项高危安全漏洞,分别涉及堆破坏与信息泄露风险,对绝大多数Linux系统构成了潜在威胁。其中一项漏洞甚至可追溯到glibc 2.0版本,其存在时间已长达数十年。
尽管这两个漏洞可能引发堆破坏、绕过地址空间布局随机化(ASLR)等严重后果,但由于其利用条件极为苛刻,在实际攻击场景中的影响范围可能相对有限。
在披露的两个漏洞中,危害等级更高的是CVE-2026-0861,其通用漏洞评分系统(CVSS)分值达到8.4分。该漏洞源于glibc内存对齐函数(memalign、posix_memalign 和 aligned_alloc)中的整数溢出问题,影响范围覆盖了从 glibc 2.30 到 2.42 的版本。
攻击者如果能够强制应用程序传入特定的参数组合,就有可能利用此整数溢出漏洞触发堆破坏。然而,触发该漏洞的条件非常严格:攻击者需要同时控制内存分配的“尺寸”与“对齐”两个参数,并且尺寸参数需要接近 PTRDIFF_MAX 这一极大值。官方安全公告指出,这种参数调用属于“非常规使用模式”,因为在常规编程实践中,对齐参数通常是页面大小之类的固定值,而非可由用户自由控制的输入。
另一个漏洞 CVE-2026-0915 属于信息泄露缺陷。该漏洞自 glibc 2.0 版本起便已存在,影响范围一直延续到 2.42 版本,存续时间横跨数十年。漏洞存在于 getnetbyaddr 与 getnetbyaddr_r 这两个网络函数中。当系统配置了 DNS 后端,并且调用这两个函数查询“零值网络”(即 net == 0x0)时,函数会意外地将未经过滤的栈内存数据传递给 DNS 解析器。
这种栈内容泄露行为可能导致主机上的敏感信息外泄。虽然泄露的数据仅限于相邻的栈空间,但攻击者可以利用泄露的指针值,显著加速实现 ASLR绕过攻击。与上一个漏洞类似,此漏洞的利用门槛也很高。攻击者需要能够监听应用程序与 DNS 服务器之间的通信,才能捕获到泄露的数据,这使得攻击的复杂度处于较高水平。
目前,官方已建议系统管理员立即核查这些漏洞对自身所用Linux发行版的具体影响,并及时安装可用的安全补丁。

|