Локальна вразливість у nftables, що дозволяє підвищити свої привілеї.

У Netfilter, підсистемі ядра Linux, що використовується для фільтрації та модифікації мережевих пакетів, виявлено вразливість (CVE не призначено), що дозволяє локальному користувачеві виконати код на рівні ядра і підняти свої привілеї в системі. Дослідниками продемонстровано експлоїт, що дозволив локальному користувачеві отримати права root в Ubuntu 22.04 з ядром 5.15.0-39-generic. Спочатку інформацію про вразливість планувалося опублікувати 15 серпня, але через копіювання листа з прототипом експлоїту до публічного списку розсилки, ембарго на розкриття інформації було скасовано.

Проблема проявляється починаючи з випуску ядра 5.8 і викликана переповненням буфера в коді обробки set-списків у модулі nf_tables, що сталося через відсутність належних перевірок у функції nft_set_elem_init. Помилка внесена до зміни, що розширює до 128 байт область зберігання для елементів списку.

Для проведення атаки потрібна наявність доступу до nftables, який можна отримати в окремому просторі імен (network namespaces) за наявності прав CLONE_NEWUSER, CLONE_NEWNS або CLONE_NEWNET (наприклад, при можливості запуску ізольованого контейнера). Виправлення поки що недоступне. Для блокування експлуатації вразливості у звичайних системах слід переконатися у відключенні можливості створення просторів імен непривілейованими користувачами (sudo sysctl -w kernel.unprivileged_userns_clone=0).

Джерело: opennet.ru

Додати коментар або відгук