# CVE-2026-68388: smb/client: handle overlapping allocated ranges in fallocate

> A flaw in the Linux kernel SMB client allows skipping zero-filling of holes during fallocate, potentially causing write failures and out-of-bounds reads.

- **Severity:** Critical 9.8 (`CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H`)
- **Exploited in the wild:** Not known
- **Login needed:** Not needed
- **Attackable:** Over the internet
- **Victim action needed:** Not needed
- **Fix available:** Yes
- **Published:** 10 Aug 2026
- **Updated:** 19 Oct 2026
- **Also known as:** BELL-CVE-2026-68388, DEBIAN-CVE-2026-68388, GHSA-h6fv-x4pg-r56c, UBUNTU-CVE-2026-68388

## What is CVE-2026-68388?

CVE-2026-68388 is a critical memory corruption vulnerability in Linux, published on 10 Aug 2026. An attacker can exploit it over the internet without logging in, with no action from the victim.

### Official description

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

smb/client: handle overlapping allocated ranges in fallocate

smb3_simple_fallocate_range() can skip holes when an allocated range
returned by the server starts before the current fallocate offset. The
skipped hole is not zero-filled, but fallocate still returns success. A
later write to that hole may therefore fail with ENOSPC.

The function queries allocated ranges so that it can preserve existing
contents and write zeroes only into holes. However, the server may return
a range that starts before the current fallocate offset.

For example, assume the fallocate request is [100, 400) and the only
allocated range returned by the server is [0, 200):

        Request:      [100, 400)
        Server range: [  0, 200)  allocated

        Correct:
        [100, 200)    allocated data, skip
        [200, 400)    hole, zero-fill

        Current:
        [100, 300)    skipped
        [300, 400)    zero-filled afterwards

The current code adds the full server range length, 200, to the current
offset 100 and moves to 300. As a result, the hole in [200, 300) is
skipped without being zero-filled.

Fix this by advancing only over the part of the allocated range that
overlaps the current fallocate offset.  Ignore ranges that end before the
current offset and reject ranges whose end offset overflows.

This also prevents a malformed range length from causing an out-of-bounds
zero-buffer read.

Weakness: CWE-125 (Out-of-bounds Read)

## Which versions are affected by CVE-2026-68388?


## How do I fix CVE-2026-68388?

Apply the vendor's patch.

## Is CVE-2026-68388 being exploited?

There is no known exploitation of CVE-2026-68388 in the wild and no public exploit code.

## Fix prompt for AI coding agents

```text
Check this codebase for CVE-2026-68388 and fix it if it is affected.

What it is: CVE-2026-68388 is a critical memory corruption vulnerability in Linux, published on 10 Aug 2026. An attacker can exploit it over the internet without logging in, with no action from the victim.
Exploitation: There is no known exploitation of CVE-2026-68388 in the wild and no public exploit code.

Affected product: Linux. No package-level version data is available, so check the vendor advisory linked from the reference page.

Task:
1. Search the dependency manifests and lockfiles (for example package.json, package-lock.json, requirements.txt, poetry.lock, uv.lock, pom.xml, build.gradle, go.mod, Cargo.lock, Gemfile.lock) and any Dockerfiles for the affected packages, including transitive dependencies.
2. If an affected version is in use, upgrade it to the fixed version for its release line with the project's package manager, so the lockfile is regenerated. Prefer the smallest upgrade that fixes it.
3. If there is no fix, or the upgrade would break the build, do not guess: explain the risk and the safest workaround instead.
4. Run the tests and summarise what changed and why.
5. If nothing in the project is affected, say so and change nothing.

Reference: https://insights.sbomify.com/CVE-2026-68388/ (Markdown: https://insights.sbomify.com/CVE-2026-68388/index.md)
```

## Sources

- CVE record: https://www.cve.org/CVERecord?id=CVE-2026-68388
- NVD: https://nvd.nist.gov/vuln/detail/CVE-2026-68388
- OSV: https://osv.dev/vulnerability/CVE-2026-68388

---
From sbomify Insights: https://insights.sbomify.com/CVE-2026-68388/
Summaries are generated and may contain mistakes; the official description above is the record.
