CVE-2026-96808
WysokieCVSS 7.4Streszczenie
W Flatpak przed wersją 1.18.1, writer revokefs, używany przez flatpak-system-helper do odbierania danych repozytorium od nieuprzywilejowanych wywołań, walidował ścieżki plików odrzucając dosłowne składniki .., ale nie zapobiegał przechodzeniu przez dowiązania symboliczne. Złośliwy użytkownik lokalny w aktywnej sesji lokalnej mógł uzyskać dwie sesje revokefs przez systemowego pomocnika, utworzyć dowiązanie symboliczne w jednej sesji wskazujące na katalog drugiej sesji i zachować deskryptor pliku przez to dowiązanie. Pozwoliło to atakującemu na modyfikację plików należących do innej sesji revokefs po ich walidacji i imporcie przez systemowego pomocnika. W szczególności atakujący mógł manipulować obiektami commit ostree w repozytorium systemowym po przejściu weryfikacji podpisu, umożliwiając zapis plików kontrolowanych przez roota do wybranych przez atakującego ścieżek i lokalną eskalację uprawnień do roota.
Ocena ryzyka
Ryzyko lokalnej eskalacji uprawnień do roota oraz manipulacji plikami systemowymi, co może prowadzić do pełnej kompromitacji systemu.
Rekomendacja
Zaktualizuj Flatpak do wersji 1.18.1 lub nowszej, która zawiera poprawkę. Ogranicz dostęp lokalnych użytkowników do sesji revokefs.
Inne podatności w Flatpak
Zobacz wszystkie- CVE-2026-96807Średnie
W Flatpak przed wersją 1.18.1 złośliwa aplikacja w sandboxie może zamienić plik ~/.var/app/$appid/.ld.so na dowiązanie symboliczne, co powoduje zapis plików w dowolnej lokalizacji przez regenerate_ld_cache. Nazwy plików i ich treść nie są kontrolowane przez atakującego, co utrudnia wykorzystanie.
- CVE-2026-96275Wysokie
Złośliwe lub przejęte repozytorium Flatpak może zapisać treści kontrolowane przez atakującego w dowolnych lokalizacjach w systemie plików hosta poprzez extract_extra_data(). W instalacjach systemowych zapis odbywa się jako root. Łączą się dwa problemy: `files/extra` jest rozwiązywane przez operacje na ścieżkach, które podążają za dowiązaniami symbolicznymi, a nazwy blobów z `xa.extra-data-sources` nie są sanityzowane pod kątem traversal `..`.
- CVE-2017-9780Wysokie
W Flatpak przed wersją 0.8.7, zewnętrzne repozytoria aplikacji mogły zawierać złośliwe aplikacje z plikami o niewłaściwych uprawnieniach, takimi jak setuid lub zapisywalne dla wszystkich. Takie pliki mogły być uruchamiane przez lokalnego atakującego lub umożliwiały zapis do lokalizacji zapisywalnej dla wszystkich.
- CVE-2026-96276Krytyczne
Jeśli złośliwy kontener SDK deklaruje punkt rozszerzenia z spreparowaną ścieżką `directory`, a programista uruchomi `flatpak build-init --writable-sdk --sdk-extension` z tym SDK, pliki wybrane przez atakującego mogą zostać zapisane poza katalogiem roboczym, ponieważ ścieżka docelowa jest rozwiązywana przez funkcję, która pozwala na przejście `..`.
- CVE-2026-34078Krytyczne
Flatpak w wersjach przed 1.16.4 zawiera podatność, w której portal Flatpak akceptuje ścieżki w opcjach sandbox-expose, które mogą być dowiązaniami symbolicznymi kontrolowanymi przez aplikację, wskazującymi na dowolne ścieżki. Flatpak montuje rozwiązaną ścieżkę hosta w piaskownicy, co daje aplikacjom dostęp do wszystkich plików hosta i może być używane jako prymityw do uzyskania wykonania kodu w kontekście hosta.
- CVE-2026-90616Wysokie
W Flatpak przed wersją 1.18.1 złośliwa aplikacja w sandboxie może uzyskać dowolny dostęp do odczytu i zapisu plików na hoście, co może zostać eskalowane do wykonania dowolnego kodu na hoście. Flatpak tworzy katalogi danych aplikacji (np. /var/cache, /var/data, /var/config, /var/tmp) w każdym sandboxie przy każdym uruchomieniu aplikacji, gdzie w niektórych przypadkach komponenty ścieżki są kontrolowane przez atakującego. Brak ochrony przed dowiązaniami symbolicznymi może przekierować te katalogi, a złośliwe dowiązanie może wskazywać na dowolne lokalizacje na hoście i zostać zamontowane wewnątrz sandboxa.
- CVE-2026-76925Średnie
W Flatpak znaleziono usterkę. Istnieje podatność typu Time-of-check to time-of-use (TOCTOU) w komponencie `org.freedesktop.Flatpak.SystemHelper`. Podatność występuje, ponieważ uprzywilejowana operacja `chmod` jest wykonywana przed walidacją repozytorium OSTree w funkcji `Deploy()`. Atakujący może wykorzystać to okno czasowe, aby przekierować dowiązania symboliczne do dowolnych plików, co może prowadzić do nieautoryzowanej manipulacji plikami lub ujawnienia informacji.
- CVE-2026-34079Wysokie
W Flatpak przed wersją 1.16.4 mechanizm buforowania ld.so usuwa nieaktualne pliki cache bez sprawdzania, czy ścieżka kontrolowana przez aplikację znajduje się w katalogu cache. Umożliwia to aplikacjom Flatpak usuwanie dowolnych plików na hoście.
Oryginalny opis (angielski, źródło NVD)
In Flatpak before 1.18.1, the revokefs writer, used by the flatpak-system-helper to receive repository data from unprivileged callers, validated file paths by rejecting literal .. components but did not prevent symlink traversal. A malicious local user in an active local session could obtain two revokefs sessions via the system helper, create a symlink in one session pointing into the other session's directory, and retain a file descriptor through that symlink. This allowed the attacker to modify files belonging to a different revokefs session after they had been validated and imported by the system helper. In particular, an attacker could use this to tamper with ostree commit objects in the system repository after they passed signature verification, enabling root-controlled file writes to attacker-chosen paths and local root privilege escalation.

