CVE-2026-43112Linux内核fs/smb/client组件存在越界读取漏洞(CVE-2026-43112)。当cifs_sanitize_prepath函数处理空字符串或仅包含分隔符的路径时,由于代码逻辑错误,在指针移动前尝试解引用,导致越界读取。该漏洞可能被利用于触发拒绝服务攻击或泄露内核内存信息,严重影响系统稳定性与安全性。
该漏洞位于Linux内核的SMB客户端文件系统(fs/smb/client)中。漏洞函数`cifs_sanitize_prepath`负责清理路径前缀。当传入的参数为空字符串或仅包含分隔符(如“/”)的字符串时,代码逻辑未能正确处理边界情况。具体而言,循环体在`cursor2`指针尚未移动或仍处于起始位置时,就尝试访问`*(cursor2 - 1)`位置的内存。由于此时`cursor2`可能指向缓冲区起始位置,`cursor2 - 1`将越界访问非法内存区域。利用该漏洞需要用户交互(UI:R),攻击者可通过构造特殊的SMB共享路径挂载请求触发此逻辑,导致内核崩溃(SEGV)或读取相邻内存数据。修复方案是在去除前导分隔符后增加检查,若无剩余内容则直接返回NULL。