CVE-2026-90153

ksmbd: bound smb_check_perm_dacl() ACE walks by DACL size

HIGH
8.1
CVSS Score
Published: September 17, 2026 at 04:06 PM UTC
Updated: October 19, 2026 at 09:19 AM UTC
1 product affected across 1 vendorLinux Kernel

Using Linux by Linux?

Get instant alerts when new vulnerabilities affect Linux - before attackers find them.

Real-time alertsTrack your software stackFree plan available
Severity
HIGH8.1
Exploit prediction
EPSS 0.5%

Description

In the Linux kernel, the following vulnerability has been resolved: ksmbd: bound smb_check_perm_dacl() ACE walks by DACL size smb_check_perm_dacl() validates that the DACL fits inside the NT security descriptor, but then bounds its two ACE walks by the remaining NTSD length (acl_size) rather than the DACL's declared size (pdacl_size). When pdacl->size is smaller than the trailing NTSD buffer, bytes after the declared DACL boundary - still inside the stored security descriptor - are parsed as ACEs during access checks. A crafted DACL can place an access-granting ACE beyond pdacl->size, and the current code accepts it during SMB2_CREATE access validation, while parse_dacl() and smb_inherit_dacl() stop at pdacl_size. Bound both ACE walks by pdacl_size to match the DACL boundary semantics used elsewhere in the server. Validation: - semantic KUnit harness shows the post-boundary ACE is selected before the fix and rejected (EACCES) after it - linux master (7.2-rc6), x86_64

Affected

Our own answer: ranges merged, affected separated from platform-only, with confidence and review flags.

5.15.625.18.185.19.26.06e8f4abf584253cbaa596ea4ad13110cf61cd4c98e33102309bd6839b2e2e158f93a7b378cb4655d8f0541186e9ad1b62accc9519cc2b7a7240272a7cb69d4d6f709f87c94afa28ae64c501576692171
Vendor states this is fixed in 79decd88dd3f0d42e7fb0689b1a7853bfa302459 (fixed)
Vendor states this is fixed in 8e4f75e979c1d9a51b0a48ac33d0cfd5f039ec67 (fixed)
Vendor states this is fixed in a2051ffe452afad52f580b85a3fd8851933b1e7c (fixed)
Vendor states this is fixed in a29f57a14c939586d84d7fd6a029bd1fd170098f (fixed)
Vendor states this is fixed in a4a307d149327dad5fb25187e1b03cebd1b04de6 (fixed)
Affected range stops below 5.16, so it looks safe — our inference, not a vendor statement
Affected range stops below 5.19, so it looks safe — our inference, not a vendor statement
Affected range stops below 5.20, so it looks safe — our inference, not a vendor statement
Vendor states this is fixed in 6.0 (unaffected)
Vendor states this is fixed in 6.12.110 (unaffected)
Vendor states this is fixed in 6.18.52 (unaffected)
Vendor states this is fixed in 6.6.157 (unaffected)
Vendor states this is fixed in 7.2.6 (unaffected)
Vendor states this is fixed in 7.3 (unaffected)
Vendor states this is fixed in 7.3-rc1 (unaffected)

Remediation

No guide yet

No remediation guidance has been written for this CVE yet, and no fixed version or vendor advisory is recorded against it.

CVSS

8.1HIGHLinux
Vector?

Quick Info

StatusRECEIVED

Get alerted

Stop reading CVE feeds looking for your own stack

Track the products you run and VulnTracker tells you when a new CVE affects them — with what is known about fixing it, and nothing about the rest.

Free plan, no card