Magisk 14.5: bezkarne modyfikowanie Androida pod nosem wścibskich aplikacji
Kolejne wersje Androida czynią coraz trudniejszym odzyskanie nadnim pełnej kontroli. Na domiar złego, coraz więcej aplikacjiodmawia działania na urządzeniach, które zostały uwolnione – tojuż nie tylko oprogramowanie bankowe (np. Android Pay), ale też komunikatory(Snapchat), a nawet popularne gry (Fate/Grand Order). Czy to wszystkooznacza, że należy dać sobie spokój z rootowaniem smartfonów iniezależnymi od producenta wersjami ROM? Oczywiście że nie. Wwyścigu zbrojeń pomiędzy producentami a użytkownikami wciążwygrywają ci ostatni, dysponujący najlepszą chyba dziś bronią,tj. bezsystemowym środowiskiem modyfikacji Magisk. Jego najnowszawersja 14.5 jest w stanie ukryć się przed wszystkimi próbującymigo wywęszyć aplikacjami.
Standardowe metody rootowania urządzeń z Androidem bazują nazmianie zawartości partycji systemowej, wgraniu zmodyfikowanychbinarek superużytkownika (supersu), czy to przez wykorzystanie błęduw oprogramowaniu, czy też skorzystanie z alternatywnego narzędziarecovery, pozwalającego dowolnie modyfikować zawartość ROM.Magisk (A Magic Mask to Alter Android System Systemlessly) poszedłzupełnie inną drogą – modyfikuje partycję systemową bez jejmodyfikowania. Zmiany zapisywane są do pliku poza partycjąsystemową, który zostaje zamontowany jako kolejna partycja, anastępnie linuksowy kernel zostaje zmuszony do nałożenia tychzmodyfikowanych plików na oryginalne, tak że na każde żądaniezostaje zwrócona wersja zmodyfikowana, a nie producencka.
Takie podejście uodparnia Magiska na aktualizacje systemu –plik ze zmianami nie zostaje nigdy nadpisany, zarazem też utrudniawykrycie jego obecności w systemie. Dzisiaj może on na większościurządzeń przejść oficjalne testy Google Safety Net, dzięki czemumożemy z Magiskiem zainstalować aplikacje takie jak Snapchat.
Niestety coraz więcej aplikacji zaczyna na własną rękęwykrywać Magiska, odmawiając instalacji na systemach, którepoprzez niego uzyskały roota i korzystają z innych modyfikacji (np.świetnego korektora dźwięku ViperFX, frameworka Xposed czy choćbyfikuśnych fontów). Deweloper topjohnwu, twórca Magiska, znalazłsposób na poradzenie sobie i z tym problemem. W najnowszej wersji14.5, oddanej właśnie do testów członkom społeczności XDADevelopers, znacząco rozbudowuje funkcję MagiskHide, służącąwłaśnie do ukrywania modyfikacji przed aplikacjami.
Po pierwsze, punkt montowania obrazu Magiska został przeniesionydo ukrytego podkatalogu (z /magisk do /sbin/.core/img), dlakompatybilności zastosowano link symboliczny. Twórcy modułówpowinni wziąć to pod uwagę w budowaniu ich nowych wersji. Podrugie, topjohnwu znalazł sposób na ukrycie towarzyszącejaplikacji Magisk Manager – przepakowuje się ona do pakietu olosowej nazwie, a następnie w jakiś wysoce skomplikowany sposóbprzekazuje uprawnienia do zarządzania rootem do nowego pakietu. Ztestów wynika, że powinno działać to bez problemów, aleoczywiście to wersja beta – spodziewajcie się, że może byćkonieczne przeinstalowanie Magisk Managera na nowo.
Topjohnwu ujednolicił też proces rozruchu Magiska, wcześniejrozdzielony na starsze i nowsze (od smartfonu Pixel) urządzenia.Teraz binarka i skrypty rozruchowe osadzone są w pliku magiskinit,który dynamicznie łata lub tworzy pliki initramfs i sepolicy.Jedyną modyfikacją jest więc zastąpienie inita magiskinitem idodanie jednej łatki do kernela. Deweloper pochwalił się takżewprowadzeniem na listę oficjalnie wspieranych urządzeń najnowszegoPixela 2 XL i poprawieniem wsparcia dla Xiaomi A1.
Najnowszą wersję Magiska 14.5 (beta) znajdziecie na stronach XDADevelopers. Oczywiście polecamy ją tylko doświadczonymużytkownikom, którzy poradzą sobie z przywróceniem systemu dożycia, gdyby coś poszło nie tak. Przy takich (nie)ingerencjach wAndroida, bootloop jak najbardziej wchodzi w grę.