Найдена серьезная уязвимость в Ubuntu, которая позволяет получить полный доступ к системе

Недавно обнаруженная уязвимость в Ubuntu 20.26 подвергает миллионы пользователей настольных компьютеров серьезной опасности — локальный злоумышленник без привилегий может незаметно повысить свои привилегии вплоть до уровня root, не запрашивая пароль и не требуя какого-либо взаимодействия со стороны жертвы.

Что такое уязвимость настольной системы Ubuntu?

Выявлена критическая уязвимость рабочего стола Ubuntu, обнаруженная подразделением Qualys Threat Research Unit в ходе проактивной проверки безопасности перед циклом выпуска Ubuntu 25.10. Эта уязвимость, теперь официально зарегистрированная как CVE-2026-3888, представляет собой ошибку локального повышения привилегий (LPE), присутствующую в стандартной установке Ubuntu Desktop 24.04 и более поздних версий. Что делает ее особенно тревожной, так это поверхность атаки: для ее запуска не требуется ни специального программного обеспечения, ни доступа к внешней сети, ни повышенных прав.

В основе уязвимости безопасности рабочего стола Linux лежит непреднамеренное взаимодействие между двумя стандартными системными службами Ubuntu — snap-confine и systemd-tmpfiles. Обе работают по умолчанию, обе обладают повышенным уровнем доверия системы, и вместе они создают лазейку, через которую может проникнуть злоумышленник.

Критическое предупреждение: CVE-2026-3888 не требует никакого взаимодействия с пользователем и никакого доступа к сети — только локальную стандартную учетную запись пользователя. Любую общую среду рабочего стола Ubuntu следует считать скомпрометированной до установки исправления.

Как на самом деле работает уязвимость Ubuntu

Чтобы понять, как работает эксплойт Ubuntu, необходимо знать, для чего предназначены эти два компонента. snap-confine — это бинарный файл setuid-root, который создает среду песочницы при каждом запуске приложения snap, обеспечивая изоляцию пространств имён, политики AppArmor, принудительное выполнение cgroup и фильтры seccomp. Между тем systemd-tmpfiles управляет временными каталогами, такими как /tmp, /run и /var/tmp, периодически удаляя устаревшие файлы по таймеру.

Эксплойт уязвимости Linux разворачивается в три этапа: во-первых, злоумышленник ждет — или обманывает планировщик — пока systemd-tmpfiles не удалит /tmp/.snap, каталог, от которого зависит snap-confine при настройке песочницы (через 30 дней в Ubuntu 24.04 или через 10 дней в более поздних версиях). Во-вторых, злоумышленник немедленно воссоздает этот каталог и заполняет его вредоносными данными. В-третьих, при запуске следующего приложения snap snap-confine — работающий с правами root — выполняет привязку (bind-mount) этих файлов, контролируемых злоумышленником, и произвольный код запускается в привилегированном контексте.

Кого затрагивает эта уязвимость безопасности настольной версии Linux?

Если вы используете Ubuntu Desktop 24.04 LTS, 25.10 или тестовую версию 26.04 LTS с установленным пакетом snapd по умолчанию, ваша система уязвима. Это касается значительной части пользователей Ubuntu Desktop по всему миру. Примечательно, что устаревшие версии Ubuntu — от 16.04 до 22.04 LTS — не затронуты в стандартных конфигурациях, хотя Qualys рекомендует применять защитные исправления к любым нестандартным настройкам 22.04, которые отражают более новое поведение.

️*Контекст:* Snapd установлен и активен по умолчанию во всех выпусках Ubuntu Desktop, начиная с версии 20.04. Вам не нужно было сознательно устанавливать приложение snap — демон работает в любом случае, что делает поверхность атаки практически универсальной для всех затронутых версий. Анализ последствий

Потенциальные риски безопасности: что означает успешная эксплуатация уязвимости

Оценка CVSS 7,8 сигнализирует о чем-то конкретном: злоумышленник не просто получает контроль над собственной пользовательской сессией — он полностью нарушает изоляцию, получая возможности, которые затрагивают ресурсы далеко за пределами первоначальной зоны компрометации. Проще говоря, злоумышленник, запустивший этот эксплойт, получает root-оболочку, полный доступ на чтение/запись ко всем файлам в системе, возможность устанавливать постоянные бэкдоры, выводить учетные данные, подделывать журналы и переходить к любому подключенному сетевому ресурсу.

Для общих рабочих сред Ubuntu — университетских лабораторий, корпоративных рабочих станций, машин разработчиков с несколькими учетными записями — риски безопасности для Linux-десктопов усугубляются. Любой стандартный пользователь на этой машине становится потенциальным злоумышленником.

