CVE-2026-44062Netatalk是一款开源的AppleTalk协议套件,广泛用于Linux与Unix系统的文件共享服务。在2.0.4至4.4.2版本中,其核心组件pull_charset_flags()函数存在严重的内存安全缺陷。由于该函数在处理字符集标志时未对输出长度进行严格的边界检查,导致缓冲区溢出风险。远程经过身份验证的攻击者可以通过发送特制的恶意数据包触发此漏洞。成功利用后,攻击者可在目标系统上执行任意代码,造成敏感信息泄露或系统瘫痪,严重影响业务连续性。
该漏洞的根本原因在于Netatalk解析AFP协议数据包时的逻辑错误。当服务端处理客户端发送的字符集协商请求时,会调用pull_charset_flags()函数。该函数假设输入数据长度在安全范围内,直接执行内存拷贝操作,未验证目标缓冲区大小,这直接导致了基于栈的缓冲区溢出。攻击者可构造包含特定跳转指令的超长字符集数据,覆盖堆栈上的返回地址或关键函数指针。由于CVSS向量显示需低权限认证,攻击者只需拥有合法账号即可发送恶意Payload。一旦控制流被劫持,攻击者即可注入Shellcode,绕过ASLR等保护机制,以服务进程权限执行系统命令。此外,不当的内存操作也可能直接导致守护进程崩溃,形成拒绝服务攻击。