Una volta sbloccato il bootloader e installato una custom ROM, come descritto nel precedente articolo, é possibile ottenere i permessi di root.
Ottenere i permessi di root
significa avere il controllo completo del sistema operativo. Questa espressione è comunemente usata in ambienti Linux e, di conseguenza, anche Android, che si basa sul kernel Linux. In Windows, il termine equivalente è privilegi di amministratore.
Vantaggi #
Il rooting
consente agli utenti di eseguire operazioni avanzate e di modificare il sistema operativo in modi non disponibili con i permessi standard.
Nonostante i rischi associati, esso rappresenta talvolta l’unico metodo per utilizzare applicazioni che richiedono permessi elevati. Un esempio è l’utilizzo di strumenti di backup/ripristino completi, come il nandroid backup
, che consentono di salvare non solo le applicazioni installate, ma anche le loro impostazioni e i dati.
Svantaggi #
Il rooting presenta diversi svantaggi che devono essere considerati:
- Il processo di rooting generalmente invalida la garanzia del dispositivo
- Il root rimuove le barriere di sicurezza predefinite, consentendo a qualsiasi applicazione con autorizzazioni di amministratore di accedere, modificare ed eliminare file di sistema critici. Pertanto, è essenziale installare applicazioni solo da fonti affidabili e verificare attentamente tutte le autorizzazioni richieste
- Alcune applicazioni, in particolare quelle bancarie, di pagamento e di streaming, possono smettere di funzionare se viene rilevato il root
Tecniche di rooting: KernelSU vs Magisk vs Apatch #
Un tempo, il rooting era semplice: bastava installare SuperSU
e il gioco era fatto. Nel corso degli anni, ottenere i permessi di root è diventato sempre più complicato a causa delle misure di sicurezza implementate dai produttori. Esistono tuttavia diverse soluzioni, alcune più semplici e altre più complesse, come Magisk
, KernelSU
, KernelSU Next
e APatch
.
Magisk #
Magisk è uno strumento open-source progettato per consentire il rooting in modalità systemless
, il che significa che non modifica direttamente la partizione di sistema. Invece, modifica l’immagine di avvio e apporta cambiamenti al dispositivo durante il runtime.
Questa caratteristica è stata introdotta per affrontare le limitazioni imposte dalle versioni più recenti di Android, che consentono di montare le partizioni di sistema solo in modalità RO
(read-only).
Magisk è compatibile con praticamente tutti i dispositivi Android che utilizzano versioni 6 o superiori, rendendolo una scelta molto versatile. Tuttavia, la funzionalità MagiskHide
non è più disponibile. Sebbene fork come Shamiko
o Zygisk Assistant
tentino di ripristinarne le capacità, i controlli spesso possono rilevare facilmente il rooting.
KernelSU #
KernelSU opera in kernel mode
. Solo le applicazioni autorizzate possono accedere ai permessi di superuser; tutte le altre applicazioni non ne hanno alcuna consapevolezza. Questa caratteristica potrebbe consentire di bypassare i controlli di Play Integrity su alcuni dispositivi.
Rappresenta il futuro, a condizione che il dispositivo lo supporti. Si integra direttamente con il kernel, anziché limitarsi a patchare boot.img
. Questo approccio rende anche più difficile il rilevamento da parte dei controlli di Google.
Una spiegazione tecnica sul funzionamento, la si trova nella documentazione ufficiale.
APatch #
APatch è una soluzione di rooting che combina i punti di forza di Magisk e KernelSU, unendo il metodo di installazione facile di Magisk tramite boot.img
, ma operando in kernel mode
, offrendo un controllo più profondo.
A differenza di KernelSU, che richiede il codice sorgente del kernel del dispositivo - spesso non fornito dai produttori - APatch necessita unicamente della boot image
. Inoltre, è compatibile con la maggior parte dei dispositivi Android, senza limitazioni ai soli dispositivi con kernel GKI (Generic Kernel Image), come invece avviene per KernelSU.
Rooting tramite APatch #
Prerequisiti #
Assicurarsi di soddisfare i seguenti requisiti prima di procedere con l’installazione:
- Bootloader sbloccato
- È necessario avere installato
adb
efastboot
sul computer - Assicurarsi di avere installato l’ultima versione di APatch disponibile sul proprio device
- Avere un device ARM64 e con una versione del kernel Android compresa tra la 3.18 e la a 6.1
- Avere a disposizione il file
boot.img
della propria ROM (stock o custom). Nel caso diLineageOS
, si trova qui, mentre perLineageOS for microG
, scaricare l’immagine di avvio dal seguente link. Copiare il file nella memoria interna dello smartphone
Infine, verificare che il kernel sia compatibile con il processo di patching. Collegare il device al computer ed eseguire:
adb shell
zcat /proc/config.gz | grep CONFIG_KALLSYMS
L’output dovrebbe essere simile al seguente:
CONFIG_KALLSYMS=y
CONFIG_KALLSYMS_ALL=y
Installazione #
Il procedimento é molto semplice. Aprile l’applicazione APatch sul proprio cellulare e seguire i seguenti passaggi:
- Cliccare il pulsante
Patch Button
nell’angolo in alto a destra, quindi selezionareSelect a boot image to patch
- Selezione l’immagine di avvio
boot.img
da modificare - Impostare una
SuperKey
, che sarà utilizzata in seguito per sbloccare i privilegi di root - Fare clic su Start per avviare il processo di patching. Una volta completata con successo la patch, verrà visualizzato il path del file
- Infine, copiare tale file sul pc
Flashare l’Immagine di avvio #
- Collegare il dispositivo al PC ed eseguire il seguente comando per entrare in modalità
fastboot
:
adb reboot bootloader
- Una volta entrati in modalità fastboot, flashare l’immagine modificata:
fastboot flash boot boot.img
- Al termine del flashing, riavviare il dispositivo:
fastboot reboot
- Aprire l’applicazione e inserire la SuperKey. Concedere i privilegi di root alle applicazioni desiderate, facendo attenzione alle raccomandazioni di cui sopra.
Nel caso di update dell’applicazione o di aggiornamenti di sistema, seguire la procedura ufficiale.
Play Integrity Fix #
Seguendo questa procedura o questa, dovrebbe essere possibile, in molti casi, superare i controlli di integritá e mascherare il bootloader sbloccato alle applicazioni.
Una ROM che dovrebbe integrare questi fix, ma che non ho avuto la possibilitá di testare, é CRDoid.
Eseguire il backup delle applicazioni #
Una delle migliori applicazioni per eseguire un backup completo della app installate sullo smartphone é Neo Backup.
- Richiede il root e consente di eseguire il backup e il ripristino delle app e dei loro dati
- I backup possono essere programmati
- Supporta la cifratura dei backup