home Ricerca per tag "magisk"


Magisk 14, il modding "OTA-friendly" per tutti

15 Ottobre 2017. È questa la data di una nuova importante rivoluzione nel mondo del modding di Android. Tre settimane fa infatti lo sviluppatore topjohnwu ha rilasciato un nuovo aggiornamento di Magisk, raggiungendo la versione 14.Tra le tante novità introdotte, riportate nel changelog a fondo pagina, la più interessante sta nel nuovo metodo di installazione della mod.A fianco a quello classico infatti, che prevede l'utilizzo di una custom recovery come la TWRP per il flash dello zip di Magisk, è stata introdotta la possibilità di generare una boot.img modificata per poi flasharla in qualsiasi modo, potenzialmente senza passare dalla recovery. Questa modalità infatti permette, dando in pasto a Magisk Manager la boot.img originale del sistema del dispositivo, di modificare quest'ultima includendo i file necessari per il funzionamento di Magisk. Il passo successivo sarà quello poi di flashare tale file sul dispositivo, cosa che potrà essere effettuata direttamente dalla modalità fasboot o tramite ODIN per i dispositivi Samsung. Ricapitolando, i passi necessari saranno: Procurarsi l'immagine di boot del proprio sistema (presente nello zip della ROM o dell'aggiornamento ufficiale) e copiarla nel dispositivo Da Magisk Manager premere Installa > Patch Boot Image File e selezionare la boot.img appena scaricata Attendere la fine del procedimento di patching Copiare la nuova boot image sul PC Riavviare il dispositivo in modalità bootloader (collegare il telefono al PC e digitare il comando adb reboot bootloader [1]) Flashare la nuova boot image con il comando fastboot flash boot patched_boot.img [1] Riavviare il dispositivo con fastboot reboot Il risultato sarà quello di aver installato Magisk senza toccare la recovery stock del proprio dispositivo, con la conseguente possibilità di ricevere gli aggiornamenti OTA [2], nonchè di rootare e moddare qualsiasi dispositivo, anche quelli per cui non esiste una custom recovery. Degna di nota è infine la Invincible Mode introdotta con la versione 14.3, l'ultimo di una serie di fix rilasciati in queste tre settimane, che garantisce che il demone di Magisk sia sempre funzionante in background (anche nel caso in cui venga interrotto in modo forzato), così da evitare casuali perdite dei permessi di root o il non funzionamento di Magisk Hide, con conseguente esito negativo del SafetyNet Check. Per concludere vi riporto il changelog ufficiale delle due versioni trattate: • v14.3 (1437)- [MagiskBoot] Fix Pixel C installtion- [MagiskBoot] Handle special lz4_legacy format properly, should fix all LG devices- [Daemon] New universal logcat monitor is added, support plug-and-play to worker threads- [Daemon] Invincible mode: daemon will be restarted by init, everything should seamlessly through daemon restarts- [Daemon] Add new restorecon action, will go through and fix all Magisk files with selinux unlabled to system_file context- [Daemon] Add brute-force image resizing mode, should prevent the notorious Samsung crappy resize2fs from affecting the result- [resetprop] Add new "-p" flag, used to toggle whether alter/access the actual persist storage for persist props• v14.0- [script] Simplify installation scripts- [script] Fix a bug causing backing up and restoring stock boot images failure- [script] Installation and uninstallation will migrate old or broken stock boot image backups to proper format- [script] Fix an issue with selabel setting in util_functions on Lollipop- [rc script] Enable logd in post-fs to start logging as early as possible- [MagiskHide] magisk.img mounted is no longer a requirementDevices with issues mounting magisk.img can now run in proper core-only mode- [MagiskBoot] Add native function to extract stock SHA1 from ramdisk- [b64xz] New tool to extract compressed and encoded binary dumps in shell script- [busybox] Add busybox to Magisk source, and embed multi-arch busybox binary into update-binary shell script- [busybox] Busybox is added into PATH for all boot scripts (post-fs-data.d, service.d, and all module scripts)- [MagiskSU] Fully fix multiuser issues- [Magic Mount] Fix a typo in cloning attributes- [Daemon] Fix the daemon crashing when boot scripts opens a subshell- [Daemon] Adjustments to prevent stock Samsung kernel restrictions on exec system calls for binaries started from /data- [Daemon] Workaround on Samsung device with weird fork behaviors [1] Per effettuare questi passaggi sul PC devono essere installati ADB e FASTBOOT ed il Bootloader del dispositivo deve essere sbloccato. [2] Per installare gli aggiornamenti OTA tutte le partizioni di sistema devono risultare integre e non modificate. Pertanto una modifica in /system o in /boot non permette l'installazione dell'aggiornamento ufficiale. Sebbene Magisk permetta di non alterare la partizione /system, si installa in quella di boot. Per poter installare l'aggiornamento sarà quindi necessario rimuovere temporaneamente Magisk attraverso la voce Disinstalla dall'applicazione Magisk Manager seguendo le istruzioni ufficiali riportate qui.

