CVE-2026-89672: nfsd: gate nfs2 setacl by argp->mask

Published Sep 11, 2026
·
Updated

In the Linux kernel, the following vulnerability has been resolved:

nfsd: gate nfs2 setacl by argp->mask

The NFSACL v2 SETACL path shares the decoder convention used by its v3 sibling: nfsaclsvcdecodesetaclargs() fills in argp->aclaccess only when NFSACL is set in the request mask and argp->acldefault only when NFSDFACL is set, leaving the other pointer NULL because the argument buffer is zeroed up to pcargzero before decode.

nfsacldprocsetacl() then hands both pointers to setposixacl() unconditionally. setposixacl(idmap, dentry, type, NULL) is the VFS "remove this ACL type" operation, so an omitted arm is indistinguishable from an explicit request to delete that ACL. A SETACL carrying only NFSACL silently strips the directory's default ACL; mask=0 strips both.

This is the same defect just fixed in nfsd3procsetacl(); apply the same remedy. Gate each setposixacl() call on its mask bit and initialize error to 0 so that a request with neither bit set leaves the on-disk ACLs untouched and returns success. The outdroplock path and the unconditional posixaclrelease() in nfsaclsvcreleasesetacl() already tolerate the skipped arms.

Affected Software

1 affected component
Linux Linux kernel

Event History

Sep 11, 2026
CVE Published
via MITRE·07:45 PM
Data Sourced
via MITRE·07:45 PM
Description

Frequently Asked Questions

1

Who is exposed to this issue?

Systems using the Linux kernel NFS server ACL v2 SETACL path are exposed. The impact is on directory POSIX ACLs processed through NFSACL v2 requests.

2

What does an attacker need to do to trigger the unintended ACL removal?

An attacker needs to send an NFSACL v2 SETACL request with selected mask bits omitted. A request containing only NFS_ACL can remove a directory's default ACL, while a request with mask=0 can remove both ACL types.

3

How can I tell whether ACLs may already have been affected?

Inspect directory access and default POSIX ACLs on NFS server exports that accept NFSACL v2 SETACL requests. Directories whose default ACLs were unexpectedly removed, or whose access and default ACLs are both absent after such requests, may have been affected.

4

What is the effect of the resolved behavior?

SETACL operations are performed only for ACL types explicitly indicated by the request mask. A request with neither ACL mask bit set leaves on-disk ACLs unchanged and returns success.

Contact

SecAlerts Pty Ltd.
132 Wickham Terrace
Fortitude Valley,
QLD 4006, Australia
info@secalerts.co
By using SecAlerts services, you agree to our services end-user license agreement. This website is safeguarded by reCAPTCHA and governed by the Google Privacy Policy and Terms of Service. All names, logos, and brands of products are owned by their respective owners, and any usage of these names, logos, and brands for identification purposes only does not imply endorsement. If you possess any content that requires removal, please get in touch with us.
© 2026 SecAlerts Pty Ltd.
ABN: 70 645 966 203, ACN: 645 966 203