Flatpak 1.18.1 закрыл выход из песочницы и девять других уязвимостей

11 августа 2026 года был выпущен Flatpak версии 1.18.1. Это обновление стало стабильным патчем для ветки 1.18 и устранило десять уязвимостей. Наиболее критическая из них позволяла вредоносным Flatpak-приложениям читать и записывать файлы на хост-системе, а также выполнять код за пределами песочницы. Кроме того, разработчики исправили ошибки в работе portal, обработке прав запуска, OCI-механизмах и несколько ошибок сборки.

Flatpak 1.18.1 закрыл выход из песочницы и девять других уязвимостей
Flatpak 1.18.1 закрыл выход из песочницы и девять других уязвимостей

Flatpak 1.18.1 устраняет десять проблем безопасности

Flatpak 1.18.1 появился в официальном репозитории проекта 11 августа. GitHub помечает его как Latest для стабильной ветки, и список изменений сразу задаёт характер релиза: десять пунктов находятся в разделе Security fixes, после них идёт набор исправлений ошибок.

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

В опубликованных advisory десять исправленных проблем распределены так: одна имеет уровень Critical, три — High, пять — Moderate и одна — Low.

ПроблемаУровеньВозможный эффект
GHSA-8688-9x26-hhxjCriticalчтение и запись произвольных файлов хоста, возможное выполнение кода
GHSA-qrwq-7qwx-q9rpHighлокальное повышение привилегий до root через revokefs
GHSA-fqx6-vh4p-42cgHighзапись произвольных данных от имени root при обработке extra-data
GHSA-8qxj-x646-phcmModerateвыход записи за рабочий каталог при flatpak build-init
GHSA-9rww-v4mm-x4jgModerateчтение файлов хоста через специально подготовленный OCI-архив
GHSA-v2gw-v9h5-9q4xHighсоздание root-owned данных вне ожидаемого каталога через DeployAppstream
GHSA-jr92-2v97-wgvcModerateпереполнение буфера и возможное выполнение кода на 32-битных системах
GHSA-99wv-m8rp-g58xModerateзапись файлов с фиксированными именами за пределами песочницы
GHSA-w69g-9x8j-7p8fLowпроверка существования файлов хоста и нежелательные точки монтирования
GHSA-q4gr-vc25-57m5Moderateобход защиты от понижения версии системных приложений и runtime

Здесь «хост» — сама Linux-система за пределами песочницы, а root — учётная запись с максимальными системными правами. Поэтому даже часть сценариев, требующих локального пользователя, специально подготовленного репозитория или определённой конфигурации, выходит далеко за рамки косметических ошибок интерфейса.

GHSA-8688-9x26-hhxj позволяла приложению добраться до файлов хоста

Самый заметный пункт Flatpak 1.18.1 связан с GHSA-8688-9x26-hhxj. Разработчики присвоили проблеме уровень Critical. Уязвимы версии Flatpak до 1.18.0 включительно, исправленной указана 1.18.1.

Механизм атаки связан с символическими ссылками. При запуске приложения Flatpak создаёт внутри песочницы каталоги данных вроде /var/cache, /var/data, /var/config и /var/tmp. Часть пути при этом может контролироваться приложением. Из-за недостаточной защиты символическая ссылка могла перенаправить операцию к произвольному месту файловой системы хоста.

Дальше включался bwrap, компонент, который помогает строить песочницу. Flatpak передавал ему путь для bind-mount, а ядро Linux следовало по символической ссылке. В результате выбранный каталог хоста оказывался доступен внутри песочницы.

В advisory описан максимальный эффект: произвольное чтение и запись файлов хоста с возможностью дальнейшего выполнения кода в контексте основной системы. На момент публикации advisory отдельный CVE-идентификатор для этой проблемы ещё запрашивался, поэтому проект использует номер GHSA-8688-9x26-hhxj.

Почему один такой дефект меняет восприятие патч-релиза? Песочница должна быть границей между приложением и системой, а здесь у приложения появлялся технический путь через эту границу. Исправление 1.18.1 переводит работу с соответствующими каталогами на более жёсткую проверку путей и добавляет регрессионные тесты.

Три уязвимости High затрагивали root и системный helper

