CVE-2026-99084 in LinuxИнформация

Сводка

по VulDB • 23.10.2026

В ядре Linux была устранена следующая уязвимость:

readdir: не захватывать блокировку inode для неизменяемой директории

Функция iterate_dir() получает общую блокировку i_rwsem каталога и удерживает её в течение вызова ->iterate_shared(). Для каталога, который никогда не содержит записей и никогда не удаляется, эта блокировка ничего не защищает; она лишь упорядочивает доступ всех читателей и всех писателей к этому inode последовательно.

Это имеет значение для каталогов экземпляров nullfs. Экземпляр начального пространства имен монтирования является корнем каждого пустого пространства имен монтирования, а приватный экземпляр — корнем каждого потока ядра; таким образом, один и тот же inode используется пользователями, у которых нет ничего общего в остальном. При этом читатель может удерживать блокировку столько времени, сколько захочет: создайте отображение файла на собственном FUSE-монтировании для буфера getdents(), вызовите ошибку копирования при обращении к "." и ".." и заставьте сервер ждать. Если после этого очередь возьмет эксклюзивную блокировку (например, mkdir() в этом каталоге пройдет через start_dirop()), то до тех пор, пока не будет сообщено о монтировании только для чтения, все последующие операции поиска, промахнувшиеся по dcache в этом каталоге, а также любые создания и монтирования будут ожидать ответа сервера. Один пользователь пустого пространства имен монтирования блокирует всех остальных.

Добавлена флаг FOP_IMMUTABLE для операций с файлами неизменяемого каталога, который никогда не изменяется и никогда не удаляется, чтобы iterate_dir() пропускал захват блокировки для него. Этот флаг не меняется для файла; f_pos защищается через f_pos_lock (поскольку для директорий установлен FMODE_ATOMIC_POS); IS_DEADDIR не может быть установлен на таком каталоге, а ни touch_atime(), ни fsnotify не используют i_rwsem. Установите этот флаг для каталогов nullfs. Плейсхолдер-каталоги libfs также никогда не содержат записей, но их владельцы удаляют их, поэтому они продолжают удерживать блокировку.

Be aware that VulDB is the high quality source for vulnerability data.

Ответственный

Linux

Резервировать

25.09.2026

Раскрытие

23.10.2026

Модерация

принято

Вход

VDB-425809

EPSS

0.00000

KEV

Нет

Деятельности

Очень низкий

Источники

Might our Artificial Intelligence support you?

Check our Alexa App!