Luka w Flatpak pozwoliła uniknąć trybu izolacji

Luka w zabezpieczeniach

Simon McVittie ujawnił niedawno który zidentyfikował lukę (CVE-2021-21261) że pozwala uniknąć izolacji izolowanej przestrzeni i uruchom dowolny kod w środowisku systemu hosta w narzędziu do wdrażania i zarządzania pakietami Flatpak.

Słaby punkt jest obecny w usłudze D-Bus flatpak-portal (portal-flatpak znany również pod nazwą usługi D-Bus org.freedesktop.portal.Flatpak), który zapewnia uruchomienie „portali” służących do organizowania dostępu do zasobów poza kontenerem.

O orzeczeniu

A chodzi o to, że wspomniana luka w zabezpieczeniach nie istnieje, ponieważ wynika ona z działania usługi „Portal Flatpak” umożliwia aplikacjom piaskownicy uruchamianie własnego procesu podrzędnego w nowym środowisku piaskownicy, do którego są stosowane te same lub silniejsze ustawienia izolacji (na przykład w celu obsługi niezaufanej zawartości).

Luka jest wykorzystywana, ponieważ przekazuje określone zmienne środowiskowe procesu wywołującego do nieizolowanych kontrolerów z systemu hosta (na przykład, uruchamiając polecenie «flatpack run«). Złośliwa aplikacja może ujawnić zmienne środowiskowe, które wpływają na wykonanie flatpak i wykonać dowolny kod po stronie hosta.

Usługa pomocy sesji flatpak (org.freedesktop.flatpakal kto uzyskuje dostęp flatpak-spawn – gospodarz) ma na celu dostarczenie oznaczonych aplikacji szczególnie możliwość wykonania dowolnego kodu w systemie hosta, więc nie jest luką w zabezpieczeniach, że opiera się również na dostarczonych mu zmiennych środowiskowych.

Przyznanie dostępu do usługi org.freedesktop.Flatpak wskazuje, że aplikacja jest godna zaufania i może legalnie wykonać dowolny kod poza piaskownicą. Na przykład zintegrowane środowisko programistyczne GNOME Builder jest oznaczone jako zaufane w ten sposób.

Usługa D-Bus portalu Flatpak umożliwia aplikacjom w piaskownicy Flatpak uruchamianie własnych wątków w nowej piaskownicy, z tymi samymi ustawieniami zabezpieczeń co dzwoniący lub z bardziej restrykcyjnymi ustawieniami zabezpieczeń.

Przykład tego, jest to, że wspomina się, że w przeglądarkach internetowych spakowanych z Flatpak jako Chromium, aby rozpocząć wątki który będzie przetwarzał niezaufane treści internetowe i zapewni tym wątkom bardziej restrykcyjną piaskownicę niż sama przeglądarka.

W wersjach podatnych na ataki usługa portalu Flatpak przekazuje zmienne środowiskowe określone przez wywołującego do procesów innych niż piaskownica w systemie hosta, aw szczególności do polecenia uruchomienia flatpak, które jest używane do uruchamiania nowej instancji piaskownicy.

Złośliwa lub zhakowana aplikacja Flatpak może ustawić zmienne środowiskowe zaufane przez polecenie uruchomienia flatpak i użyć ich do wykonania dowolnego kodu, który nie znajduje się w piaskownicy.

Należy pamiętać, że wielu programistów flatpak wyłącza tryb izolacji lub daje pełny dostęp do katalogu domowego.

Na przykład pakiety GIMP, VSCodium, PyCharm, Octave, Inkscape, Audacity i VLC są dostarczane z ograniczonym trybem izolacji. Jeśli pakiety z dostępem do katalogu domowego są zagrożone pomimo obecności tagu «piaskownica»W opisie pakietu osoba atakująca musi zmodyfikować plik ~ / .bashrc, aby mógł wykonać swój kod.

Osobną kwestią jest kontrola nad zmianami pakietów i zaufanie do twórców pakietów, którzy często nie są powiązani z głównym projektem lub dystrybucjami.

Rozwiązanie

Wspomniano, że problem został rozwiązany w wersjach Flatpak 1.10.0 i 1.8.5, ale później pojawiła się regresywna zmiana w wersji, która spowodowała problemy z kompilacją w systemach z obsługą bubblewrap ustawioną z flagą setuid.

Następnie wspomniana regresja została naprawiona w wersji 1.10.1 (podczas gdy aktualizacja dla gałęzi 1.8.x nie jest jeszcze dostępna).

W końcu jeśli chcesz dowiedzieć się więcej na ten temat Jeśli chodzi o raport podatności, możesz sprawdzić szczegóły W poniższym linku.


Zostaw swój komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *

*

*

  1. Odpowiedzialny za dane: Miguel Ángel Gatón
  2. Cel danych: kontrola spamu, zarządzanie komentarzami.
  3. Legitymacja: Twoja zgoda
  4. Przekazywanie danych: Dane nie będą przekazywane stronom trzecim, z wyjątkiem obowiązku prawnego.
  5. Przechowywanie danych: baza danych hostowana przez Occentus Networks (UE)
  6. Prawa: w dowolnym momencie możesz ograniczyć, odzyskać i usunąć swoje dane.