CVE-2026-93282

ksmbd: fix maximum allowed access checks

State
Published
Severity
8.1 High
Published
Sep 24, 2026
Updated
Oct 30, 2026
Reserved
Sep 17, 2026

Read the record on cve.org

Description

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 STATUS_ACCESS_DENIED. 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 ACCESS_SYSTEM_SECURITY is denied, report STATUS_PRIVILEGE_NOT_HELD instead of the generic STATUS_ACCESS_DENIED. Access to the system ACL requires a security privilege that ksmbd does not grant.

For regular files, include FILE_EXECUTE in maximal access when the client requested GENERIC_EXECUTE and the DACL grants the complete file-read set. Keep a direct FILE_EXECUTE 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.maximum_allowed.maximum_allowed.

Scores

CVSSScoreVectorSource
3.18.1 HighCVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:NLinux

Weaknesses

The record names no weakness.

Affected Products

ProductVersions
LinuxLinux
  • e2f34481b24db2fd634b5edb0a5bd0e4d38cc6e9 to before faf0b894eedc7b2ebb36c48d04d412240dd0ea71Affected
  • e2f34481b24db2fd634b5edb0a5bd0e4d38cc6e9 to before 7c293e83d86cfd38124f51b27882ad631818bf48Affected
  • e2f34481b24db2fd634b5edb0a5bd0e4d38cc6e9 to before 37459edb69c094553026ee48c2cc2acc657f9f43Affected
  • e2f34481b24db2fd634b5edb0a5bd0e4d38cc6e9 to before 28289d880e6d11ae7ac77b81af3312453febf939Affected
  • e2f34481b24db2fd634b5edb0a5bd0e4d38cc6e9 to before 35d5c59fe6b1d9fe43fb14eb384f69ee1a120f9cAffected
  • e2f34481b24db2fd634b5edb0a5bd0e4d38cc6e9 to before cc2f133e80eb2c4a04bfa77a2f207749fe2f516aAffected
LinuxLinux
  • 5.15Affected
  • before 5.15Not affected
  • 6.1.191 through 6.1.*Not affected
  • 6.6.160 through 6.6.*Not affected
  • 6.12.114 through 6.12.*Not affected
  • 6.18.57 through 6.18.*Not affected
  • 7.2.6 through 7.2.*Not affected
  • 7.3 and laterNot affected

References

Every record here comes from the CVE Program’s CVE List. © 1999–2026 The MITRE Corporation. CVE is a registered trademark of The MITRE Corporation. The records are reproduced under the CVE Program terms of use.