CyberSecBulletin
CVE-2026-63909NVD status: Analyzed

Linux: Out-of-bounds Read

CVE-2026-63909 is a high-severity out-of-bounds read vulnerability in Linux, with a CVSS 3.1 base score of 8.1 out of 10. It can be exploited remotely over the network by an attacker with a low-privileged account, without any action from a user. The record lists versions 5500ba1d410aed1eded3eb04a76b10cfb4409334, f6324b4240cf0b26a84c33f68a1222d727ff4af2, 0fe08c5776a798f46df1fd74b331be26bdd644d6 as the first without the flaw, so updating Linux to one of those releases or later removes the exposure. There is no confirmed exploitation so far. EPSS estimates a 0.63% chance of exploitation within 30 days, higher than 51% of scored CVEs.

Next patch cycle

High severity with no evidence of exploitation so far.

What to do

  1. Update Linux to 5500ba1d410aed1eded3eb04a76b10cfb4409334 or f6324b4240cf0b26a84c33f68a1222d727ff4af2 or 0fe08c5776a798f46df1fd74b331be26bdd644d6 or d333af32e4451285e427f2d9c29de3a39f6f6d48, whichever matches your release line, or a later version.
  2. Update Linux Kernel to 6.6.143 or 6.12.93 or 6.18.35 or 7.0.12, whichever matches your release line, or a later version.

Affected products and versions

VendorProductAffected versionsFixed in
LinuxLinux282cbbb476b9f35793452bc461934af4c7eca169 up to, but not including, 5500ba1d410aed1eded3eb04a76b10cfb4409334; f20adc4ef7428bc485ee83fd1a592252fb87718b up to, but not including, f6324b4240cf0b26a84c33f68a1222d727ff4af2; 325d4ac11f526cb8964cff14548ccf02d8c756d8 up to, but not including, 0fe08c5776a798f46df1fd74b331be26bdd644d6; 95e5aa3c3261da8c95b27d7aecf8ee39b9f86a4c up to, but not including, d333af32e4451285e427f2d9c29de3a39f6f6d48; 90089584b2e25c4510b7b987387b4405f0673ece up to, but not including, 94215d55b09445993929f4fc966061d61de74929; 151b1799861fde38087c08f613abc2843ef597b0 up to, but not including, 4f7c131d2bdd7cd64b96f60d10be5ea72253f520; d07b26f39246a82399661936dd0c853983cfade7 up to, but not including, 0e60dafe97eca61721f3db456f97d97a80c6c8ae; 6.6.140 up to, but not including, 6.6.143; and 3 more ranges5500ba1d410aed1eded3eb04a76b10cfb4409334, f6324b4240cf0b26a84c33f68a1222d727ff4af2, 0fe08c5776a798f46df1fd74b331be26bdd644d6, d333af32e4451285e427f2d9c29de3a39f6f6d48, 94215d55b09445993929f4fc966061d61de74929, 4f7c131d2bdd7cd64b96f60d10be5ea72253f520
LinuxLinux Kernel6.6.140 up to, but not including, 6.6.143; 6.12.84 up to, but not including, 6.12.93; 6.18.25 up to, but not including, 6.18.35; 7.0.2 up to, but not including, 7.0.12; 7.16.6.143, 6.12.93, 6.18.35, 7.0.12

Version data comes from the organisation that assigned the CVE. Confirm against the vendor advisory before deciding you are unaffected.

How the severity score breaks down

Attack vector
NetworkCan be exploited remotely over a network, including the internet.
Attack complexity
LowNo special conditions are needed; the attack works reliably.
Privileges required
LowA basic user account is enough.
User interaction
NoneNo action by a victim is required.
Scope
UnchangedImpact stays within the vulnerable component.
Confidentiality
HighAll data handled by the component can be read.
Integrity
NoneNothing can be modified.
Availability
HighThe component can be taken down completely.

Vector: CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:H. Scored by CNA.

Official description

In the Linux kernel, the following vulnerability has been resolved: ksmbd: OOB read regression in smb_check_perm_dacl() ACE-walk loops Commit d07b26f39246 ("ksmbd: require minimum ACE size in smb_check_perm_dacl()") introduced a transposed bounds check: if (offsetof(struct smb_ace, sid) + aces_size < CIFS_SID_BASE_SIZE) Since offsetof(..sid) is 8 and CIFS_SID_BASE_SIZE is 8, this evaluates to `aces_size < 0`. Because `aces_size` is always non-negative, this check becomes dead code and never breaks the loop. Worse, that commit removed the old 4-byte guard, meaning the loop now reads `ace->size` (offset 2) even when `aces_size` is 0-3 bytes. This re-opens a 2-byte heap out-of-bounds (OOB) read past the pntsd allocation during subsequent SMB2_CREATE operations. Fix this by properly transposing the comparison to require at least 16 bytes (8-byte offset + 8-byte SID base), matching the correct form used in smb_inherit_dacl().

Source: the CVE record as published by its numbering authority, via NVD and CVE.org.

The underlying weakness: Out-of-bounds Read

The product reads data past the end, or before the beginning, of the intended buffer.

How developers prevent this class of flaw

  • Use a language that provides appropriate memory abstractions.

More Out-of-bounds Read vulnerabilities (CWE-125)

Timeline

  1. CVE record published.
  2. Record last changed materially (score, affected products, status or references).

References

Recent Out-of-bounds Read vulnerabilities

Spotted an error? Tell us.