6月1日,安全研究员Asim Manizada公开披露了一个潜伏已久的Linux内核高危漏洞——CIFSwitch。该漏洞的影响范围横跨19年之久,令人高度警惕。
漏洞根源在于Linux内核的CIFS模块与用户空间辅助工具cifs-utils之间的交互机制。简而言之,攻击者能够伪造密钥描述,进而触发一个拥有Root权限的辅助程序,并执行恶意代码实现权限提升。这不禁让人联想到“内鬼难防”。
CIFSwitch漏洞的根本原因在于:Linux内核中的“cifs.spnego”密钥类型,完全没有对密钥描述的合法性来源进行验证。当系统通过request_key()函数发起调用时,内核默认接受来自非内核来源的描述。这为攻击者留下了可乘之机——他们可以向系统提交伪造的描述,强制具有Root权限的辅助工具在攻击者指定的命名空间中执行,随后利用NSS模块加载恶意代码,逐步获得最高权限。
虽然该漏洞主要针对Linux内核6.14及以上版本,但棘手的是,近期漏洞修复的向后移植(Backport)机制,使大量旧版本也面临风险。受影响的系统最早可追溯至2007年,换言之,过去19年间构建的Linux内核,只要未安装特定补丁,均存在被利用的可能。
当然,并非所有Linux发行版都岌岌可危。Ubuntu 26.04、Fedora 40及以上版本、CentOS Stream 10以及openSUSE Leap 16,因其默认安全策略足够严格,能够有效抵御此类攻击手段,目前不受CIFSwitch漏洞影响。如果您正在使用这些版本,暂时可以稍感安心。
值得一提的是,近期Linux系统接连曝出Dirty Frag、Fragnesia等多个漏洞。这些安全事件反复提醒我们,在内核处理与权限管控的复杂性方面,Linux系统依然存在深层次隐患。外表看似固若金汤,内部实则暗流涌动。
好消息是,修复补丁已于5月底正式发布,各大Linux发行版正在加紧测试并推送更新。该补丁非常精简,核心改动在于增加了一个检查机制,直接拒绝任何来自用户空间伪造的cifs.spnego密钥描述。简而言之,就是将那道虚掩的门彻底锁死。
作为运维人员或普通用户,您可以通过各发行版的包管理器升级到最新内核版本,然后重启系统完成修复:RHEL/Rocky/AlmaLinux执行:sudo dnf update kernel Ubuntu/Debian/Mint执行:sudo apt update && sudo apt upgrade

