En sårbarhet er identifisert i Flatpak-verktøysettet, designet for å lage selvstendige pakker som ikke er knyttet til spesifikke Linux-distribusjoner og er isolert fra resten av systemet (CVE-2024-32462). Sårbarheten gjør at en ondsinnet eller kompromittert applikasjon levert i flatpak-pakken kan omgå sandkasse-isolasjonsmodusen og få tilgang til filer på hovedsystemet. Problemet vises kun i pakker som bruker Freedesktop-portaler (xdg-desktop-portal), som brukes til å gi tilgang til ressurser i brukermiljøet fra isolerte applikasjoner. Sårbarheten ble løst i flatpak-oppdateringer 1.15.8, 1.14.6, 1.12.9 og 1.10.9. En sikkerhetsløsning ble også gitt i xdg-desktop-portal-utgivelsene 1.16.1 og 1.18.4.
Takket være sårbarheten kan en applikasjon som ligger i et sandkassemiljø bruke xdg-desktop-portal-grensesnittet til å lage en ".desktop"-fil med en kommando for å starte applikasjonen fra flatpak, som gir tilgang til filer på hovedsystemet. For å gå ut av det isolerte miljøet, manipuler parameteren "--command", som brukes til å sende navnet på programmet som ligger inne i flatpak-pakken som må kjøres i det isolerte miljøet. For å sette opp et miljø med sandkasse, kaller flatpak opp bwrap-verktøyet og gir det det spesifiserte programnavnet. For for eksempel å kjøre ls-verktøyet i et isolert pakkemiljø, kan du bruke konstruksjonen “flatpak run —command=ls org.gnome.gedit” som vil kjøre “bwrap <isolation_options> ls”.
Essensen av sårbarheten er at hvis programnavnet begynner med tegnene "—", vil det bli oppfattet av bwrap-verktøyet som sitt eget alternativ. For eksempel, å kjøre “flatpak run —command=—bind org.gnome.gedit / /host ls -l /host” vil utføre “bwrap <insulation_options> —bind / /host ls -l /host”, dvs. navnet "--bind" vil ikke bli behandlet som navnet på programmet som skal startes, men som et bwrap-alternativ.
Sårbarheten forverres av det faktum at D-Bus-grensesnittet "org.freedesktop.portal.Background.RequestBackground" lar en applikasjon fra Flatpak-pakken spesifisere hvilken som helst kommando som skal utføres ved å bruke "flatpak run -command", inkludert de som starter med karakteren "-". Det ble antatt at det ikke var farlig å sende kommandoer, siden de ville bli utført i et isolert miljø av pakken. Men det ble ikke tatt i betraktning at kommandoer som starter med "—" vil bli behandlet som alternativer av bwrap-verktøyet. Som et resultat kan xdg-desktop-portal-grensesnittet brukes til å lage en ".desktop"-fil med en kommando som utnytter sårbarheten.
Kilde: opennet.ru
