{"id":"CVE-2026-89672","summary":"nfsd: gate nfs2 setacl by argp-\u003emask","details":"In the Linux kernel, the following vulnerability has been resolved:\n\nnfsd: gate nfs2 setacl by argp-\u003emask\n\nThe NFSACL v2 SETACL path shares the decoder convention used by its\nv3 sibling: nfsaclsvc_decode_setaclargs() fills in argp-\u003eacl_access\nonly when NFS_ACL is set in the request mask and argp-\u003eacl_default\nonly when NFS_DFACL is set, leaving the other pointer NULL because\nthe argument buffer is zeroed up to pc_argzero before decode.\n\nnfsacld_proc_setacl() then hands both pointers to set_posix_acl()\nunconditionally. set_posix_acl(idmap, dentry, type, NULL) is the VFS\n\"remove this ACL type\" operation, so an omitted arm is\nindistinguishable from an explicit request to delete that ACL. A\nSETACL carrying only NFS_ACL silently strips the directory's default\nACL; mask=0 strips both.\n\nThis is the same defect just fixed in nfsd3_proc_setacl(); apply the\nsame remedy. Gate each set_posix_acl() call on its mask bit and\ninitialize error to 0 so that a request with neither bit set leaves\nthe on-disk ACLs untouched and returns success. The out_drop_lock\npath and the unconditional posix_acl_release() in\nnfsaclsvc_release_setacl() already tolerate the skipped arms.","modified":"2026-09-13T03:47:20.231123037Z","published":"2026-09-11T19:45:57.414Z","database_specific":{"cna_assigner":"Linux","osv_generated_from":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/89xxx/CVE-2026-89672.json"},"references":[{"type":"WEB","url":"https://git.kernel.org/stable/c/37eea38e7898538f0ec5f1eb8b18d8646e4be41c"},{"type":"WEB","url":"https://git.kernel.org/stable/c/a3a7e20ed66d3f04d37883c398da8a113b430769"},{"type":"WEB","url":"https://git.kernel.org/stable/c/e41d173d9dc735cecb15ab7aa63ecab09338f81b"},{"type":"WEB","url":"https://git.kernel.org/stable/c/f951b22dbeec46f2e0fba81cb80d1b0c686b61eb"},{"type":"ADVISORY","url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/89xxx/CVE-2026-89672.json"},{"type":"ADVISORY","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-89672"},{"type":"PACKAGE","url":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git"}],"affected":[{"ranges":[{"type":"GIT","repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","events":[{"introduced":"a257cdd0e2179630d3201c32ba14d7fcb3c3a055"},{"fixed":"e41d173d9dc735cecb15ab7aa63ecab09338f81b"},{"fixed":"f951b22dbeec46f2e0fba81cb80d1b0c686b61eb"},{"fixed":"37eea38e7898538f0ec5f1eb8b18d8646e4be41c"},{"fixed":"a3a7e20ed66d3f04d37883c398da8a113b430769"}]}],"database_specific":{"source":"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-89672.json"}},{"package":{"name":"Kernel","ecosystem":"Linux"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"2.6.13"},{"fixed":"6.12.109"}]},{"type":"ECOSYSTEM","events":[{"introduced":"6.13.0"},{"fixed":"6.18.50"}]},{"type":"ECOSYSTEM","events":[{"introduced":"6.19.0"},{"fixed":"7.2.4"}]}],"database_specific":{"source":"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-89672.json"}}],"schema_version":"1.9.0"}