CrackArmor вразливості у ядрі Linux – огляд

Компанія Qualys виявила кілька вразливостей у коді AppArmor ядер Linux. Ці вразливості отримали назву CrackArmor, проте CVE ідентифікатори ще не призначені. Всі вразливості вимагають доступу до системи для неприхованих локальних користувачів. Вплив цих вразливостей варіюється від відмови в обслуговуванні до витоку інформації з пам’яті ядра, зняття контрольних механізмів безпеки та локального підвищення привілеїв до root-користувача. Випуски Ubuntu постраждали в різний спосіб, що детально описано у відповідних розділах нижче.

Виправлення для ядра Linux для підтримуваних версій Ubuntu надаються як оновлення безпеки командою Canonical Kernel. Крім того, наша команда з безпеки надала міграції для користувацького простору у формі оновлень безпеки для всіх постраждалих випусків Ubuntu. Наша рекомендація полягає в тому, щоб ви застосували як міграції для користувацького простору, так і оновлення безпеки ядра Linux.

AppArmor – це модуль безпеки Linux з обов’язковим контролем доступу (MAC), який забезпечує додатковий рівень безпеки у системах Ubuntu та доповнює традиційну модель дискретного контролю доступу (DAC). Окрім того, що він увімкнений за замовчуванням у випусках Ubuntu, AppArmor також використовується в інших дистрибутивах Linux.

Огляд вразливостей

Цей блог надає огляд виявлених вразливостей безпеки у коді ядра AppArmor і додатку sudo, а також ненадійної поведінки у утиліті su, що сприяє експлуатації вразливостей ядра AppArmor. Наступна таблиця підсумовує проблеми:

Пакет Опис CVE ID
linux Всі вразливості AppArmor містяться у ядрі Linux. У випадках хостингу вони залежать від основної проблеми “заплутаного заступника”, що є однією з вразливостей AppArmor.

Оновлення безпеки доступні для деяких постраждалих випусків.

CVE ще не призначено. Ці вразливості називаються CrackArmor. Відстежуються як Launchpad Bug #2143853
sudo
sudo-ldap
Утиліта sudo має вразливість, яка може призвести до локального підвищення привілеїв у сценаріях розгортання хосту, в поєднанні з іншими вразливостями, описаними тут.

Оновлення безпеки доступні для всіх постраждалих випусків.

CVE не призначено, відстежується як Launchpad Bug #2143042
util-linux Утиліта su в пакеті util-linux демонструє ненадійну поведінку, що сприяє експлуатації вразливостей AppArmor у сценаріях розгортання хосту.

Оновлення безпеки, які зміцнюють утиліту su, доступні для всіх постраждалих випусків.

Це не є вразливістю, тож цей ідентифікатор CVE відсутній. Відстежується як Launchpad Bug #2143850
Огляд вразливостей AppArmor

Стаття Бази знань про вразливість містить детальний опис вразливостей, а також заходів протидії, які надаються через оновлення безпеки.

Сценарії впливу/оцінка

Розгортання без контейнерних навантажень

Експлуатація на хостах, які не запускають контейнерні навантаження, вимагає участі привілейованої програми (наприклад, бінарного файлу зі встановленими привілеями). Наявність системи оркестрації контейнерів без запущених контейнерів сама по собі не створює можливості для експлуатації. Команда Qualys виявила, що поведінка утиліти su дозволяє проводити експлуатацію. Цю вразливість можуть активувати лише неприховані користувачі, які мають встановлений пароль – неприховані системні користувачі не можуть успішно викликати su без доступу до пароля облікового запису і, отже, не можуть активувати вразливості. Відсутність такої співпраці з привілейованою програмою означає, що вразливості можуть активуватися лише привілейованим користувачем (root).

Не пов’язана вразливість була виявлена Qualys у sudo, яку можна активувати через функцію сповіщень електронною поштою. Ця вразливість дозволяє локальне підвищення привілеїв, коли вона комбінується з вразливостями AppArmor та привілейованою утилітою su. sudo-rs, переписана на Rust версія sudo, доступна за замовчуванням у Ubuntu Questing Quokka (25.10) та новіших версіях, не підпадає під вплив через рішення дизайну не надсилати електронні сповіщення.

Команда з безпеки Ubuntu підготувала оновлення безпеки як для су (у пакеті util-linux), так і для sudo. Виправлення безпеки для su слід розглядати як захід пом’якшення, і ми настійно рекомендуємо вам також застосувати оновлення безпеки ядра Linux якомога швидше.

Контейнерні розгортання

У контейнерних розгортаннях, які можуть виконувати потенційно шкідливі контейнерні образи, вразливості ядра AppArmor можуть бути експлуатовані без необхідності в співпраці привілейованих програм користувацького простору. Це теоретично може дозволити сценарії втечі з контейнерів, хоча це не було практично продемонстровано на момент написання.

Команда з безпеки Ubuntu настійно рекомендує застосувати оновлення безпеки ядра Linux як єдине доступне рішення.

Наступні розділи пояснюють, як різні версії Ubuntu зазнали впливу, а також пов’язані виправлення або пом’якшення.

Оновлення безпеки ядра Linux

Оновлення безпеки ядра Linux ліквідують всі вразливості AppArmor, виявлені Qualys.

Всі підтримувані випуски Ubuntu підпали під вплив основної вразливості “заплутаного заступника”. Комбінація вразливостей, які дозволяють локальне підвищення привілеїв і сценарії втечі з контейнерів, відсутня в Trusty Tahr (14.04 LTS) або Xenial Xerus (16.04 LTS).

Як перевірити, чи ви підпали під вплив

На вашій системі виконайте наступну команду, щоб отримати версію поточного ядра та порівняти зазначену версію з таблицею нижче.

uname -r

Список встановлених пакетів ядра можна отримати за допомогою наступної команди:

dpkg -l 'linux-image*' | grep ^ii

Ви можете порівняти версію конкретного варіанту ядра, який ви встановили, з таблицею версій на основі випуску, доступною у Базі знань про вразливість.

Як виправити

Рекомендуємо оновити всі пакунки:

sudo apt update && sudo apt upgrade

Якщо це неможливо, оновлення ядра Linux можна націлити безпосередньо:

sudo apt updatedpkg-query -W -f '${source:Package}\t${binary:Package}\n' | awk '$1 ~ "^linux-meta" { print $2 }' | xargs sudo apt install --only-upgrade

Після встановлення оновлень безпеки для ядра Linux потрібно перезапустити систему:

sudo reboot

Функція автоматичного оновлення увімкнена за замовчуванням для Ubuntu Xenial Xerus (16.04 LTS) та новіших версій. Ця служба:  

  • Автоматично застосовує нові оновлення безпеки кожні 24 години.
  • Якщо ви це увімкнули, вищезазначені патчі будуть автоматично застосовані протягом 24 годин з моменту їх доступності, але перезавантаження все ще буде необхідним.

Оновлення безпеки sudo

Оновлення безпеки пакету sudo реагують на не пов’язану вразливість sudo, яка може поєднуватися з вразливістю AppArmor для полегшення локального підвищення привілеїв.

Як перевірити, чи ви підпали під вплив

Щоб отримати версію встановленого пакету sudo, виконайте наступну команду:

dpkg -l 'sudo*' | grep ^ii

Наступна таблиця містить виправлені версії пакету sudo у всіх підтримуваних випусках Ubuntu:

Випуск Пакет Виправлена версія
Questing Quokka (25.10) sudo 1.9.17p2-1ubuntu1.1
sudo-ldap 1.9.17p2-1ubuntu1.1
sudo-rs Не підпав під вплив
Noble Numbat (24.04 LTS) sudo 1.9.15p5-3ubuntu5.24.04.2
sudo-ldap 1.9.15p5-3ubuntu5.24.04.2
Jammy Jellyfish (22.04 LTS) sudo 1.9.9-1ubuntu2.6
sudo-ldap 1.9.9-1ubuntu2.6
Focal Fossa (20.04 LTS) sudo Не підпав під вплив
sudo-ldap Не підпав під вплив
Bionic Beaver (18.04 LTS) sudo Не підпав під вплив
sudo-ldap Не підпав під вплив
Xenial Xerus (16.05 LTS) sudo Не підпав під вплив
sudo-ldap Не підпав під вплив
Trusty Tahr (14.04 LTS) sudo Не підпав під вплив
sudo-ldap Не підпав під вплив
Постраждалі версії sudo

Як виправити

Рекомендуємо оновити всі пакунки:

sudo apt update && sudo apt upgrade

Якщо це неможливо, міграції для користувацького простору можна встановити безпосередньо і не потребують перезавантаження для застосування:

sudo apt updatesudo apt install sudo

Функція автоматичного оновлення увімкнена за замовчуванням для Ubuntu Xenial Xerus (16.04 LTS) та новіших версій. Ця служба:  

  • Автоматично застосовує нові оновлення безпеки кожні 24 години.
  • Якщо ви це увімкнули, патчі вище будуть автоматично застосовані протягом 24 годин з моменту їх доступності.

Оновлення безпеки util-linux

Оновлення безпеки пакету util-linux зміцнюють утиліту su, щоб уникнути її використання для експлуатації вразливостей AppArmor.

Як перевірити, чи ви підпали під вплив

Щоб отримати версію встановленого пакету util-linux, виконайте наступну команду:

dpkg -l util-linux

Наступна таблиця містить виправлені версії пакету util-linux у всіх підтримуваних випусках Ubuntu:

Випуск Пакет Виправлена версія
Questing Quokka (25.10) util-linux 2.41-4ubuntu4.2
Noble Numbat (24.04 LTS) util-linux 2.39.3-9ubuntu6.5
Jammy Jellyfish (22.04 LTS) util-linux 2.37.2-4ubuntu3.5
Focal Fossa (20.04 LTS) util-linux 2.34-0.1ubuntu9.6+esm1
Bionic Beaver (18.04 LTS) util-linux Не підпав під вплив
Xenial Xerus (16.05 LTS) util-linux Не підпав під вплив
Trusty Tahr (14.04 LTS) util-linux Не підпав під вплив
Постраждалі версії util-linux

Як виправити

Рекомендуємо оновити всі пакунки:

sudo apt update && sudo apt upgrade

Якщо це неможливо, міграції util-linux для користувацького простору можна встановити безпосередньо і не потребують перезавантаження для застосування:

sudo apt updatesudo apt install util-linux

Функція автоматичного оновлення увімкнена за замовчуванням для Ubuntu Xenial Xerus (16.04 LTS) та новіших версій. Ця служба:  

  • Автоматично застосовує нові оновлення безпеки кожні 24 години.
  • Якщо ви це увімкнули, патчі вище будуть автоматично застосовані протягом 24 годин з моменту їх доступності.

Подяки

Ми хочемо подякувати Qualys за їх відмінну звітність та за співпрацю з командою AppArmor, командою Canonical Kernel, командою безпеки Ubuntu, командою безпеки ядра Linux та іншими дистрибутивами Linux у координованому розкритті вразливостей.

Зв’яжіться з нами сьогодні

Цікавитесь використанням Ubuntu у вашій організації?

Підписка на розсилку

Отримуйте останні новини та оновлення Ubuntu на вашу пошту.