CVE-2026-4438GNU C Library (glibc) 版本 2.34 至 2.43 中存在一个安全漏洞。当系统配置的 nsswitch.conf 指定使用库的 DNS 后端时,调用 gethostbyaddr 或 gethostbyaddr_r 函数可能会返回无效的 DNS 主机名。这种情况违反了 DNS 规范,可能导致应用程序接受并处理恶意构造的域名。该漏洞被标记为中危级别,攻击者无需认证即可在邻接网络环境下利用此漏洞,对系统的机密性和完整性造成低程度影响。
该漏洞源于 GNU C Library (glibc) 的 DNS 解析模块在处理反向 DNS 查询时的验证逻辑缺陷。当应用程序调用 gethostbyaddr 或 gethostbyaddr_r 函数尝试将 IP 地址解析为主机名时,如果系统的 nsswitch.conf 配置为使用 glibc 的 DNS 后端,攻击者可以通过控制恶意的 DNS 服务器响应来触发此漏洞。由于 glibc 在特定版本范围内未能严格验证返回的主机名是否符合 DNS 协议规范(如字符集限制、长度限制等),导致应用程序接收到无效或恶意构造的主机名。攻击向量为邻接网络(AV:A),意味着攻击者需要位于同一本地网络段或能够拦截/篡改本地网络流量。一旦利用成功,可能导致应用程序基于错误的主机名做出信任决策,从而引发信息泄露或完整性破坏。