11/06/2014

Rootowanie i jailbreaking: na czym polegają i jaki mają wpływ na bezpieczeństwo?

Porady

Właściciele smartfonów z systemem Android i iOS często mogą natrafić na gorące dyskusje, czy urządzenia te opłaca się rootować oraz robić na nich jailbreaka. W rzeczywistości są to hakerskie działania z paroma ciekawymi konsekwencjami. Nasz artykuł rozważy plusy i minusy tych operacji z punktu widzenia zwykłego użytkownika.

jailbreak_title

Mimo że ich nazwy nie brzmią podobnie, rootowanie i jailbreaking są zasadniczo tym samym. Różnica tkwi w podmiocie – pierwszy termin używany jest dla urządzeń z systemem Android, a drugi jest zarezerwowany dla systemu iOS. W nowym smartfonie wiele operacji może byćprzeprowadzonychjedynie przez oprogramowanie stworzone przez producenta danego sprzętu lub twórcę systemu operacyjnego, natomiast programy pobrane ze sklepów z aplikacjami mają ograniczony zakres działania. Rootowanie i jailbreaking polegają na wymuszeniu dostępu do uprawnień administratora, które pierwotnie są dla użytkownika ograniczone (np. dostęp do zegara procesora lub nadpisywanie plików systemowych). Omijając ograniczenia producenta, użytkownik może zrobić wszystko na swoim smartfonie przy pomocyspecjalnych programów. Ze zwiększoną dostępnością wiąże się oczywiście większa odpowiedzialność: „absolutnie wszystko” obejmuje takie skrajności jak „uceglenie smartfona” (sytuacja, w której Twój telefon jest przeładowany informacjami i nie chce się poprawnie włączać) oraz instalacja oprogramowania szpiegującego.

Czy należy bać się jailbreakingu/rootowania?

Bądźmy szczerzy: szacuje się, że od 50% do 90% użytkowników zdecydowało się na jailbreak lub zrootowanie swojego urządzenia, aby umożliwić sobie zainstalowanie pirackich gier lub aplikacji bez ograniczeń. Pomimo że ja zdecydowanie nie pochwalam takiej praktyki, istnieją konkretne argumenty,  które przemawiają za takimi działaniami.

Po pierwsze, instalowanie aplikacji z uprawnieniami administratora otwiera przed Twoim smartfonem nieograniczone możliwości. Umożliwia na przykład zainstalowanie programu, który zmienia głośność dzwonka w zależności od tego, kto dzwoni; bierze pod uwagę aktualnewarunki otoczenia (na podstawie poziomu szumu badanegoprzez mikrofon); a także analizuje obraz z kamery oraz „czyta” ruchy i pozycje, aby rozpoznać, czy telefon znajduje się w torebce, czy w kieszeni.

Rootowanie oraz jailbreaking umożliwiają nabycie pełnych uprawnień administratora na urządzeniu, pozwalając programom innych firm na wykonywanie operacji, które pierwotnie nie były dla nich dostępne.

Po drugie, zezwala na elastyczne zarządzanie aplikacjami. Titanium Backup to bardzo dobrze rozwinięty  i elastyczny „wehikuł czasu”- program, który jest chyba najbardziej znaną aplikacją do rootowania dla systemu Android. Dzięki temu programowi użytkownicy mogą łatwo przenieść dane ze swojego starszego smartfona na nowe urządzenie lub przywrócić starszą wersję aplikacji, gdy nowa nas nie satysfakcjonuje.

Po trzecie, może dodać nowe funkcje zabezpieczeń. Niemniej jednak na tę kwestię warto by poświęcić cały rozdział.

Proces rootowania i jailbreakingu

Na telefonie z systemem Android uprawnienia administratora mogą być legalnie uzyskane za zgodą producenta. Oto, jak to się zwykle odbywa: użytkownicy muszą wpisać unikatowy numer swojego smartfona (IMEI), a następnie pobrać niezbędne oprogramowanie. Zostanie odblokowany tryb programowania smartfona i będzie można uruchomić zmodyfikowany system operacyjny, który udzieli użytkownikowi pełnych uprawnień. Brzmi nieco skomplikowanie? I tak ma być, bo jest to celowy zabieg producentówmający na celu odebranie gwarancji na takie telefony i nadanie im statusu „urządzenia programisty”.