️*Внимание:* Системы с несколькими пользователями, общие рабочие станции разработчиков и настольные компьютеры Ubuntu подвергаются наибольшему риску. Если у любого ненадежного пользователя есть локальный логин, считайте систему уязвимой до тех пор, пока не будет подтверждена установка патча snapd. Как это исправить

Как исправить уязвимость Ubuntu прямо сейчас

Хорошая новость: исправления уже выпущены. Команда безопасности Ubuntu отреагировала быстро, выпустив исправленные сборки snapd для всех затронутых версий. Исправление в обновлении безопасности Ubuntu представляет собой простое обновление пакета — не требуется ручная настройка, перезагрузка ядра или сторонние инструменты.

Команды для проверки и обновления системы

Немедленно выполните эти команды

Откройте Терминал и выполните следующие команды, чтобы загрузить исправленный пакет snapd и проверить версию запущенного ядра:

sudo apt update && sudo apt upgrade
snap version
uname -r

После обновления убедитесь, что установленная версия snapd соответствует или превышает версию исправленного выпуска для вашей версии Ubuntu (см. сравнительную таблицу ниже). Если вы используете Ubuntu 24.04 LTS, вам нужна версия 2.73+ubuntu24.04.1 или более поздняя.

Версия Ubuntu Уязвимый snapd Исправленная версия Статус
Ubuntu 24.04 LTS До версии 2.73 ubuntu24.04.1 2.73+ubuntu24.04.1 Исправление доступно
Ubuntu 25.10 До версии 2.73 ubuntu25.10.1 2.73+ubuntu25.10.1 Исправление доступно
Ubuntu 26.04 LTS (Dev) До версии 2.74.1 ubuntu26.04.1 2.74.1+ubuntu26.04.1 Исправление доступно
Исходный snapd До версии 2.75 2.75 Исправление доступно
Ubuntu 16.04–22.04 LTS Не уязвимо (конфигурация по умолчанию) Рекомендуется установить исправление в качестве меры предосторожности

Пользователи Linux не в безопасности

Эта уязвимость Ubuntu напоминает, что архитектура безопасности настолько сильна, насколько сильны взаимодействия между ее компонентами. По отдельности snap-confine и systemd-tmpfiles — это хорошо спроектированные и тщательно протестированные подсистемы. Проблема заключается не в каком-либо отдельном компоненте, а в пробеле, который они создают вместе — пробеле, который никто явно не выявлял, пока Qualys не начала распутывать нити. Такого рода системная «слепая зона» особенно опасна в программном обеспечении, включенном по умолчанию, которое тихо работает в фоновом режиме на сотнях миллионов компьютеров.

С точки зрения безопасности настольных систем Linux этот инцидент поднимает более широкий вопрос о модели очистки tmpfiles. Предсказуемая очистка файлов по таймеру создает детерминированные окна. Усиление безопасности этих взаимодействий — будь то посредством обязательного контроля доступа к созданию подкаталогов /tmp или более строгой проверки путей в самом snap-confine — теперь находится в поле зрения Canonical.

Как обеспечить безопасность в Ubuntu в будущем

Помимо немедленной установки исправления из обновления безопасности Ubuntu, существуют разумные многоуровневые меры защиты, которые должен поддерживать каждый пользователь настольного компьютера. Включите автоматические обновления безопасности через unattended-upgrades, чтобы критические исправления устанавливались без необходимости ручного запуска. Проверьте, кто имеет локальный доступ к вашему компьютеру — модель угрозы здесь полностью локальна, поэтому ограничение физического и SSH-доступа является реальной мерой защиты. Внимательно следите за изменениями в systemd и системе init, поскольку эта уязвимость показывает, насколько глубоко службы systemd вплетены в поверхности атаки настольных компьютеров.

Хорошие новости: исправления уже доступны, и процесс обновления сводится к одной команде в терминале. В отличие от уязвимостей ядра, это исправление не требует перезагрузки — достаточно выполнить apt upgrade, и вы защищены. Следите за обновлениями системы Linux, чтобы не попасться на следующую уязвимость.

Canonical уже сообщила, что в настоящее время проводится более структурный анализ логики обработки каталогов snap-confine. Ситуация с uutils coreutils также сигнализирует о том, что по мере того, как экосистема Linux переходит на переписанные на Rust основные Утилиты, необходимо ускорить проведение проверок безопасности — те же гарантии безопасности, которые Rust предоставляет на уровне памяти, не означают автоматически безопасного взаимодействия с привилегированными системными планировщиками и демонами очистки.