MicroG i Aurora w praktyce - czyli zjeść ciastko i mieć ciastko

Preambuła

Nie ulega wątpliwości, że preinstalowane na większości smartfonów z androidem “Usługi Google” (dalej dla uproszczenia nazywane GMS - Google Mobile Services) stanowią często najważniejszy element smartfonowego ekosystemu. Pozwalają w pełni korzystać z googlowskich rozwiązań, płacić zbliżeniowo poprzez gpay (czy tam portfel google), pobierać aplikacje, synchronizować nasze kontakty, logować się w wielu miejscach. Można powiedzieć, że ich brak w praktyce dla wielu osób będzie nie do przeskoczenia.

Huawei ze względów politycznych musiał się z nimi pożegnać i zaczął pracować nad autorską alternatywą w postaci HMS (Huawei Mobile Serwices). O tym jak to działa i czy działa nie będę się rozwodził, bo Paweł Fidut zrobił to już za mnie, we wszystkich znaczeniach tych słów.

Po co to komu? - Arenga

Wracając do meritum… GMS pozwala nam w pełni wykorzystać potencjał urządzenia oraz daje dostęp do wielu udogodnień, jednocześnie będąc po prostu data farmą - oczywistym jest, że jeśli coś jest za darmo, to TY jesteś produktem.

Nie jest to ani dziwne, ani niespotykane, ani szczególnie uciążliwe dla użytkownika. Część osób tak jak ja, może sobie jednak zadać pytanie: Czy istnieje możliwość chociaż częściowej anonimizacji? Bez odcinania się od dobrodziejstw GMS oczywiście.

Tego typu alternatywę stanowi MicroG, nazwa którą mogą kojarzyć użytkownicy tej lepszej aplikacji youtube. MicroG to otwartoźródłowa implementacja GMS, która stara się robić to co oryginał, ale bez balastu. Dajemy mniej od siebie, telefon dłużej trzyma na baterii. Minusy? Niestety nie wszystko działa, należy zapomnieć o gpayu (choć na przykładzie ING wiem, że HCE śmiga), RCSach w aplikacji wiadomości, czy opcji weryfikowania logowania przy pomocy cyferek.

Czy to rozwiązanie dla każdego? Zdecydowanie nie! Opiszę tutaj dość szczegółowo metodę instalacji, konfiguracji oraz założenia podstawowe z jakich wychodzę. Przedstawiona metoda nie jest jedyną (słuszną), nie obiecuję, że na waszej konfiguracji wszystko zadziała od kopa.

Właściwa instrukcja

Co będzie nam potrzebne:

  • Na dobry początek, custom rom w wersji vanilla z obsługą out of the box “spoofing signature”. Z bardziej mainstreamowych funkcjonalność taką oferuje ArrowOS i to na nim oparłem ten tekst. Czy brak tej funkcjonalności jest nie do przeskoczenia? Nie, istnieją metody implementacji tej funkcji zewnętrznie, jednak nie zamierzam tutaj opisywać wszystkich scenariuszy.
  • Działający Magisk (Zygisk) oraz wiedza z zakresu instalacji rozszerzeń(modułów), ukrywania obecności dla kluczowych aplikacji (SafetyNet passed starter pack)

Więc do dzieła:

Instalujemy moduł microG Installer Revived.

Dodatkowo z szczerego serca mogę polecić aplikację FoxMagiskModuleManager która pozwala wyszukiwać i instalować moduły bez pobierania ich przez przeglądarkę i szukania w zipów w pamięci urządzenia.

Pierwszy moduł zawiera wszystkie niezbędne składowe MicroG, które są potrzebne do działania. FakeStore (jedna z nich) ma za zadanie dać pozytywny feedback aplikacji sprawdzającej, czy na urządzeniu zainstalowany jest Sklep Play. Niektóre aplikacje posiadają jednak bardziej zaawansowany mechanizm (w moim przypadku jest to McDonald) i takie rozwiązanie nie zapewni oczekiwanych rezultatów. W takim przypadku możliwa jest instalacja spatchowanej wersji Sklepu (Phonesky), która współpracuje z MicroG (patrz podpunkt 1a).

a) By w trakcie instalacji FakeStore został zastąpiony przez Phonesky w folderze /data/adb musimy umieścić odpowiedni plik apk kliknij aby go pobrać nazwany po prostu Phonesky.apk. Krok ten musi zostać wykonany przed instalacją modułu z punktu 1, w innym przypadku zostanie zainstalowany FakeStore. Z tej metody skorzystałem ja.

Konfiguracja MicroG:

W aplikacji Ustawienia MicroG dodajemy swoje konto google. Jeśli posiadacie weryfikacje dwuetapową opartą o cyferki i brak drugiego telefonu pod ręką, będziecie musieli skorzystać z opcji na przykład SMS. To w sumie najważniejszy punkt. Posiadamy teraz podpięte własne konto.

W zakładce GoogleSafetyNet możemy sprawdzić czy przechodzimy weryfikację. U mnie przy wrzuceniu wszystkiego co jest związane z google w denylist, instalacji safetynet-fixa od kdrag0na oraz zmianie nazwy pakietu magiska wszystko jest w najlepszym porządku.

By wszystkie rzeczy związane z lokalizacją w aplikacjach działały w 100% musimy zapewnić dostęp do jakiegoś dostawcy usług. W moim przypadku zdecydowałem się na implementację Mozilla Location Services. Po instalacji apk w zakładce LocationModules włączamy ten moduł i udzielamy pełnego dostępu do lokalizacji.

Zarówno microG Services Core/Usługi microG jak i Play Store/Sklep Play powinny mieć uprawnienia do fałszowania podpisów. W moim przypadku na ArrowOS nie musiałem tego pilnować - takowe zostały nadane automatycznie przy instalacji. Gdyby jednak tak nie było, można je nadać/odwołać ręcznie z poziomu aplikacji ustawień. O tym, czy wymagane uprawnienia są nadane możemy się dowiedzieć z zakładki Self-Check/Samo-Sprawdzenie

Aurora Store

Teoretycznie jeśli pokusiliście się o instalację Phonesky tutaj moglibyście skończyć czytać. Jednak tak czy siak to tylko spatchowany Sklep Play, czyli z punktu widzenia tego tekstu bloatware (a raczej zło konieczne). Jeśli wasze ambicje sięgają troszkę dalej, albo zdecydowaliście się na instalację FakeStore, potrzebować będziecie jakiegoś klienta, który obsłuży instalację aplikacji. W tej roli wystąpi AuroraStore - nieoficjalny otwartoźródłowy klient Sklepu Play.

Pobieramy Aurorę z oficjalnej strony i instalujemy. W trakcie pierwszego uruchomienia zapyta nas o instalator. Wybieramy opcję “root installer”. Dzięki temu aplikacje instalowane przez Aurorę będą identyfikowały się jak instalowane z Sklepu Play (dzięki obecności FakeStore/Phonesky). W kolejnych krokach udzielamy Aurorze wszystkich niezbędnych uprawnień.

To co ciekawe pojawia się w ostatnim etapie. Aurora daje nam do wyboru z jakiego konta chcemy się zalogować. Jeśli nie posiacie/nie używacie płatnych aplikacji przypisanych do własnego konta google warto użyć opcji anonimowe. W ten sposób aplikacje pobierane są przez zupełnie niezwiązane z nami konto, co jeszcze bardziej nas anonimizuje. Oczywiście nic nie stoi na przeszkodzie by użyć własnego konta, należy mieć jednak na uwadze, że istnieje możliwość zbanowania. Wybór należy do was.

Z ciekawszych rzeczy warto nadmienić, że Aurora zintegrowała w aplikacji usługę Exodus Privacy, przy jej pomocy można zobaczyć z jakich trackerów korzysta konkretna aplikacja.

Wszystko co jest związane z MicroG/Sklepem Play warto dodać do czarnej listy. Zainstalowane rozwiązania korzystają z nazw pakietów oryginalnych dla GMS, które mogą zostać nadpisane na drodze aktualizacji w momencie wydania nowej wersji przez Google.

McDonald’s - prawdziwy Fort Knox

Jeśli zdecydowaliście się na instalację Phonesky mam dobrą informację. Zrobimy tak, żeby aplikacja maka działała. Po prostu pobieramy ją z Aurory, pamiętając, by przed pierwszym uruchomieniem dodać ją do denylist. Logujemy się do aplikacji.

Po pierwszym udanym zalogowaniu możemy wyłączyć aplikację “Sklep Play” z poziomu ustawień. Czy to zadziała w przypadku każdej aplikacji tego typu? Zapewne nie, ale mi problemy sprawiał tylko i wyłącznie mak.

Poza tą jedną z aplikacji w zupełności wystarczyłby mi set oparty o FakeStore. Druga sprawa to fakt, że nie widzę sensu trzymania Phonesky na dłuższą metę włączonego w przypadku tego typu konfiguracji. Raz, że trochę zaprzecza idei z którą powstał ten tekst, dwa, że w dużej mierze jego kompetencje zazębiają się z Aurorą. Dlatego podjąłem decyzję o wyłączeniu.