Z tego powodu użytkownicy i entuzjastyczni hakerzy często podążają jeszcze inną drogą: szukają luk w oprogramowaniu smartfona, dzięki którym mogą mieć pełne uprawnienia bez konsultacji z producentem. Sposób ten przypomina działanie szkodliwego oprogramowania, które wykorzystuje luki w przeglądarce internetowej, dzięki czemu może się automatycznie zainstalować bez Twojej wiedzy, a tym bardziej pozwolenia. Aby zrootować swojego smartfona przy pomocy takiej luki, należy podłączyć go do komputera kablem USB oraz uruchomić aplikację na komputerze (bądź otworzyć program na telefonie). W ciągu kilku minut telefon zostanie zrootowany, a Ty nie będziesz musiał już nigdy więcej powtarzać tej procedury.

Jailbreaking iPhone’a/iPada również opiera się na wykorzystaniu luk w zabezpieczeniach. Zazwyczaj można go wykonać poprzez podłączenie iPhone’a do komputera i włączenie odpowiedniego programu. Niemniej jednak istnieje łatwiejszy sposób na jailbreaka na starszych urządzeniach. Jakiś czas temu ogromną popularnością cieszył się serwis Jailbreakme, który wykorzystywał lukę w przeglądarce Safari. Za pomocą tej strony użytkownicy mogli uzyskać pełne uprawnienia na ich iPhonie/iPadzie poprzez jednorazowewejście na stronę za pośrednictwem urządzenia i kliknięcie przycisku „Jailbreak me”. Niedługo później firma Apple załatała tę lukę, a pomysłodawca i programista witryny … otrzymał posadę. Widać, rozwaga jest w cenie.

Główną konsekwencją stosowania rootowania/jailbreakingu jest możliwość instalacji dodatkowych programów zarządzających, które oferują nowe funkcjonalności. Dla iOSa „złotym laurem” jest przykład Cydii – alternatywnego sklepu z aplikacjami; dla Androida natomiast jest to możliwość zainstalowania aplikacji SU lub SuperSU. Ta ostatnia zarządza dostępem do całej administracji telefonu, podpowiadając użytkownikowi, którym aplikacjom umożliwić, a którym zablokować dostęp.

Cydia-iOS-6_SuperSU

Rootowanie/jailbreaking a korzyści dla bezpieczeństwa

Aplikacje wykorzystujące możliwość dostępu do pełnych uprawnień są w stanie ochronić smartfona lub tablet użytkownika w całkowicie inny sposób. Na przykład w standardowym telefonie z systemem Android słabym punktem jestzapora sieciowa– mówiąc dokładniej, jest ona zintegrowana z systemem, przez co wszelkie próby ingerencji są niewykonalne. Wyłącznie aplikacja posiadająca status administratora może zmienić reguły zapory, np. poprzez blokowanie niektórym aplikacjom dostępu do sieci w podczas włączonej usługi roamingu.

W najnowszych wersjach iOS system pozwala na elastyczne zarządzanie dostępem do danych przyznanych poszczególnym aplikacjom: każda z nich uzyskuje specjalny dostęp do określonych rodzajów danych osobowych, takich jak zdjęcia, kontakty, lokalizacja itp. Podobna funkcja istnieje również w Androidzie, jednakże użytkownicy tego systemu nie mają możliwości korzystania z niej: widzą jedynie całą listę uprawnień, których żąda aplikacja przed jej instalacją. Jeżeli nie odpowiada im chociażby jeden z wymogów – mogą jedynie odrzucić instalację. Rozwiązaniem może być instalacja jednego z programów, który odblokuje możliwość elastycznego zarządzania uprawnieniami dla zainstalowanych aplikacji – w każdym indywidualnym przypadku. Innymi słowy – można jakby rozłożyć program na czynniki pierwsze i wyłączyć funkcję lokalizacji, jeżeli na przykład uważasz, że nie powinien jej mieć.

Wiele aplikacji uzna rootowanie/jailbreaking za zagrożenie dla bezpieczeństwa i odmówi uruchomienia na odblokowanym urządzeniu.

Zarówno w iOS, jak i na Androidzie, aplikacje z uprawnieniami administratora mogą mieć dodatkowe funkcje antykradzieżowe. Na przykład: w iOS-ie jest aplikacja, która robi zdjęcia złodziejowi podczas wyświetlania ekranu blokady, w Androidzie natomiast są programy, które same się zapisują w pamięci ROM i mogą przetrwać nawet po przywróceniu ustawień fabrycznych. Oczywiście należy pamiętać, że powyższe aplikacje nie zostały przetestowane przez producenta, a co za tym idzie – mogą zachowywać się w sposób nieprzewidywalny, np. rozładowując baterię, a nawet zamieniając smartfona w całkowicie bezużyteczny sprzęt. Z powodu tak wysokiego ryzyka większość aplikacji deweloperskich, łącznie z Kaspersky Internet Security for Android, nie używa funkcji, które wymagają zastosowania rootowania/jailbreakingu.

