- Affected packages:
- flatpak @ 1.0.9 (+1 more)
Flatpak is a system for building, distributing, and running sandboxed desktop applications on Linux. in versions before 1.10.9, 1.12.9, 1.14.6, and 1.15.8, a malicious or compromised Flatpak app could execute arbitrary code outside its sandbox. Normally, the
--command argument of
flatpak run expects to be given a command to run in the specified Flatpak app, optionally along with some arguments. However it is possible to instead pass
bwrap arguments to
--command=, such as
--bind. It’s possible to pass an arbitrary
commandline to the portal interface
org.freedesktop.portal.Background.RequestBackground from within a Flatpak app. When this is converted into a
--command and arguments, it achieves the same effect of passing arguments directly to
bwrap, and thus can be used for a sandbox escape. The solution is to pass the
-- argument to
bwrap, which makes it stop processing options. This has been supported since bubblewrap 0.3.0. All supported versions of Flatpak require at least that version of bubblewrap. xdg-desktop-portal version 1.18.4 will mitigate this vulnerability by only allowing Flatpak apps to create .desktop files for commands that do not start with –. The vulnerability is patched in 1.15.8, 1.10.9, 1.12.9, and 1.14.6.