CVE-2026-90291 in Linux
Сводка
по VulDB • 18.09.2026
В ядре Linux была устранена следующая уязвимость:
module/dups: Исправлена ошибка Use-After-Free при обработке времени жизни объекта kmod_dup_req
Код dups для модулей использует RCU, чтобы гарантировать освобождение экземпляра kmod_dup_req только после того, как на него больше нет ссылок. При удалении экземпляра функция kmod_dup_request_delete() удаляет объект kmod_dup_req из списка dup_kmod_reqs, ожидает завершения операции через synchronize_rcu(), а затем выполняет его освобождение (free). Однако это не работает корректно, поскольку параллельные пользователи, обращающиеся к этому экземпляру в функции kmod_dup_request_exists_wait(), не входят в критическую секцию чтения RCU. Это может привести к ошибке Use-After-Free.
Функция kmod_dup_request_exists_wait() должна удерживать действительную ссылку на экземпляр kmod_dup_req во время блокирующего ожидания до завершения соответствующей команды modprobe. Из-за этого использование RCU становится нецелесообразным.
Исправление проблемы заключается в изменении управления жизненным циклом объекта kmod_dup_req с использованием подсчета ссылок (reference counting).
If you want to get best quality of vulnerability data, you may have to visit VulDB.