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

15 lutego, 2024

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 oprogramowania 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 oprogramowania 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.

ubuntu app store
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 oprogramowania 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, że będąc w terminalu, chcesz uruchomić edytor gedit. Wpisujesz „gedit”:

ubuntu terminal snap
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, że 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 szybko rozwiązać problem ów teoretycznego exploita. Możliwe, że 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 oprogramowania 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.

Picture of Adrian Ścibor

Adrian Ścibor

W ramach działań związanych z cyberbezpieczeństwem odpowiada w AVLab za przeprowadzanie testów rozwiązań ochronnych przed zagrożeniami. Opracowuje strategie oraz narzędzia, które pomagają w ochronie danych i systemów przed cyberatakami. Współuczestnik międzynarodowej grupy non-profit AMTSO, która zrzesza ekspertów IT.
Picture of Adrian Ścibor

Adrian Ścibor

W ramach działań związanych z cyberbezpieczeństwem odpowiada w AVLab za przeprowadzanie testów rozwiązań ochronnych przed zagrożeniami. Opracowuje strategie oraz narzędzia, które pomagają w ochronie danych i systemów przed cyberatakami. Współuczestnik międzynarodowej grupy non-profit AMTSO, która zrzesza ekspertów IT.

PODZIEL SIĘ:

guest
1 Komentarz
najstarszy
najnowszy oceniany
Inline Feedbacks
View all comments

Wyrażam zgodę na przesłanie oferty drogą telefoniczną przez IT Partners security sp. z o.o. z siedzibą Katowicach ul.Padereskiego 35 na podany przeze mnie adres e-mail zgodnie z ustawą z dnia 10 maja 2018 roku o ochronie danych osobowych (Dz. Ustaw z 2018, poz. 1000) oraz zgodnie z Rozporządzeniem Parlamentu Europejskiego i Rady (UE) 2016/679 z dnia 27 kwietnia 2016 r. w sprawie ochrony osób fizycznych w związku z przetwarzaniem danych osobowych i w sprawie swobodnego przepływu takich danych oraz uchylenia dyrektywy 95/46/WE (RODO).

Wyrażam zgodę na przesłanie oferty drogą mailową przez IT Partners security sp. z o.o. z siedzibą Katowicach ul.Padereskiego 35 na podany przeze mnie adres e-mail zgodnie z ustawą z dnia 10 maja 2018 roku o ochronie danych osobowych (Dz. Ustaw z 2018, poz. 1000) oraz zgodnie z Rozporządzeniem Parlamentu Europejskiego i Rady (UE) 2016/679 z dnia 27 kwietnia 2016 r. w sprawie ochrony osób fizycznych w związku z przetwarzaniem danych osobowych i w sprawie swobodnego przepływu takich danych oraz uchylenia dyrektywy 95/46/WE (RODO).

[ninja_tables id=”27481″]