-

CVE-2026-98684

smb: client: flush and commit data before querying allocated ranges

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

smb: client: flush and commit data before querying allocated ranges

The mode 0 / FALLOC_FL_KEEP_SIZE fallocate emulation for small interior
ranges in smb3_simple_fallocate_range() issues
FSCTL_QUERY_ALLOCATED_RANGES and zero-fills any sub-range the server
reports as an unallocated hole, to force block allocation without
changing file contents.

This is unsafe against Windows servers.  Per the Win32 documentation,
FSCTL_QUERY_ALLOCATED_RANGES only reports ranges that *may* contain
nonzero data and is explicitly not coherent with recently written data:

  "a call to FSCTL_QUERY_ALLOCATED_RANGES [after writing to a network
   file] would not necessarily return a correct list of allocated
   regions.  To ensure coherency [...] flush the data to the file"

fsx (generic/363) reproduces the resulting corruption against Windows
Server 2022: a range is written, an uncached read returns the data, yet
the next FSCTL_QUERY_ALLOCATED_RANGES on that range reports it as a whole
hole, so the emulation overwrites live data with zeroes.  A network trace
confirmed the WRITE, the READ returning data and the query returning an
empty range list within microseconds.  Samba does not exhibit this; its
query is coherent with the written data.

Write back the dirty pages, drain any outstanding I/O and issue an SMB2
FLUSH to force the server to commit the data before querying the
allocated ranges, so the query reflects the data actually present.

With this, generic/363 passes against both Windows Server 2022 and Samba
over 100000 fsx operations.
Daten sind bereitgestellt durch das CVE Programm von einer CVE Numbering Authority (CNA) (Unstrukturiert).
HerstellerLinux
≫
Produkt Linux
Default Statusunaffected
Version 966a3cb7c7db786452a87afdc3b48858fc4d4d6b
Version < f82242fe3109a3ef72f429540b5bdde08fbfb0e4
Status affected
Version 966a3cb7c7db786452a87afdc3b48858fc4d4d6b
Version < bf84e44ff0ed802778eafd7ecb623635379cb506
Status affected
Version 966a3cb7c7db786452a87afdc3b48858fc4d4d6b
Version < aa994489bd835547c191827acc460192e147032d
Status affected
Version c406bb9ece6ef63721daab106f132ff4b4234e81
Status affected
Version 2f9f4a2d0e6fcf0673ed51195e06e47abe966900
Status affected
Version 5e397c943424de94879830e72c95f2679e297a76
Status affected
Version 5.10.50
Version < 5.11
Status affected
Version 5.12.17
Version < 5.13
Status affected
Version 5.13.2
Version < 5.14
Status affected
HerstellerLinux
≫
Produkt Linux
Default Statusaffected
Version 5.14
Status affected
Version 0
Version < 5.14
Status unaffected
Version <= 6.18.*
Version 6.18.56
Status unaffected
Version <= 7.2.*
Version 7.2.10
Status unaffected
Version <= *
Version 7.3
Status unaffected
VulnDex Vulnerability Enrichment
Diese Information steht angemeldeten Benutzern zur Verfügung. Login Login
Zu dieser CVE wurde keine Warnung gefunden.
EPSS Metriken
Typ Quelle Score Percentile
EPSS FIRST.org 0.17% 0.055
CVSS Metriken
Quelle Base Score Exploit Score Impact Score Vector String
Es wurden noch keine Informationen zu CWE veröffentlicht.
https://git.kernel.org/stable/c/f82242fe3109a3ef72f429540b5bdde08fbfb0e4
https://git.kernel.org/stable/c/bf84e44ff0ed802778eafd7ecb623635379cb506
https://git.kernel.org/stable/c/aa994489bd835547c191827acc460192e147032d