Уровень High получили ещё три проблемы. Две из них напрямую связаны с операциями, которые в определённых сценариях выполняются с системными привилегиями.

GHSA-qrwq-7qwx-q9rp находится в revokefs — механизме, через который flatpak-system-helper принимает данные репозитория от непривилегированных процессов. Проверка отбрасывала буквальные компоненты .., но символические ссылки оставляли возможность выйти за ожидаемый каталог. Активный локальный пользователь мог вмешаться в OSTree-объект уже после проверки подписи и добиться записи в выбранные пути с привилегиями root.

GHSA-fqx6-vh4p-42cg затрагивает извлечение extra-data. Специально подготовленный либо скомпрометированный Flatpak-репозиторий мог направить запись загруженных данных в произвольное место файловой системы. При системной установке этот код выполняется с правами root. Причиной снова стала обработка путей: символические ссылки и компоненты .. позволяли покинуть каталог files/extra.

Третья проблема High, GHSA-v2gw-v9h5-9q4x, связана с непроверенным параметром архитектуры в DeployAppstream. При наличии OCI remote локальный пользователь мог заставить flatpak-system-helper создать принадлежащие root каталоги и файлы за пределами ожидаемого дерева. В advisory отдельно сказано, что сочетание этой ошибки с другими проблемами из 1.18.1 способно привести к локальному повышению привилегий.

Общий мотив у этих трёх исправлений один: данные, которые выглядят как обычные имена путей или метаданные репозитория, пересекали границу доверия и попадали в операции с повышенными правами. В 1.18.1 разработчики усилили проверку имён, архитектур и файловых переходов.

OCI-механизмы получили отдельный пакет защиты

Несколько исправлений касаются OCI — формата и инфраструктуры контейнерных образов, которые Flatpak умеет использовать в качестве удалённого источника. Эти сценарии зависят от конкретной конфигурации, поэтому круг затронутых систем отличается от критической ошибки песочницы.

GHSA-9rww-v4mm-x4jg затрагивала Flatpak 1.17.0–1.18.0. Злонамеренный OCI registry мог поместить в слой специально подготовленную hardlink-ссылку на файл хоста. При системной установке такой механизм позволял прочитать даже чувствительные файлы вроде /etc/shadow. В advisory отдельно указано, что стандартный транспорт OSTree этим дефектом не затронут.

GHSA-jr92-2v97-wgvc относится к 32-битным системам. Парсер OCI delta stream читал размеры как 64-битные значения, а затем передавал их функциям, где gsize имеет ширину 32 бита. Усечение числа могло привести к слишком маленькому выделению памяти и последующему переполнению буфера. Разработчики описывают возможный результат как выполнение кода в процессе Flatpak при установке или обновлении из вредоносного OCI registry. Для 64-битных систем advisory считает этот конкретный сценарий практически неэксплуатируемым.

Релиз затронул OCI и на уровне обычной надёжности. Flatpak теперь проверяет подписи через зеркальный репозиторий в system helper, применяет TLS-сертификаты к запросам OCI registry и передаёт ошибки записи потока в curl. Отдельно исправлен сбой при разборе OCI JSON.

Остальные исправления закрывают обход downgrade и ошибки путей

Пять проблем уровня Moderate и Low показывают, насколько широко разработчики проверяли операции с путями, расширениями и системными установками.

GHSA-8qxj-x646-phcm касается разработчиков, использующих flatpak build-init с SDK extensions. Вредоносный SDK мог задать каталог с ../ и вывести копирование файлов за пределы рабочего дерева.

GHSA-99wv-m8rp-g58x использовала символическую ссылку вместо ~/.var/app/$appid/.ld.so. В таком сценарии Flatpak мог записать файлы с фиксированными именами и содержимым в выбранное место хоста. Разработчики оценивают практическую эксплуатацию как затруднённую, поскольку атакующий не контролирует имена и содержимое этих файлов.

GHSA-w69g-9x8j-7p8f позволяла вредоносному расширению определять существование произвольных файлов и каталогов на хосте. Та же группа ошибок в метаданных могла направлять содержимое расширения в неожиданные места внутри песочницы.

