Linux-ядро: CVE-2026-98868 — dm-pcache не проверяет kset и выходит за границы сегмента
В подсистеме dm-pcache ядра Linux обнаружена уязвимость CVE-2026-98868: подделанное значение key_num в kset заставляет обработчики выйти за пределы сегмента кэша и вызвать срабатывание BUG_ON в cache_pos_advance(). Проблема затрагивает системы, использующие dm-pcache с недоверенными или скомпрометированными метаданными на диске; исправление уже включено в основную ветку ядра.
Подробности
Уязвимость затрагивает ядро Linux с поддержкой dm-pcache. Функция cache_replay(), а также worker записи (writeback worker) и сборщик мусора (GC worker) читают kset размером get_kset_onmedia_size() байт и сдвигают позицию на эту величину. Если значение key_num подделано, вычисленный размер превышает оставшееся пространство сегмента, и сдвиг позиции выходит за его пределы, что приводит к срабатыванию BUG_ON в cache_pos_advance(). Фактически речь идёт о некорректной валидации входных данных с последующим нарушением целостности внутренних структур и аварийным завершением ядра (отказ в обслуживании). Конкретные версии ядра и значение CVSS в записи CVE не указаны — уточняйте по мере публикации данных NVD.Что делать
Основная рекомендация — обновиться до версии ядра, содержащей исправление: в патче перед использованием kset проверяется, что его размер на носителе не превышает cache_seg_remain(). Если немедленное обновление невозможно, следует ограничить использование dm-pcache на системах, где метаданные кэша могут быть подконтрольны недоверенным сторонам, и контролировать целостность соответствующих блочных устройств. После установки обновления перезагрузка обязательна, поскольку речь идёт о модуле ядра. Итог: CVE-2026-98868 — локальная уязвимость в dm-pcache, приводящая к отказу в обслуживании при обработке подделанного kset. Риск актуален прежде всего для сред, где злоумышленник может влиять на содержимое метаданных кэша; исправление доступно в обновлённых версиях ядра Linux.Источник: CVE Project (cvelistV5)
