I Flatpak-værktøjet, der er designet til at oprette selvstændige pakker, der ikke er knyttet til specifikke Linux-distributioner og isolerede fra resten af systemet, er der blevet opdaget en sårbarhed (CVE-2024-32462). Sårbarheden tillader et ondsindet eller kompromitteret program, der leveres i en flatpak-pakke, at omgå den etablerede sandbox-isolationsmetode og få adgang til filer i hovedsystemet. Problemet opstår kun i pakker, der bruger Freedesktop-porte (xdg-desktop-portal), der anvendes til at organisere adgangen til ressourcer i brugerens miljø fra isolerede programmer. Sårbarheden er blevet rettet i opdateringerne af flatpak 1.15.8, 1.14.6, 1.12.9 og 1.10.9. En workaround til beskyttelse er også blevet foreslået i versionerne af xdg-desktop-portal 1.16.1 og 1.18.4.
På grund af sårbarheden kan et program, der befinder sig i et isoleret miljø, bruge xdg-desktop-portal-grænsefladen til at oprette en '.desktop'-fil med startkommandoen for programmet fra flatpak, som giver adgang til filer i hovedsystemet. For at komme ud af det isolerede miljø anvendes manipulationer med parameteren '—command', der bruges til at overføre navnet på programmet inden i flatpak-pakken, som skal startes i det isolerede miljø. For at konfigurere det isolerede miljø kalder flatpak værktøjet bwrap, idet det giver det det angivne programnavn. For eksempel kan man bruge konstruktionen 'flatpak run —command=ls org.gnome.gedit' til at starte ls-værktøjet i det isolerede miljø af pakken, hvilket vil resultere i kørsel af 'bwrap ls'.
Essensen af sårbarheden er, at hvis programnavnet starter med tegnene '—', vil det blive opfattet af værktøjet bwrap som en egen option. For eksempel vil udførelsen af 'flatpak run —command=—bind org.gnome.gedit / /host ls -l /host' føre til, at 'bwrap —bind / /host ls -l /host' udføres, dvs. navnet '—bind' vil blive behandlet ikke som navnet på det startede program, men som en option for bwrap.
Sårbarheden forværres af det faktum, at D-Bus-interface "org.freedesktop.portal.Background.RequestBackground" giver en Flatpak-pakke mulighed for at angive enhver kommando til udførelse ved hjælp af "flatpak run --command", herunder dem, der starter med symbolet "--". Det antoges, at overførsel af enhver kommando ikke er farlig, da de vil blive udført i et isoleret miljø af pakken. Men det blev ikke taget i betragtning, at kommandoer, der starter med "--", vil blive behandlet som indstillinger af værktøjet bwrap. Resultatet er, at xdg-desktop-portal-interfacet kan bruges til at oprette en " .desktop"-fil med en kommando, der udnytter sårbarheden.
Kilde: opennet.ru
