Perché Magisk abbandona il supporto per nascondere l'accesso root alle app

Magisk, il popolare strumento di rooting per Android, continuerà a essere sviluppato da topjohnwu, ma senza la sua funzionalità per nascondere il root chiamata MagiskHide.

A maggio, topjohnwu, lo sviluppatore di Magisk, annunciato di essere entrato a far parte di Google nel team di sicurezza della piattaforma Android. Dato che Magisk viene utilizzato per eseguire il root dei dispositivi Android e anche per aggirare le misure di rilevamento del root nelle app, molti lo facevano scettico sul fatto che Google consentirebbe allo sviluppatore di continuare a lavorare sul progetto nella sua forma attuale, o addirittura a Tutto. Fortunatamente, a topjohnwu è stato dato il via libera per continuare a sviluppare Magisk, ma questa approvazione dipende dal fatto che il progetto abbandoni il supporto per la sua funzionalità di nascondere la radice chiamata MagiskHide.

In un post sul blog, topjohnwu affronta lo stato attuale dello sviluppo di Magisk e cosa sta cambiando per il futuro del progetto. Il suo primo punto confuta le accuse secondo cui il suo datore di lavoro, Google, gli aveva vietato di lavorare al progetto, quando in realtà, doveva solo snellire un sacco di burocrazia per ottenere l'approvazione di cui aveva bisogno per lavorare sul progetto. Non è insolito che aziende tecnologiche come Google esaminino attentamente il lavoro esterno svolto dai propri dipendenti, soprattutto quando il lavoro esterno ha un impatto diretto sul prodotto su cui il dipendente è stato assunto per lavorare. Nel caso di topjohnwu, il suo lavoro nel team di sicurezza della piattaforma Android gli offre una visione privilegiata delle misure di sicurezza attuali e future di Android, che presenta un evidente conflitto di interessi quando MagiskHide, il componente per nascondere le radici di Magisk, è progettato per aggirare una delle attuali misure di sicurezza di Google, ovvero SafetyNet Attestazione. Per questo motivo, topjohnwu non ha altra scelta che cessare lo sviluppo su MagiskHide e rimuovere gran parte della sua infrastruttura.

MagiskHide raggiunge la fine del ciclo di vita

Tuttavia, terminare lo sviluppo su MagiskHide non è stata una decisione difficile da prendere per topjohnwu. A livello personale, lo sviluppatore dice che è passato un po' di tempo dall'ultima volta che ha trovato piacevole lavorarci eludere i metodi di rilevamento delle radici, il che è comprensibile perché è essenzialmente un gatto e il topo gioco. Certo, la popolarità di Magisk può essere in gran parte attribuita al suo successo nell'eludere il rilevamento delle radici in Google Pay e Pokémon Go, ma diventa stancante dover farlo patchare costantemente il progetto solo per stare al passo con il panorama in continua evoluzione. Inoltre, con attestazione supportata da hardware in gioco, eludere il rilevamento delle radici diventa molto più difficile e soluzioni alternative attuali potrebbe non funzionare per sempre.

Sebbene MagiskHide stia raggiungendo lo stato di fine vita, lo strumento sarà ancora disponibile in un senso molto limitato, poiché topjohnwu ritiene che sia importante che le app abbiano la capacità di "rinunciare" al modding. Lo sviluppatore afferma che gli utenti "potranno assegnare una lista negata di processi in cui Magisk negherà ulteriori modifiche e annullerà tutte le modifiche apportate. Magisk non spooferà/altererà/manipolerà alcun segnale o traccia non correlata a Magisk per eludere qualsiasi rilevamento dello stato del dispositivo." Fondamentalmente, MagiskHide non nasconderà più l'accesso root alle app e verrà invece utilizzato per garantire che le app selezionate dall'utente non vengano modificata. Semplificare l'annullamento delle modifiche velocizzerà anche i test sugli emulatori, poiché gli sviluppatori non dovranno più riavviare o applicare patch alle immagini dell'emulatore.

Ovviamente, anche se l’app ufficiale Magisk abbandona il supporto per nascondere l’accesso root non significa che non possa essere biforcato per ripristinare la funzionalità o che non sia possibile rilasciare un modulo per nascondere root. Tutti gli sviluppatori che lo fanno, tuttavia, alla fine incorreranno negli stessi problemi di topjohnwu, ovvero dovranno giocare allo stesso gioco del gatto e del topo che ha contribuito a far disilluso topjohnwu Nascondere.

La fine del Magisk Module Repo centralizzato

Un'altra modifica imminente a Magisk è la rimozione del repository del modulo Magisk dall'app. L'integrazione del Magisk-Moduli-Repo nell'app Magisk è ciò che attualmente consente agli utenti di cercare e scaricare moduli dall'interno dell'app. La sua rimozione significherà che gli utenti dovranno scaricare manualmente i file ZIP del modulo e installarli da all'interno dell'app, il che è un po' scomodo rispetto alla soluzione esistente ma per niente difficile fare. Inoltre, le app fornite con un componente del modulo Magisk possono facilmente installare il modulo per l'utente eseguendo il file magisk --install-module ZIP comando, eliminando il passaggio manuale dall'equazione per gli utenti.

La perdita maggiore, tuttavia, riguarda la rilevabilità di nuovi moduli attraverso il repository centralizzato e curato, ma topjohnwu afferma che Magisk-Modules-Repo verrà trasferito a "membri fidati della comunità" Presto. Questo significa il repository stesso non scomparirà, ma per il momento l'app non lo indicherà. Alla fine, però, topjohnwu vuole consentire agli utenti di indirizzare l'app Magisk a qualunque fonte di moduli online desiderino, un po' come F-Droid, ma al momento non è una priorità per lui implementarla.

Questo cambiamento non è stato provocato dall'assunzione di topjohnwu presso Google, ma era invece destinato a verificarsi dato il tempo investito necessario per moderare il pronti contro termine.

Zygist - Magisk in Zigote

Negli ultimi mesi, topjohnwu e molti altri sviluppatori hanno lavorato su qualcosa chiamato "Zygisk", che è Magisk in Zygote. Zygote è il processo del sistema operativo che gestisce il fork di ciascun processo dell'applicazione, quindi l'esecuzione di parti di Magisk nel processo zygote renderà i moduli ancora più robusti (incluso rendere il root-hiding ancora più potente). Topjohnwu afferma che Zygisk soddisfa anche la sua filosofia di Magisk "togliersi di mezzo" dalle app i cui sviluppatori non approvano il modding, come quando un processo viene aggiunto alla lista negata MagiskHide, Magisk "pulirà lo spazio di memoria del processo per garantire che non venga effettuato alcun modding applicato."

Questo progetto è ancora in fase di elaborazione, ma sentiremo maggiori dettagli sull'implementazione quando sarà pronto per il beta testing.

Il futuro dello sviluppo di Magisk

Magisk è iniziato e rimane un progetto hobbistico per topjohnwu, ma lo sviluppatore vuole prendere il progetto più seriamente. Ha già avviato l'integrazione continua su GitHub e inizierà a testare la regressione delle modifiche prima di ogni rilascio integrandosi con AVD.

Topjohnwu rileva inoltre che altri sviluppatori di talento hanno presentato utili modifiche al codice al cuore di Magisk, risolvendo molti bug ed espandendo la compatibilità dei dispositivi. Nonostante sia open source fin dall'inizio, Magisk è stato l'unico dominio di topjohnwu, quindi è carino vedere altre persone contribuire al progetto quando topjohnwu ha meno tempo ed energie da dedicarvi lui stesso.