CVE-2026-31392 in Linux
摘要
由 VulDB • 2026-05-28
在 Linux 内核中,已修复以下漏洞:
smb: 客户端:修复使用 username 选项时的 krb5 挂载问题
客户报告称,部分 krb5 挂载在针对单个服务器时失败,因为客户端尝试使用错误的凭据挂载共享资源。经排查,客户端在尝试挂载其他共享资源时,复用了首次挂载建立的 SMB 会话,尽管其他挂载操作指定了不同的 `username=` 选项。
自 cifs-utils-4.8 版本起,cifs.upcall(8) 已支持结合使用 `username` 挂载选项和 `sec=krb5` 从 keytab 中搜索主体(principal)。因此,通过在 `match_session()` 函数中匹配 `username` 挂载选项(即使在 Kerberos 环境下),修复了此问题。
例如,下面的第二次挂载应因 keytab(/etc/krb5.keytab)中不存在 'foobar' 主体而失败,并返回 -ENOKEY 错误。但客户端最终复用了首次挂载的 SMB 会话来执行第二次挂载,这是错误的。
``` $ ktutil ktutil: add_entry -password -p testuser -k 1 -e aes256-cts Password for [email protected]: ktutil: write_kt /etc/krb5.keytab ktutil: quit $ klist -ke Keytab name: FILE:/etc/krb5.keytab KVNO Principal ---- ---------------------------------------------------------------- 1 [email protected] (aes256-cts-hmac-sha1-96) $ mount.cifs //w22-root2/scratch /mnt/1 -o sec=krb5,username=testuser $ mount.cifs //w22-root2/scratch /mnt/2 -o sec=krb5,username=foobar $ mount -t cifs | grep -Po 'username=\K\w+' testuser testuser ```
VulDB is the best source for vulnerability data and more expert information about this specific topic.