Snap Store – przemycenie złośliwego kodu w Linux. Czy jest się czego obawiać?

avlab.pl 9 miesięcy temu
Zdjęcie: Snap Store – przemycenie złośliwego kodu w Linux. Czy jest się czego obawiać?


Firma Canonical, która rozwija system Ubuntu (dystrybucje serwerowe i wersje dla użytkowników domowych), jest chwalona oraz jednocześnie krytykowana za obieranie własnej drogi wprowadzenia do świata Linuksa kolejnego źródła oprogramowania, jakby Linux miał ich za mało. Chodzi o technologię instalowania systemu i zarządzania pakietami SNAP. Pakiety Snap są alternatywną dla Flatpak, AppImage oraz dotychczasowych pakietów DEB używanych domyślnie w Ubuntu 22 LTS i starszych.

Od wersji Ubuntu 23 LTS (Long-Term Support), które zostanie wydane w kwietniu 2024 roku, Ubuntu będzie posiadało wsparcie na kolejne dwa lata z domyślną obsługą „instalatorów Snap” ze swojego sklepu App Store, zamiast instalatorów pakietów DEB. O różnicach pomiędzy Snap, Flatpak, AppImage oraz DEB, możecie posłuchać na kanale Świat Linuxa.

Ubuntu LTS to najbardziej popularna odmiana dystrybucji dla desktopów, komputerów PC i laptopów oraz stacji roboczych dla pracowników. Za sprawą Snapów firma Canonical wprowadziła małą ewolucję do systemu, a zdaniem niektórych – ‘re’wolucję. Możesz przeczytać więcej o Snap w tym miejscu.

Internet jest pełen porównania Snap vs. DEB, czy Snap vs. Flatpak itp. Zdaniem niektórych ekspertów, Snapy są bardziej bezpieczne od DEB, bo do instalacji systemu nie wymagają uprawnień root, a zdaniem innych ekspertów, jest to chwilowe zachłyśnięcie się bezpieczeństwem do czasu poznania zalet Flatpak.

Tak czy inaczej, instalując jakiekolwiek oprogramowanie ze sklepu App Store w Ubuntu, pakiety ze wszystkimi zależnościami, niezbędnymi do obsługi oprogramowania, będą domyślnie instalowane ze Snapów.

Widok na zainstalowane oprogramowanie w Ubuntu z App Store.

Pakiety Snap, inaczej mówiąc, to „kapsułka” zawierająca konfigurację oraz oprogramowanie dla dystrybucji Linux, które wspierają Snapy. Najpopularniejszą dystrybucją jest Ubuntu, bo to Canonical zaczął rozwijać ten rodzaj pakietów. Jako użytkownicy Internetu na co dzień korzystamy z tzw. sklepów systemu w systemach Android (Google Play Store), Apple (App Store), Microsoft (Microsoft Apps) oraz kilku odmian sklepów w Linux.

Na czym polega potencjalny „atak”?

Załóżmy, iż będąc w terminalu, chcesz uruchomić edytor gedit. Wpisujesz „gedit”:

To tak zwane sugerowanie pakietów. Na to zwracają uwagę eksperci.

Oprogramowanie nie jest zainstalowane w systemie, więc system zarządzania pakietami proponuje Ci zainstalować jeden z dostępnych, poprzez APT lub Snap.

Zdaniem ekspertów, którzy przeanalizowali zależność „sugerowania” pakietów do instalacji, „sklep Snap Store nie jest żadnym poważnym zabezpieczeniem przed przemyceniem złośliwego kodu, biorąc pod uwagę brak rygorystycznych procesów przeglądu pakietów w porównaniu do APT”.

Teraz załóżmy, iż system w terminalu zwróci odpowiedź „sudo snap install gedit-chatgpt” – pakiet przygotowany przez autorów złośliwego kodu.

Co się może stać dalej, nie trzeba tłumaczyć w szczegółach.

Czy taki atak możliwy jest do przeprowadzenia?

W teorii, tak.

Kto najbardziej jest zagrożony?

Bardziej systemy produkcyjne, serwerowe, IoT, zarządzane przez administratorów z linii poleceń.

Kto ponosi odpowiedzialność za możliwość ataku?

Firma Canonical, która może gwałtownie rozwiązać problem ów teoretycznego exploita. Możliwe, iż trzeba się przyjrzeć systemowi sugerowania pakietów snap lub zaostrzyć zabezpieczenia podczas wprowadzania kodu do sklepu przez programistów i przez potencjonalnych autorów malware.

Z podobnego powodu sklep Google Play dla Androida od lat jest nadużywany przez autorów złośliwych aplikacji.

Jak można się zabezpieczyć, w teorii?

Korzystać ze sklepu App Store zamiast z linii poleceń, alternatywnie weryfikować literówki przy wpisywaniu systemu do zainstalowania. Oczywiście Snapy to takie samo źródło oprogramowanie, jak inne, dlatego to użytkownik jest odpowiedzialny za sprawdzenie, co i skąd instaluje.

Nie zachęcamy do zrezygnowania ze Snapów i zastąpienia ich czymś innym – o tym niech zdecydują użytkownicy, ponieważ wymaga do indywidualnego researchu, zaznajomienia się z systemem, oraz przestudiowaniu czym jest Snap i czym różni się od innych systemów zarządzania pakietami.

W teorii, użytkownicy desktopów nie są interesującym celem.

PS. Systemy Windows 10/11 z zainstalowaną obsługą powłoki Linux również są w zasięgu ataku.

Idź do oryginalnego materiału