Уязвимость в dm-pcache ядра Linux позволяет выйти за границы массива (CVE-2026-98867)
В подсистеме dm-pcache ядра Linux обнаружена уязвимость, связанная с отсутствием проверки логического смещения ключа, полученного из персистентной памяти. Некорректное значение может привести к записи за пределами массива при воспроизведении журнала. Уязвимость затрагивает системы, использующие dm-pcache, и требует обновления ядра.
Подробности
Функция cache_key_decode() принимает логическое смещение (logical off) ключа из кэш-устройства и в дальнейшем использует его для индексации массива req_key_tree->subtrees[] в функции get_subtree(). Если смещение выходит за пределы устройства, формируется указатель на поддерево за границами массива. При воспроизведении (replay) журнала функция rb_insert() выполняет запись по этому указателю, что приводит к повреждению памяти за пределами массива. Уязвимость относится к классу ошибок работы с памятью (out-of-bounds write) и возникает из-за отсутствия проверки ключа перед его использованием. Затрагивается ядро Linux с поддержкой dm-pcache. Точные версии и значение CVSS в исходной записи не указаны — при планировании обновления следует ориентироваться на рекомендации производителя ядра и дистрибутива.Что делать
Исправление добавляет валидацию ключа до его применения: ключ нулевой длины отклоняется, а также отклоняется ключ, у которого значение off+len (вычисляемое в 64-битной разрядности) превышает размер устройства. Рекомендуется:- Обновить ядро Linux до версии, содержащей исправление для CVE-2026-98867, согласно рекомендациям вашего дистрибутива.
- Если обновление пока недоступно, оценить необходимость использования dm-pcache в инфраструктуре и по возможности ограничить его применение на критичных системах.
- Контролировать целостность кэш-устройств и журналов, а также отслеживать официальные бюллетени безопасности дистрибутива.
Источник: CVE Project (cvelistV5)
