oss-sec mailing list archives
flatpak: CVE-2023-28101: escape characters in metadata can hide app permissions in terminal
From: Simon McVittie <smcv () debian org>
Date: Fri, 17 Mar 2023 10:00:04 +0000
https://github.com/flatpak/flatpak/security/advisories/GHSA-h43h-fwqx-mpp8 Vulnerable: all < 1.10.8, 1.12.x < 1.12.8, 1.14.x < 1.14.4, 1.15.x < 1.15.4 Fixed: 1.15.4, 1.14.x >= 1.14.4, 1.12.x >= 1.12.8, 1.10.x >= 1.10.8 Flatpak is a system for building, distributing, and running sandboxed desktop applications on Linux. When installing or upgrading a Flatpak app using the flatpak(1) CLI, the user is normally shown any special permissions that the new app has in its metadata, so that they can make a somewhat informed choice about whether to allow its installation. Ryan Gonzalez discovered that malicious Flatpak app maintainers could manipulate or hide this display of permissions by requesting permissions that include ANSI terminal control codes or other non-printable characters. This was fixed in Flatpak 1.14.4, 1.15.4, 1.12.8 and 1.10.8 by displaying non-printable characters in an escaped format (\xXX, \uXXXX, \UXXXXXXXX) so that they do not alter the terminal's behaviour, and also by treating non-printable characters in certain contexts as invalid (not allowed). Mitigation: graphical frontends for libflatpak, like GNOME Software and KDE Plasma Discover, are not directly affected by this. When retrieving an app's permissions to show to the user, the graphical frontend continues to be responsible for filtering or escaping any characters that would have a special meaning for its GUI libraries. Workaround: use a GUI like GNOME Software rather than the command-line interface, or only install apps whose maintainers you trust.
Current thread:
- flatpak: CVE-2023-28101: escape characters in metadata can hide app permissions in terminal Simon McVittie (Mar 17)