Уязвимость в ядре Linux с возможностью локальной эксплуатации через nftables

good-penguin.png

Обнаружена уязвимость в подсистеме Netfilter (CVE-2023–6817), которая, в теории, может быть использована локальным пользователем для повышения своих привилегий в системе. Корень проблемы кроется в использовании освобожденной памяти (use-after-free) в модуле nf_tables, ответственном за функциональность пакетного фильтра nftables.

Уязвимость актуальна с версии ядра Linux 5.6. Исправление предложено в тестовом выпуске ядра Linux 6.7-rc5 и внесено в текущие стабильные ветки 5.10.204, 5.15.143, 6.1.68 и 6.6.7.

Проблема вызвана ошибкой в функции nft_pipapo_walk, которая не проводит проверку наличия дубликатов в процессе перебора элементов PIPAPO (Pile Packet Policies). Это приводит к двойному освобождению памяти. Для успешной атаки требуется доступ к nftables, который можно получить, обладая правами CAP_NET_ADMIN в любом пространстве имен пользователя (user namespace) или сетевом пространстве имен (network namespace). Эти права могут быть предоставлены, например, в изолированных контейнерах. Для проверки своих систем опубликован прототип эксплоита.

>>> Подробности

©  Linux.org.ru