Rootowanie/jailbreaking a zagrożenia dla bezpieczeństwa

Wiele aplikacji uważa rootowanie/jailbreaking za zagrożenia dla bezpieczeństwa, dlatego też odmawiają uruchomienia się na odblokowanym urządzeniu. Programy klasy MDM (Mobile Device Management) zainstalowane w telefonie działają w oparciu o zarządzanie danymi– służą katalogowaniu i przeglądaniu dokumentów roboczych i e-maili. Mobilne aplikacje bankowe również odmówią uruchomienia większości swoich funkcji na odblokowanym urządzeniu. I takie decyzje wcale nikogo nie dziwią.

Oprócz wyżej wymienianych zagrożeń, które przemieniają Twojego inteligentnego smartfona w kawałek bezużytecznego plastiku, rootowanie i jailbreaking otworzyły nowy rozdział w katalogu zagrożeń dla bezpieczeństwa użytkownika.

Po pierwsze, aplikacja, która otrzymała pełne uprawnienia administratorskie, wychodzi z tzw. piaskownicy, a więc jej deklarowane funkcje i przyznane uprawnienia już nie obowiązują. Program będzie w stanie robić wszystko, co chce, włączając w to czytanie i wysyłanie dokumentów z innych aplikacji, podglądanie pozostałej zawartości urządzenia, używanie mikrofonu bez wiedzy użytkownika itp.

Po drugie, aplikacje do rootowania lub jailbreakingu są przeważnie tworzone przez małe grupy amatorów, jest więc bardzo prawdopodobne, że zawierają niechlujnie napisany kod i zawierają niebezpieczne luki. A te mogą szybko zostać wykorzystane przez pozornie legalną aplikację do przekazania praw administracyjnych Twojego telefonu cyberprzestępcom.

Po trzecie, wiele zmian w konfiguracji telefonu podczas rootowania i jailbreakingu może być po prostu prezentem dla atakującego: jailbreaking większości modeli iPhone’a sprawia, że są one zdalnie sterowalne, ponieważ wszystkie urządzenia posiadają jedno hasło. Oczywiście można je zmienić, lecz mało kto faktycznie to robi.

Twoje bezpieczeństwo nie jest gwarantowane

Rootowanie/jailbreaking poważnie wpływa na bezpieczeństwo, jednak trzymanie się z daleka od takich praktyk również Ci go nie zagwarantuje. Napastnik może wykorzystać lukę w oprogramowaniu Twojego smartfona i uzyskać uprawnienia administracyjne dla swojej szkodliwej aplikacji  bez użycia programów pośredniczących, takich jak SuperSU. W tym przypadku nie ma wielkiej różnicy pomiędzy urządzeniami nienaruszonymi a tymi odblokowanymi. Wyżej wspomniana strona Jailbreakme.com jest tego żywym przykładem. Jeżeli właściciel tej witryny byłby łotrem, mógłby bez problemu wykorzystać tę lukę. Zamiast oferowania bezpłatnego jailbreakingu dla wszystkich, mógłby na przykład potajemnie instalować oprogramowanie szpiegujące. Inna intrygująca strona proponuje jakąś cyberinnowację, która pozwala na czytanie wiadomości innych użytkowników, instalując przy tymmagiczny przycisk „kliknij tutaj”… i w ten sposób wykonuje czarną robotę. Jak dotąd nie byliśmy świadomi takich scenariuszy, niemniej jednak nie możemy ignorować tego, że cyberprzestępcy w końcu mogą skorzystać z takich możliwości chociażby do przeprowadzenia ataków ukierunkowanych.

Istnieje jeszcze jedna, bardziej bezpośrednia różnica pomiędzy telefonem nienaruszonyma tym po procesie rootowania/jailbreakingu. Odblokowane urządzenie jest zazwyczaj pozbawione wszelkich gwarancji, więc pewnie wszystkie przyszłe problemy z telefonem będziesz musiał rozwiązywać na własną rękę (i koszt). Czy warto to zrobić, czy nie, jest Twoją indywidualną decyzją. Jednak niezależnie od Twojej woli stosowanie dodatkowych zabezpieczeń, takich jak Kaspersky Internet Security for Android, nigdy nie zaszkodzi.