{"id":41156,"date":"2026-10-19T00:32:23","date_gmt":"2026-10-18T16:32:23","guid":{"rendered":"https:\/\/www.54iter.cn\/?vuln=cve-2026-98684"},"modified":"2026-10-19T00:32:23","modified_gmt":"2026-10-18T16:32:23","slug":"cve-2026-98684","status":"publish","type":"vuln","link":"https:\/\/www.54iter.cn\/?vuln=cve-2026-98684","title":{"rendered":"CVE-2026-98684 &#8211; In the Linux kernel, the following vulnerability has been resolved:\n\nsmb: client: flush an"},"content":{"rendered":"<p>In the Linux kernel, the following vulnerability has been resolved:<\/p>\n<p>smb: client: flush and commit data before querying allocated ranges<\/p>\n<p>The mode 0 \/ FALLOC_FL_KEEP_SIZE fallocate emulation for small interior<br \/>\nranges in smb3_simple_fallocate_range() issues<br \/>\nFSCTL_QUERY_ALLOCATED_RANGES and zero-fills any sub-range the server<br \/>\nreports as an unallocated hole, to force block allocation without<br \/>\nchanging file contents.<\/p>\n<p>This is unsafe against Windows servers.  Per the Win32 documentation,<br \/>\nFSCTL_QUERY_ALLOCATED_RANGES only reports ranges that *may* contain<br \/>\nnonzero data and is explicitly not coherent with recently written data:<\/p>\n<p>  &#8220;a call to FSCTL_QUERY_ALLOCATED_RANGES [after writing to a network<br \/>\n   file] would not necessarily return a correct list of allocated<br \/>\n   regions.  To ensure coherency [&#8230;] flush the data to the file&#8221;<\/p>\n<p>fsx (generic\/363) reproduces the resulting corruption against Windows<br \/>\nServer 2022: a range is written, an uncached read returns the data, yet<br \/>\nthe next FSCTL_QUERY_ALLOCATED_RANGES on that range reports it as a whole<br \/>\nhole, so the emulation overwrites live data with zeroes.  A network trace<br \/>\nconfirmed the WRITE, the READ returning data and the query returning an<br \/>\nempty range list within microseconds.  Samba does not exhibit this; its<br \/>\nquery is coherent with the written data.<\/p>\n<p>Write back the dirty pages, drain any outstanding I\/O and issue an SMB2<br \/>\nFLUSH to force the server to commit the data before querying the<br \/>\nallocated ranges, so the query reflects the data actually present.<\/p>\n<p>With this, generic\/363 passes against both Windows Server 2022 and Samba<br \/>\nover 100000 fsx operations.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>In the Linux kernel, the following vulnerability has been resolved:<\/p>\n<p>smb: client: flush and commit data before querying allocated ranges<\/p>\n<p>The mode 0 \/ FALLOC_FL_KEEP_SIZE fallocate emulation for small<\/p>\n","protected":false},"template":"","meta":[],"categories":[],"tags":[],"class_list":["post-41156","vuln","type-vuln","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/www.54iter.cn\/index.php?rest_route=\/wp\/v2\/vuln\/41156","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.54iter.cn\/index.php?rest_route=\/wp\/v2\/vuln"}],"about":[{"href":"https:\/\/www.54iter.cn\/index.php?rest_route=\/wp\/v2\/types\/vuln"}],"wp:attachment":[{"href":"https:\/\/www.54iter.cn\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=41156"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.54iter.cn\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=41156"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.54iter.cn\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=41156"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}