GHSA-q4gr-vc25-57m5 затрагивала многопользовательские системы. Активный локальный пользователь мог обойти anti-downgrade-проверку и понизить системное приложение или runtime до более старой версии. Такой сценарий создавал возможность вернуть сборку, в которой уже известные уязвимости ещё сохранялись. GitHub оценивает эту проблему в 5,4 балла по CVSS 4.0.

В сумме релиз показывает повторяющийся технический сюжет: абсолютные пути, .., symlink и hardlink несколько раз оказывались точкой выхода из предполагаемой области файловой операции. Исправления 1.18.1 переводят ряд таких действий на проверки относительно заранее открытых файловых дескрипторов и более строгую валидацию компонентов пути.

Flatpak 1.18.1 исправляет portal, права запуска и экспорт metainfo

За пределами security-блока релиз содержит набор ошибок, которые могли проявляться в обычной работе и разработке Flatpak-приложений.

Разработчики исправили регрессию обработки окружения в flatpak-spawn через portal и ошибки в отрицательных строках разрешений для параметров allow и share. Исправлен сбой сборки при экспорте releases.xml из metainfo, а попытка file forwarding с пустым путём теперь завершается явной ошибкой.

Ещё две группы исправлений связаны со стабильностью: устранены падения в portal update monitor и при обработке OCI JSON. Для flatpak_instance_get_all поправлена GI annotation, которая влияет на использование API через GObject Introspection. Bash completion получил очистку и корректировки, а внутренний код — дополнительные исправления падений и обработки ошибок.

Для пользователя эти изменения могут быть почти незаметны визуально. Их проявление находится в другом месте: корректном запуске приложений через portal, предсказуемой обработке разрешений, сборке метаданных и устойчивости операций с OCI.

Стабильная 1.18.1 вышла рядом с предварительной 1.19.0

11 августа проект опубликовал сразу две версии. Flatpak 1.19.0 появился как Pre-release, а 1.18.1 GitHub пометил как Latest. Обе ветки получили тот же основной набор security fixes, при этом 1.19.0 включает дополнительные функции и изменения, предназначенные для следующего цикла разработки.

Контраст с Flatpak 1.18.0, выпущенным 8 июня, хорошо показывает смену приоритета. Версия 1.18.0 добавила поддержку AMD /dev/kfd через разрешение DRI, улучшила сообщения flatpak update, работу flatpak-coredumpctl и запуск интеграции с fish. Версия 1.18.1 сосредоточилась на закрытии найденных уязвимостей и регрессий уже стабильной ветки.

Такой синхронный выпуск позволяет увидеть структуру разработки Flatpak в момент раскрытия проблем: активная 1.19 получает исправления вместе с новыми возможностями, а стабильная 1.18 получает отдельный патч с теми же ключевыми защитными изменениями.

Ветка 1.18 после 11 августа получила новую границу безопасности

На 12 августа 2026 года официальный GitHub помечает Flatpak 1.18.1 как актуальный стабильный релиз, а 1.19.0 — как предварительный. Все десять security-пунктов из release notes вошли в 1.18.1; критическая GHSA-8688-9x26-hhxj указывает версии до 1.18.0 включительно как уязвимые и 1.18.1 как исправленную.

Для ряда проблем разработчики подготовили переносы исправлений в ветку 1.16.x, что имеет значение для дистрибутивов, сохраняющих LTS-версии Flatpak. Уязвимость OCI archive extraction GHSA-9rww-v4mm-x4jg имеет отдельную границу: она появилась в 1.17.0, поэтому ветку 1.16.x авторы advisory считают незатронутой этим конкретным дефектом.

Часть раскрытых 11 августа проблем пока фигурирует под GHSA-идентификаторами без назначенных CVE. Дальнейшая картина будет зависеть от присвоения CVE и от того, как быстро исправления появятся в пакетах конкретных Linux-дистрибутивов; официальный релиз Flatpak сроков распространения по сторонним репозиториям не задаёт.

При использовании материалов сайта необходимо указывать ссылку на TGLand.ru. Если вы копируете фрагменты текста в интернете, прямая гиперссылка, доступная для индексации поисковыми системами, должна быть размещена в начале материала.

Вам также может понравиться