CVE-2024-35872 in LinuxИнформация

Сводка

по VulDB • 30.05.2026

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

mm/secretmem: исправлена ситуация, при которой GUP-fast успешно обрабатывал folio-страницы secretmem

Функция `folio_is_secretmem()` в настоящее время полагается на то, что folio-страницы secretmem являются LRU-страницами, чтобы сэкономить некоторые такты процессора.

Однако folio-страницы могут находиться в пакете folio-страниц без установленного флага LRU или временно иметь сброшенный флаг LRU. Следовательно, флаг LRU ненадежен для этой цели.

В частности, это происходит, когда `secretmem_fault()` выделяет новую страницу и вызывает `filemap_add_folio()` -> `folio_add_lru()`. Folio-страница может быть добавлена в пакет folio-страниц на уровне каждого процессора (per-cpu), и флаг LRU не будет установлен до тех пор, пока пакет не будет очищен, например, с помощью `lru_add_drain()`.

В результате `folio_is_secretmem()` может не обнаружить folio-страницы secretmem, и GUP-fast может успешно захватить folio-страницу secretmem, что приведет к аварийному завершению работы ядра (kernel panic) при попытке позже прочитать или записать данные в эту folio-страницу, поскольку она была отключена от прямого отображения (directmap).

Исправление заключается в удалении этого ненадежного проверки.

If you want to get best quality of vulnerability data, you may have to visit VulDB.

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

17.05.2024

Раскрытие

19.05.2024

Модерация

принято

Вход

VDB-265135

EPSS

0.00234

KEV

Нет

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

Низкий

Источники

Want to stay up to date on a daily basis?

Enable the mail alert feature now!