Rooting

Il rooting è una tecnica che permette agli utenti Android di ottenere il controllo privilegiato di un dispositivo.

Cos’è il rooting?

Il rooting è una tecnica che permette agli utenti Android di ottenere il controllo privilegiato di un dispositivo (noto come 'root access'). Poiché Android utilizza un kernel Linux (il componente software fondamentale del sistema operativo), il rooting offre l'accesso ai permessi di amministratore, noti in questo ambiente come superutente.

 

Differenze tra rooting e jailbreaking

Sebbene simile, il jailbreaking in iOS comporta il superamento di una serie di restrizioni, tra cui la modifica del sistema operativo, l'installazione di applicazioni non ufficialmente approvate e la concessione all'utente di elevati privilegi a livello di amministrazione (rooting).

Molti fornitori di dispositivi compatibili con Android, come HTC, Sony, Asus e Google, offrono apertamente la possibilità di sbloccare i dispositivi o addirittura sostituire il sistema operativo senza dover ricorrere a dubbie operazioni tecniche.

Allo stesso modo, la possibilità di eseguire il sideload delle applicazioni su Android è consentita senza ulteriori autorizzazioni. È quindi il terzo aspetto, l'ottenimento dei privilegi di amministratore, a essere più direttamente correlato al rooting di Android.


Perché viene fatto?

La tecnica mira ad aggirare le restrizioni applicate sui dispositivi dai vettori e dai produttori di hardware. Apre la porta alla modifica o sostituzione delle impostazioni di sistema originali, all'esecuzione di applicazioni specializzate che richiedono l'autorizzazione dell'amministratore o all'esecuzione di altre operazioni che non sarebbero disponibili per un utente normale.

Sui sistemi aziendali è consigliabile stabilire politiche che rendano i dipendenti consapevoli dei rischi che i software di terze parti rappresentano per l'azienda. Gartner, ad esempio, esorta ad evitare il jailbreaking e il rooting a causa dei rischi che rappresentano per l'ambiente aziendale.


Come funziona?

Il rooting è necessario per alcune operazioni avanzate e potenzialmente pericolose, come la modifica o l'eliminazione di file di sistema, l'eliminazione di applicazioni preinstallate e l'accesso a basso livello all'hardware (riavvio, controllo dei sensori tattili, ecc.).

Una tipica installazione di root installa anche l'applicazione superutente, che in Linux e Android supervisiona le applicazioni a cui sono concessi i diritti di superutente, che danno accesso a tutti i file e comandi.

Queste includono la possibilità di modificare il sistema operativo e di concedere o revocare altre autorizzazioni di accesso per leggere, modificare o eseguire file.


Rooting per l'hacking di un dispositivo

Un rootkit è un insieme di strumenti software installati segretamente da un hacker per utilizzare il computer per i propri scopi, di norma dannosi. I rootkit possono fornire un accesso a livello di root, non solo l'accesso a un account utente, permettendo all'hacker di nascondere qualsiasi traccia della propria presenza e attività.

Il successo del rooting da parte di un hacker su un telefono Android può consentirgli di aggiungere, modificare o cancellare file di sistema e di modificare le impostazioni e accedere ad applicazioni sensibili. In generale, per rimuovere o sostituire il sistema operativo del dispositivo, è necessaria un'operazione secondaria, che sblocca la verifica del bootloader del dispositivo, anche se è vero che alcuni sviluppatori di sistemi Android lo consentono di default al superutente.