{"id":26058,"date":"2026-09-18T04:32:17","date_gmt":"2026-09-17T20:32:17","guid":{"rendered":"https:\/\/www.54iter.cn\/?vuln=cve-2026-93201"},"modified":"2026-09-18T04:32:17","modified_gmt":"2026-09-17T20:32:17","slug":"cve-2026-93201","status":"publish","type":"vuln","link":"https:\/\/www.54iter.cn\/?vuln=cve-2026-93201","title":{"rendered":"CVE-2026-93201 &#8211; In the Linux kernel, the following vulnerability has been resolved:\n\ndm-pcache: validate s"},"content":{"rendered":"<p>In the Linux kernel, the following vulnerability has been resolved:<\/p>\n<p>dm-pcache: validate seg_id fields from persistent memory<\/p>\n<p>cache_pos_decode(), cache_key_decode() and the last-kset branches of<br \/>\ncache_replay(), the writeback worker and the GC worker take a cache<br \/>\nsegment id from the cache device metadata and index cache-&gt;segments[]<br \/>\nwith it without checking it against cache-&gt;n_segs. That metadata is only<br \/>\nCRC-protected with a fixed public seed, so whoever supplies the cache<br \/>\ndevice on a table load (CAP_SYS_ADMIN) controls the id; an out-of-range<br \/>\nvalue forms a wild pcache_cache_segment pointer that is dereferenced and<br \/>\nwritten through &#8212; an out-of-bounds read and write driven by on-disk data.<\/p>\n<p>Add cache_seg_id_valid() and reject an out-of-range id at each decode<br \/>\nsite, failing the operation with -EIO instead of indexing past the array.<br \/>\nBound the id against the initialized-segment count (cache_info.n_segs)<br \/>\nrather than the physical device total. A forged cache_info.n_segs below<br \/>\nseg_num otherwise leaves segments[cache_info.n_segs..seg_num) as zeroed<br \/>\nstructs whose data pointer is NULL, so a forged id in that window would<br \/>\nstill be dereferenced. A later patch guarantees cache_info.n_segs &lt;=<br \/>\nseg_num, and a driver-created cache sets the two equal, so valid images<br \/>\nare unaffected.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>In the Linux kernel, the following vulnerability has been resolved:<\/p>\n<p>dm-pcache: validate seg_id fields from persistent memory<\/p>\n<p>cache_pos_decode(), cache_key_decode() and the last-kset branches of<br \/>\ncach<\/p>\n","protected":false},"template":"","meta":[],"categories":[],"tags":[],"class_list":["post-26058","vuln","type-vuln","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/www.54iter.cn\/index.php?rest_route=\/wp\/v2\/vuln\/26058","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=26058"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.54iter.cn\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=26058"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.54iter.cn\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=26058"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}