CVE-2026-31705: ksmbd: fix out-of-bounds write in smb2_get_ea() EA alignment

Published May 1, 2026
·
Updated

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

ksmbd: fix out-of-bounds write in smb2getea() EA alignment

smb2getea() applies 4-byte alignment padding via memset() after writing each EA entry. The bounds check on buffreelen is performed before the value memcpy, but the alignment memset fires unconditionally afterward with no check on remaining space.

When the EA value exactly fills the remaining buffer (buffreelen == 0 after value subtraction), the alignment memset writes 1-3 NUL bytes past the buffreelen boundary. In compound requests where the response buffer is shared across commands, the first command (e.g., READ) can consume most of the buffer, leaving a tight remainder for the QUERYINFO EA response. The alignment memset then overwrites past the physical kvmalloc allocation into adjacent kernel heap memory.

Add a bounds check before the alignment memset to ensure buffreelen can accommodate the padding bytes.

This is the same bug pattern fixed by commit beef2634f81f ("ksmbd: fix potencial OOB in getfileallinfo() for compound requests") and commit fda9522ed6af ("ksmbd: fix OOB write in QUERYINFO for compound requests"), both of which added bounds checks before unconditional writes in QUERYINFO response handlers.

Affected Software

8 affected componentsFixes available
Linux Linux kernel (ksmbd)
Microsoft azl3 kernel 6.6.134.1-2
Linux Linux kernel>=5.15.145<5.16
Linux Linux kernel>=6.1.71<6.2
Linux Linux kernel>=6.6<6.6.136
Linux Linux kernel>=6.7<6.12.84
Linux Linux kernel>=6.13<6.18.25
Linux Linux kernel>=6.19<7.0.2

Remediation

Recommended actions to resolve this vulnerability, in priority order.

  1. Upgrade

    Upgrade Linux kernel to a version that resolves this vulnerability.

    Patch fda9522ed6af
  2. Configuration

    Apply the fix from commit fda9522ed6af: in smb2_get_ea(), add a bounds check on buf_free_len before the unconditional 4-byte alignment memset so the padding NUL bytes are not written past the buf_free_len boundary.

    ksmbd (smb2_get_ea() EA handling) Add bounds check on buf_free_len before alignment memset = Perform a remaining-space check before calling/performing the alignment memset padding write

Event History

May 1, 2026
CVE Published
via MITRE·01:56 PM
Data Sourced
via MITRE·01:56 PM
DescriptionSeverity
Data Sourced
via NVD·02:16 PM
RemedyDescriptionSeverityWeaknessAffected Software
May 2, 2026
Data Sourced
via Microsoft·08:04 AM
DescriptionSeverityWeakness
Data Sourced
via Microsoft·08:04 AM
Affected Software
Updated
via Microsoft·08:04 AM
DescriptionSeverity
Free Weekly Intel

Don't miss critical vulnerabilities

Join thousands of security professionals who receive our weekly digest of trending CVEs, zero-days, and exploited vulnerabilities.

No spam. Unsubscribe anytime.

Frequently Asked Questions

1

What is the severity of CVE-2026-31705?

CVE-2026-31705 has been classified as a high-severity vulnerability due to the potential for out-of-bounds writes.

2

How do I fix CVE-2026-31705?

To mitigate CVE-2026-31705, update your Linux kernel to the latest version which contains the patch addressing this vulnerability.

3

Which software is affected by CVE-2026-31705?

CVE-2026-31705 affects the Linux kernel specifically in the ksmbd subsystem handling SMB2 file sharing.

4

What problem does CVE-2026-31705 address?

CVE-2026-31705 addresses an out-of-bounds write issue in the smb2_get_ea() function related to EA alignment.

5

Is CVE-2026-31705 related to data leaks?

CVE-2026-31705 does not directly mention data leaks, but out-of-bounds writes can potentially lead to data corruption or exposure.

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