smb: client: fix OOB reads parsing symlink error response
Key facts
- Attack vector
- Network
- Privileges required
- None
- User interaction
- Required
- Attack complexity
- Low
- Impact type
- —
- Confidentiality · integrity · availability
- High · None · High
- Fix status
- Partial Red Hat: 34 fixed, 1 without a fix
Attack profile from CVSS 3.1 · CNA. Fix status from CNA and Red Hat.
Summary
In the Linux kernel, the following vulnerability has been resolved: smb: client: fix OOB reads parsing symlink error response When a CREATE returns STATUS_STOPPED_ON_SYMLINK, smb2_check_message() returns success without any length validation, leaving the symlink parsers as the only defense against an untrusted server. symlink_data() walks SMB 3.1.1 error contexts with the loop test "p < end", but reads p->ErrorId at offset 4 and p->ErrorDataLength at offset 0. When the server-controlled ErrorDataLength advances p to within 1-7 bytes of end, the next iteration will read past it. When the matching context is found, sym->SymLinkErrorTag is read at offset 4 from p->ErrorContextData with no check that the symlink header itself fits. smb2_parse_symlink_response() then bounds-checks the substitute name using SMB2_SYMLINK_STRUCT_SIZE as the offset of PathBuffer from iov_base. That value is computed as sizeof(smb2_err_rsp) + sizeof(smb2_symlink_err_rsp), which is correct only when ErrorContextCount == 0. With at least one error context the symlink data sits 8 bytes deeper, and each skipped non-matching context shifts it further by 8 + ALIGN(ErrorDataLength, 8). The check is too short, allowing the substitute name read to run past iov_len. The out-of-bound heap bytes are UTF-16-decoded into the symlink target and returned to userspace via readlink(2). Fix this all up by making the loops test require the full context header to fit, rejecting sym if its header runs past end, and bound the substitute name against the actual position of sym->PathBuffer rather than a fixed offset. Because sub_offs and sub_len are 16bits, the pointer math will not overflow here with the new greater-than.
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- None
- Automatable
- No
- Technical impact
- Partial
The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.
Affected products
| Vendor | Product | Affected versions | Fixed in | Status | Source |
|---|---|---|---|---|---|
| Linux | Linux | 6.0.16 to before 6.1 | 6.1 | Patch available | CNA |
| Linux | Linux | 6.1 and later | 6.1.175, 6.6.141, 6.12.91, 6.18.24, 6.19.14, 7.0.1, 7.1 | Patch available | CNA |
- Linux VendorLinux Affected 6.0.16 to before 6.1 Fixed in 6.1 Patch available CNA
- Linux VendorLinux Affected 6.1 and later Fixed in 6.1.175, 6.6.141, 6.12.91, 6.18.24, 6.19.14, 7.0.1, 7.1 Patch available CNA
CPE configurations NVD · 1
| CPE | Versions | Role | Vendor |
|---|---|---|---|
| cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 6.1 to before 6.18.24; 6.19 to before 6.19.14; 7.0 to before 7.0.1 | Vulnerable | Linux |
- cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* Versions 6.1 to before 6.18.24; 6.19 to before 6.19.14; 7.0 to before 7.0.1 Vulnerable ·Linux
Remediation
- Fix · CNA Linux (Linux) Fixed in 6.1
- Fix · CNA Linux (Linux) Fixed in 6.1.175, 6.6.141, 6.12.91, 6.18.24, 6.19.14, 7.0.1, 7.1
Red Hat 10 advisories
- RHSA-2026:77218 Released 2026-10-07 · Red Hat rating Importantkernel security update
- Red Hat Enterprise Linux AppStream E4S (v.9.4) kernel-64k-debug-devel-5.14.0-427.154.1.el9_4, kernel-64k-debug-devel-matched-5.14.0-427.154.1.el9_4, kernel-64k-devel-5.14.0-427.154.1.el9_4 +11
- Red Hat Enterprise Linux BaseOS E4S (v.9.4) bpftool-7.3.0-427.154.1.el9_4, kernel-5.14.0-427.154.1.el9_4, kernel-64k-5.14.0-427.154.1.el9_4 +29
- Red Hat Enterprise Linux Real Time E4S (v.9.4) kernel-rt-5.14.0-427.154.1.el9_4, kernel-rt-core-5.14.0-427.154.1.el9_4, kernel-rt-debug-5.14.0-427.154.1.el9_4 +9
- Red Hat Enterprise Linux Real Time for NFV E4S (v.9.4) kernel-rt-5.14.0-427.154.1.el9_4, kernel-rt-core-5.14.0-427.154.1.el9_4, kernel-rt-debug-5.14.0-427.154.1.el9_4 +11
- RHSA-2026:52764 Released 2026-08-10 · Red Hat rating Importantkernel security, bug fix, and enhancement update
- Red Hat Enterprise Linux AppStream EUS (v. 10.0) kernel-64k-debug-devel-6.12.0-55.95.1.el10_0, kernel-64k-debug-devel-matched-6.12.0-55.95.1.el10_0, kernel-64k-devel-6.12.0-55.95.1.el10_0 +12
- Red Hat Enterprise Linux BaseOS EUS (v. 10.0) kernel-6.12.0-55.95.1.el10_0, kernel-64k-6.12.0-55.95.1.el10_0, kernel-64k-core-6.12.0-55.95.1.el10_0 +28
- Red Hat Enterprise Linux CodeReady Linux Builder EUS (v. 10.0) kernel-tools-libs-devel-6.12.0-55.95.1.el10_0, libperf-6.12.0-55.95.1.el10_0
- Red Hat Enterprise Linux Real Time EUS (v. 10.0) kernel-rt-6.12.0-55.95.1.el10_0, kernel-rt-64k-6.12.0-55.95.1.el10_0, kernel-rt-64k-core-6.12.0-55.95.1.el10_0 +21
- Red Hat Enterprise Linux Real Time for NFV EUS (v. 10.0) kernel-rt-6.12.0-55.95.1.el10_0, kernel-rt-core-6.12.0-55.95.1.el10_0, kernel-rt-debug-6.12.0-55.95.1.el10_0 +11
- RHSA-2026:47633 Released 2026-07-30 · Red Hat rating Importantkernel security, bug fix, and enhancement update
- Red Hat Enterprise Linux BaseOS AUS (v.8.4) bpftool-4.18.0-305.199.1.el8_4, kernel-4.18.0-305.199.1.el8_4, kernel-abi-stablelists-4.18.0-305.199.1.el8_4 +14
- Red Hat Enterprise Linux BaseOS EUS EXTENSION (v.8.4) bpftool-4.18.0-305.199.1.el8_4, kernel-4.18.0-305.199.1.el8_4, kernel-abi-stablelists-4.18.0-305.199.1.el8_4 +14
Show 7 more Red Hat advisories
- RHSA-2026:44385 Released 2026-07-23 · Red Hat rating Importantkernel security, bug fix, and enhancement update
- Red Hat CodeReady Linux Builder EUS (v.9.6) kernel-tools-libs-devel-5.14.0-570.129.1.el9_6, libperf-5.14.0-570.129.1.el9_6
- Red Hat Enterprise Linux AppStream EUS (v.9.6) kernel-64k-debug-devel-5.14.0-570.129.1.el9_6, kernel-64k-debug-devel-matched-5.14.0-570.129.1.el9_6, kernel-64k-devel-5.14.0-570.129.1.el9_6 +12
- Red Hat Enterprise Linux BaseOS EUS (v.9.6) kernel-5.14.0-570.129.1.el9_6, kernel-64k-5.14.0-570.129.1.el9_6, kernel-64k-core-5.14.0-570.129.1.el9_6 +28
- Red Hat Enterprise Linux Real Time EUS (v.9.6) kernel-rt-5.14.0-570.129.1.el9_6, kernel-rt-64k-5.14.0-570.129.1.el9_6, kernel-rt-64k-core-5.14.0-570.129.1.el9_6 +21
- Red Hat Enterprise Linux Real Time for NFV EUS (v.9.6) kernel-rt-5.14.0-570.129.1.el9_6, kernel-rt-core-5.14.0-570.129.1.el9_6, kernel-rt-debug-5.14.0-570.129.1.el9_6 +11
- RHSA-2026:40760 Released 2026-07-16 · Red Hat rating Importantkernel security update
- Red Hat Enterprise Linux BaseOS E4S (v.8.8) bpftool-4.18.0-477.152.1.el8_8, kernel-4.18.0-477.152.1.el8_8, kernel-abi-stablelists-4.18.0-477.152.1.el8_8 +14
- Red Hat Enterprise Linux BaseOS TUS (v.8.8) bpftool-4.18.0-477.152.1.el8_8, kernel-4.18.0-477.152.1.el8_8, kernel-abi-stablelists-4.18.0-477.152.1.el8_8 +14
- RHSA-2026:40068 Released 2026-07-15 · Red Hat rating Importantkernel security update
- Red Hat Enterprise Linux BaseOS AUS (v.8.6) bpftool-4.18.0-372.201.1.el8_6, kernel-4.18.0-372.201.1.el8_6, kernel-abi-stablelists-4.18.0-372.201.1.el8_6 +14
- Red Hat Enterprise Linux BaseOS EUS EXTENSION (v.8.6) bpftool-4.18.0-372.201.1.el8_6, kernel-4.18.0-372.201.1.el8_6, kernel-abi-stablelists-4.18.0-372.201.1.el8_6 +14
- RHSA-2026:25121 Released 2026-06-10 · Red Hat rating Criticalkernel security update
- Red Hat Enterprise Linux BaseOS (v. 8) bpftool-4.18.0-553.132.1.el8_10, kernel-4.18.0-553.132.1.el8_10, kernel-abi-stablelists-4.18.0-553.132.1.el8_10 +19
- Red Hat Enterprise Linux CRB (v. 8) kernel-tools-libs-devel-4.18.0-553.132.1.el8_10
- RHSA-2026:25120 Released 2026-06-10 · Red Hat rating Criticalkernel-rt security update
- Red Hat Enterprise Linux NFV (v. 8) kernel-rt-4.18.0-553.132.1.rt7.473.el8_10, kernel-rt-core-4.18.0-553.132.1.rt7.473.el8_10, kernel-rt-debug-4.18.0-553.132.1.rt7.473.el8_10 +9
- Red Hat Enterprise Linux RT (v. 8) kernel-rt-4.18.0-553.132.1.rt7.473.el8_10, kernel-rt-core-4.18.0-553.132.1.rt7.473.el8_10, kernel-rt-debug-4.18.0-553.132.1.rt7.473.el8_10 +7
- RHSA-2026:24381 Released 2026-06-08 · Red Hat rating Importantkernel security update
- Red Hat Enterprise Linux AppStream (v. 9) kernel-64k-debug-devel-5.14.0-687.13.1.el9_8, kernel-64k-debug-devel-matched-5.14.0-687.13.1.el9_8, kernel-64k-devel-5.14.0-687.13.1.el9_8 +12
- Red Hat Enterprise Linux BaseOS (v. 9) kernel-5.14.0-687.13.1.el9_8, kernel-64k-5.14.0-687.13.1.el9_8, kernel-64k-core-5.14.0-687.13.1.el9_8 +28
- Red Hat Enterprise Linux CodeReady Linux Builder (v. 9) kernel-tools-libs-devel-5.14.0-687.13.1.el9_8, libperf-5.14.0-687.13.1.el9_8
- Red Hat Enterprise Linux Real Time (v. 9) kernel-rt-5.14.0-687.13.1.el9_8, kernel-rt-64k-5.14.0-687.13.1.el9_8, kernel-rt-64k-core-5.14.0-687.13.1.el9_8 +21
- Red Hat Enterprise Linux Real Time for NFV (v. 9) kernel-rt-5.14.0-687.13.1.el9_8, kernel-rt-core-5.14.0-687.13.1.el9_8, kernel-rt-debug-5.14.0-687.13.1.el9_8 +9
- RHSA-2026:23329 Released 2026-06-04 · Red Hat rating Importantkernel security update
- Red Hat Enterprise Linux AppStream (v. 10) kernel-64k-debug-devel-6.12.0-211.20.1.el10_2, kernel-64k-debug-devel-matched-6.12.0-211.20.1.el10_2, kernel-64k-devel-6.12.0-211.20.1.el10_2 +12
- Red Hat Enterprise Linux BaseOS (v. 10) kernel-6.12.0-211.20.1.el10_2, kernel-64k-6.12.0-211.20.1.el10_2, kernel-64k-core-6.12.0-211.20.1.el10_2 +29
- Red Hat Enterprise Linux CodeReady Linux Builder (v. 10) kernel-tools-libs-devel-6.12.0-211.20.1.el10_2, libperf-6.12.0-211.20.1.el10_2
- Red Hat Enterprise Linux Real Time (v. 10) kernel-rt-6.12.0-211.20.1.el10_2, kernel-rt-64k-6.12.0-211.20.1.el10_2, kernel-rt-64k-core-6.12.0-211.20.1.el10_2 +21
- Red Hat Enterprise Linux Real Time for NFV (v. 10) kernel-rt-6.12.0-211.20.1.el10_2, kernel-rt-core-6.12.0-211.20.1.el10_2, kernel-rt-debug-6.12.0-211.20.1.el10_2 +9
Vendor assessments
Red Hat
Red Hat rating: Moderate. Red Hat's page for this CVE →
| Product | Status | Plan or fix |
|---|---|---|
| Red Hat Enterprise Linux 9 | Affected | No fix yet |
| Red Hat CodeReady Linux Builder EUS (v.9.6) | Fixed | RHSA-2026:44385 |
| Red Hat Enterprise Linux AppStream (v. 10) | Fixed | RHSA-2026:23329 |
| Red Hat Enterprise Linux AppStream (v. 9) | Fixed | RHSA-2026:24381 |
| Red Hat Enterprise Linux AppStream E4S (v.9.4) | Fixed | RHSA-2026:77218 |
| Red Hat Enterprise Linux AppStream EUS (v. 10.0) | Fixed | RHSA-2026:52764 |
| Red Hat Enterprise Linux AppStream EUS (v.9.6) | Fixed | RHSA-2026:44385 |
| Red Hat Enterprise Linux BaseOS (v. 10) | Fixed | RHSA-2026:23329 |
| Red Hat Enterprise Linux BaseOS (v. 8) | Fixed | RHSA-2026:25121 |
| Red Hat Enterprise Linux BaseOS (v. 9) | Fixed | RHSA-2026:24381 |
| Red Hat Enterprise Linux BaseOS AUS (v.8.4) | Fixed | RHSA-2026:47633 |
| Red Hat Enterprise Linux BaseOS AUS (v.8.6) | Fixed | RHSA-2026:40068 |
| Red Hat Enterprise Linux BaseOS E4S (v.8.8) | Fixed | RHSA-2026:40760 |
| Red Hat Enterprise Linux BaseOS E4S (v.9.4) | Fixed | RHSA-2026:77218 |
| Red Hat Enterprise Linux BaseOS EUS (v. 10.0) | Fixed | RHSA-2026:52764 |
| Red Hat Enterprise Linux BaseOS EUS (v.9.6) | Fixed | RHSA-2026:44385 |
| Red Hat Enterprise Linux BaseOS EUS EXTENSION (v.8.4) | Fixed | RHSA-2026:47633 |
| Red Hat Enterprise Linux BaseOS EUS EXTENSION (v.8.6) | Fixed | RHSA-2026:40068 |
| Red Hat Enterprise Linux BaseOS TUS (v.8.8) | Fixed | RHSA-2026:40760 |
| Red Hat Enterprise Linux CRB (v. 8) | Fixed | RHSA-2026:25121 |
| Red Hat Enterprise Linux CodeReady Linux Builder (v. 10) | Fixed | RHSA-2026:23329 |
| Red Hat Enterprise Linux CodeReady Linux Builder (v. 9) | Fixed | RHSA-2026:24381 |
| Red Hat Enterprise Linux CodeReady Linux Builder EUS (v. 10.0) | Fixed | RHSA-2026:52764 |
| Red Hat Enterprise Linux NFV (v. 8) | Fixed | RHSA-2026:25120 |
| Red Hat Enterprise Linux RT (v. 8) | Fixed | RHSA-2026:25120 |
| Red Hat Enterprise Linux Real Time (v. 10) | Fixed | RHSA-2026:23329 |
| Red Hat Enterprise Linux Real Time (v. 9) | Fixed | RHSA-2026:24381 |
| Red Hat Enterprise Linux Real Time E4S (v.9.4) | Fixed | RHSA-2026:77218 |
| Red Hat Enterprise Linux Real Time EUS (v. 10.0) | Fixed | RHSA-2026:52764 |
| Red Hat Enterprise Linux Real Time EUS (v.9.6) | Fixed | RHSA-2026:44385 |
| Red Hat Enterprise Linux Real Time for NFV (v. 10) | Fixed | RHSA-2026:23329 |
| Red Hat Enterprise Linux Real Time for NFV (v. 9) | Fixed | RHSA-2026:24381 |
| Red Hat Enterprise Linux Real Time for NFV E4S (v.9.4) | Fixed | RHSA-2026:77218 |
| Red Hat Enterprise Linux Real Time for NFV EUS (v. 10.0) | Fixed | RHSA-2026:52764 |
| Red Hat Enterprise Linux Real Time for NFV EUS (v.9.6) | Fixed | RHSA-2026:44385 |
Not affected: 2 products
- Red Hat Enterprise Linux 6
- Red Hat Enterprise Linux 7
Timeline
- 2026-10-02 Threatist record created from CVE-2026-31613
- 2026-10-03 Alias added: GHSA-3w37-m4pg-q585
- 2026-10-07 Fix available: RHSA-2026:77218 · Red Hat
- 2026-10-07 Fix available: Red Hat Enterprise Linux AppStream E4S (v.9.4), Red Hat Enterprise Linux BaseOS E4S (v.9.4), Red Hat Enterprise Linux Real Time E4S (v.9.4) +1 · Red Hat
- 2026-10-16 CISA SSVC decision points changed
- 2026-10-19 Weakness changed · CISA ADP
References
Patch 4
More Linux Kernel vulnerabilities
- TI-2025-26358 tls: fix handling of zero-length records on the rx_list KEVCVSS 3.1CRITICAL 9.8
- TI-2026-38352 netfilter: bridge: make ebt_snat ARP rewrite writable KEVCVSS 3.1HIGH 8.8
- TI-2013-05264 The (1) get_user and (2) put_user API functions in the Linux kernel before 3.5.5 on the… KEVCVSS 3.1HIGH 8.8
- TI-2022-00125 Integer overflow in kernel KEVCVSS 3.1HIGH 8.4
- TI-2013-01864 The perf_swevent_init function in kernel/events/core.c in the Linux kernel before 3.8.9… KEVCVSS 3.1HIGH 8.4
- TI-2021-05514 Heap Out-Of-Bounds Write in Netfilter IP6T_SO_SET_REPLACE KEVCVSS 3.1HIGH 8.3
Sources
- CVE-2026-31613 · CVE Program
- CVE-2026-31613 · NVD
- FIRST EPSS
- GHSA-3w37-m4pg-q585 · GitHub Advisory Database · CC BY 4.0
- CVE-2026-31613 · Red Hat security data · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences