Кілька днів тому Було оприлюднено інформацію про нову критичну вразливість що впливає на середовища Linux, що називаються «Pack2TheRoot». Зареєстровано під номером CVE-2026-41651.Цей недолік впливає на PackageKit (інструмент, який діє як рівень абстракції D-Bus для уніфікації управління пакетами в кількох дистрибутивах).
Зазначається, що постанова Це дозволяє будь-якому локальному користувачеві без привілеїв довільно встановлювати або видаляти пакети. Використовуючи цю вразливість, зловмисник може отримати повний root-доступ до ураженої системи. Вплив є значним, враховуючи, що проблема існує з версії 1.0.2, випущеної понад дванадцять років тому (у 2014 році), і впливає на конфігурації за замовчуванням популярних дистрибутивів, таких як Ubuntu, Debian, Rocky Linux та Fedora.
Pack2TheRoot: Уразливість PackageKit надає доступ адміністратору в Linux
El Відкриття Pack2TheRoot стало результатом розслідування на чолі з Червоною командою Deutsche Telekom, яка Вони використовували модель штучного інтелекту Клода Опуса для керівництва їхнім аналізом векторів ескалації локальних привілеїв.
LoСпочатку дослідники помітили, що команду pkcon install можна виконати без введення пароля.у певних конфігураціях Fedora, що викликало підозри щодо базової авторизації. Після підтвердження та відповідального повідомлення про вразливість розробникам PackageKit, Було розроблено робочий експлойт, хоча його детальна публікація була стратегічно відкладена, щоб користувачі та адміністратори могли застосувати необхідні оновлення.
Механіка атаки
Корінь Вразливість полягає в кар'єрному стані (Тип TOCTOU: від часу перевірки до часу використання) в управління транзакціями у фоновому режимі (демон) PackageKitPackageKit, працюючи від імені користувача root, делегує авторизацію системі polkit. Коли клієнт запитує встановлення пакета, наприклад, за допомогою методу InstallFiles, він передає набір прапорців, які визначають поведінку транзакції.
Певні прапорці, такі як SIMULATE або ONLY_DOWNLOAD, вказують PackageKit пропустити авторизацію polkit. оскільки вони представляють безпечні операції, які теоретично не змінюють стан системи. Збій виникає через те, що обробник транзакцій перезаписує Ці індикатори безумовно кешуються з кожним новим викликом, без перевірки того, чи транзакція вже авторизована, чи знаходиться в процесі виконання.

Un Зловмисник може ініціювати транзакцію, використовуючи «безпечні» індикатори (таким чином обходячи авторизацію polkit) і, через мілісекунди, надсилає другий запит D-Bus для тієї ж транзакції, але цього разу зі шкідливими прапорцями, які вимагають фактичного встановлення. Через архітектуру пріоритетів циклу подій GLib (де повідомлення D-Bus обробляються перед зворотними викликами в режимі очікування), другий запит перезаписує параметри безпосередньо перед тим, як планувальник розпочне операцію.
В результаті, транзакція, раніше авторизована як "безпечна", виконується з підставленими параметрами., встановивши пакет з правами адміністратора.
Рішення та пом'якшення наслідків
Слід зазначити, що Вразливість було виправлено у версії PackageKit 1.3.5.Тому розробники закликають системних адміністраторів перевіряти вразливість своїх систем, перевіряючи стан служб за допомогою таких команд, як systemctl status packagekit, або моніторячи активність за допомогою pkmon.
The Основні дистрибутиви, включаючи Debian, Ubuntu та Fedora, вже почали розповсюджувати пакети. Оновлення випускаються через їхні офіційні канали. Для систем, де патч не доступний негайно, дослідники запропонували обхідний шлях: розгортання власного правила polkit.
це Правило негайно та без попередження забороняє дії з встановлення PackageKit. Для будь-якого користувача, окрім root, це запобігає відкриттю вікна стану гонки. Важливо зазначити, що, хоча експлойт працює швидко та безшумно, він залишає чіткий слід у системних журналах: після успішного експлойту демон PackageKit аварійно завершує роботу через невдалу спробу підтвердження (assertion failed: (!transaction->priv->emitted_finished)). Хоча systemd перезапускає службу, запобігаючи атаці відмови в обслуговуванні, наявність цього повідомлення в journalctl є вагомим показником того, що систему було скомпрометовано.
Зрештою, якщо ви зацікавлені дізнатися більше про це, ви можете звернутися до подробиці за наступним посиланням.