Magisk v11: la soluzione All-In-One per il modding di Android

Avevamo già parlato di Magisk tempo fa, una mod molto particolare che permette di installare altre modifiche - dette moduli -, quali i permessi di root, Xposed e Viper4Android in modalità systemless, vale a dire senza toccare la partizione di sistema del dispositivo. Questo avviene grazie ad una modifica della partizione di /boot che permette di caricare virtualmente queste mod nella partizione di sistema ad ogni avvio di Android, rendendo quindi possibile un futuro aggiornamento del sistema senza effettuare nuovamente tutti i passaggi per installare le modifiche volute. Nell'ultimo periodo lo sviluppo di questo sistema ha subito una forte accelerazione introducendo sempre più funzionalità come Magisk Hide, che permette di nascondere i permessi di root alle applicazioni che "non li digeriscono" (Android Pay, Pokemon Go e molte applicazioni di mobile banking ad esempio) e atterrando sul Play Store (Magisk Manager). È di stanotte - 6 febbraio 2017 n.d.r. - l'ultimo aggiornamento, che porta Magisk alla versione 11 e il Manager (l'applicazione di gestione) alla versione 4, rendendo questa mod una soluzione All-In-One per la gestione di moduli e permessi di root. Infatti non sarà più necessario installare a parte un gestore dei permessi di superutente, come possono essere Phh Superuser e SuperSU (per il quale viene comunque mantenuta la compatibilità), poichè ora è integrato direttamente in Magisk. Chiamato MagiskSU, non è altro che una versione modificata del gestore di Phh, ma che permette di chiudere il cerchio, rendendo Magisk la piattaforma più completa nell'ambito del modding di Android. Per maggiori informazioni vi rimando alla discussione ufficiale sul forum di XDA.

Magisk: il root, systemless

Magisk Is A Magic Mask to Alter System Systemless-ly Si chiama Magisk, abbreviazione di Magic Mask, e promette di poter fruire di determinate Mod, fino ad ora rigorosamente installate nella partizione di sistema del telefono, senza però toccare tale partizione. Fino ad oggi qualsiasi Mod, quale l'ottenimento dei permessi di Root, l'utilizzo del framework Xposed e dei suoi moduli, Viper4Android, AdAway e chi più ne ha più ne metta, per poter funzionare dovevano essere installati sotto /system, la partizione contenente tutti i file e le applicazioni di sistema di Android. Un vero limite, se pensiamo che la modifica della partizione di sistema compromette la possibilità  di ricevere aggiornamenti OTA ufficiali, piuttosto che utilizzare le più famose app per il Mobile Banking o qualsiasi applicazione che per sicurezza controlli l'integrità  del sistema. Nasce così il root systemless, in grado quindi di mantenere inalterata questa partizione di Android, che ha debuttato con l'avvento di Android Lollipop 5.0, ma senza ottenere chissà  che successo non fornendo alcuna funzionalità  in più rispetto al sistema di rooting standard. È solo con l'arrivo di Android Pay (in Italia.. va beh [ndr]) che qualcosa sotto questo fronte ha iniziato realmente a muoversi. Perchè? Perchè Google ha pensato - correttamente - di negare l'utilizzo di Android Pay ai dispositivi con permessi di root per questioni di sicurezza. Come? Fornendosi di Google Play Services, un servizio presente su tutti i dispositivi Android (o per lo meno tutti quelli con GApps installate), per far comunicare i terminali con SafetyNet, un sistema remoto di controllo di integrità del sistema Android. Chiaramente tutti i dispositivi con una modifica anche minima della partizione di sistema risultano non conformi, di conseguenza impossibilitati ad utilizzare Android Pay e qualunque altra app che utilizzi la SafetyNet API (Qualcuno ha detto Pokemon GO?!?). Magisk nasce proprio con questo obiettivo, quello di poter passare il test di integrità  di SafetyNet e usufruire dei benefici del root sullo stesso dispositivo. Al posto di modificare /system va ad installare nella boot image del sistema un "layer" aggiuntivo tra il sistema stesso e le varie Mod. Ma che benefici ci dà ? La partizione di sistema non viene toccata, SafetyNet OK! Il root, come i moduli Xposed e qualsiasi altra Mod possono essere attivati e disattivati (montati e smontati) "On The Fly", senza dover riavviare il dispositivo (per i moduli Xposed ad esempio) e senza effettuare la procedura di unroot Non toccando /system ad ogni aggiornamento non sarà  necessario reinstallare le mod Ma se fino alla versione 6 Magisk era utile per nascondere il root da applicazioni con questo tipo di controllo, con l'aggiornamento alla versione 7 rilasciato il 3 ottobre e successive, lo sviluppatore topjohnwu ha deciso di puntare più in alto, mirando a fare di Magisk un'interfaccia universale, offrendo la possibilità di installare qualsiasi Mod in modalità systemless attraverso la nuova applicazione Magisk Manager, inclusi Root e Xposed. Vediamo quindi la procedura di installazione in modo da coprire tutte le possibilità . 1) Dispositivo senza root Riavviare il dispositivo in recovery [1] Flashare Magisk Flashare phh's SuperUser [2] Riavviare il telefono e installare Magisk Manager 2) Dispositivo con SuperSU Systemless o con una precedente versione di Magisk Installare Magisk Manager Effettuare l'installazione/update di Magisk dall'applicazione Riavviare il dispositivo 3) Dispositivo con root in modalità NON systemless Installare SuperSU dal PlayStore Effettuare la procedura di unroot dall'applicazione Riavviare il telefono e seguire i passi di 1)  Link alla discussione ufficiale su XDA: http://forum.xda-developers.com/apps/magisk/official-magisk-v7-universal-systemless-t3473445   N.B. Con la versione 9 di Magisk è stato introdotta la scheda Magisk Hide, che permette di "nascondere" il root alle applicazioni selezionate. Sarà quindi sufficiente selezionare Google Play Services (com.google.android.gms), i due demoni associati .policy e .setup e le applicazioni che richiedono un dispositivo "vergine" e senza permessi di root per funzionare (Qualcuno ha detto Pokemon GO?!? pt.2). N.B.2 Nel caso in cui, anche dopo aver abilitato Magisk Hide non riusciste ad utilizzare le applicazioni protette attraverso SafetyNet, sarà sufficiente installare il modulo Universal SafetyNet Fix e riavviare il dispositivo (attualmente supporta le versioni 12 e 13.1 di Magisk). Il risultato positivo sarà confermato dalla doppia spunta verde nella sezione Controllo SafetyNet di Magisk Manager. Per concludere, se mai doveste avere la necessità di disinstallare Magisk, dopo aver rimosso i moduli direttamente dall'app e aver riavviato il dispositivo, basterà flashare da recovery questo pacchetto zip. [1] È necessario disporre di una recovery modificata, di conseguenza aver precedentemente sbloccato il Bootloader. La più nota, completa ed utilizzata attualmente è la TWRP ed essendo la procedura di installazione potenzialmente personalizzata per ogni dispositivo, vi rimando al sito ufficiale per maggiori informazioni a riguardo. [2] Dalla versione 11, trattata nello specifico in questo articolo, non è più necessaria l'installazione del pacchetto phh's Superuser, poichè i binari necessari ai permessi di root sono integrati in Magisk.