CVE-2026-93282: ksmbd: fix maximum allowed access checks

Published Sep 24, 2026
·
Updated

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

ksmbd: fix maximum allowed access checks

The DACL permission check looks for an ACE matching the current user and falls back to the Everyone ACE. It does not consider an Authenticated Users ACE, even though an authenticated session is a member of that well-known group.

As a result, opening a file whose access is granted through S-1-5-11 can incorrectly fail with STATUSACCESSDENIED. Treat an Authenticated Users ACE as a fallback entry alongside Everyone.

The maximal access calculation also combines access masks from every ACE, regardless of whether its SID applies to the current user. This can grant rights belonging to an unrelated principal. Process only ACEs applying to the user, Everyone, or Authenticated Users, and accumulate allowed and denied masks in ACL order. Preserve explicitly requested access bits so they are validated against the resulting maximal mask.

When ACCESSSYSTEMSECURITY is denied, report STATUSPRIVILEGENOTHELD instead of the generic STATUSACCESSDENIED. Access to the system ACL requires a security privilege that ksmbd does not grant.

For regular files, include FILEEXECUTE in maximal access when the client requested GENERICEXECUTE and the DACL grants the complete file-read set. Keep a direct FILEEXECUTE request subject to the explicit DACL bit. This matches the POSIX file ACL mapping without broadening specific execute requests.

Do not replace rights from an applicable NT ACE with a POSIX ACL entry. The POSIX ACL is only a fallback when no user, Everyone, or Authenticated Users ACE applies; otherwise it can incorrectly broaden the stored DACL.

This fixes smb2.maximumallowed.maximumallowed.

Affected Software

1 affected component
Linux Linux kernel (ksmbd)

Event History

Sep 24, 2026
CVE Published
via MITRE·03:52 PM
Data Sourced
via MITRE·03:52 PM
Description
Data Sourced
via NVD·04:17 PM
Description

Frequently Asked Questions

1

Which deployments are affected by the incorrect access checks?

The issue applies to Linux kernel deployments using ksmbd and serving files with DACLs. It affects ACLs that grant access through the Authenticated Users SID (S-1-5-11) and maximal-access calculations involving ACEs for principals unrelated to the current user.

2

What access would a user need for the problem to matter?

The described checks operate on the current SMB user session. An authenticated session is considered a member of Authenticated Users, but the vulnerable logic could either deny access that was granted through that group or include rights from ACEs that do not apply to that user.

3

Are there observable signs of the issue?

A user granted access only through an Authenticated Users ACE can receive STATUS_ACCESS_DENIED when opening a file. Maximal-access results may also contain permissions belonging to unrelated ACL principals, while denied ACCESS_SYSTEM_SECURITY requests are reported as STATUS_ACCESS_DENIED rather than STATUS_PRIVILEGE_NOT_HELD.

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