User Tools

Site Tools


educare:sbloccare_android

Sbloccare Android

Utile per chi non vuole installare Android SDK ma dispone solo di API Level 23 (Android 6.0 Marshmallow)

https://wiki.debian.org/AndroidTools

  • SDK Tools
    • sono tools indipendenti dalla piattaforma Android su cui stai sviluppando.
  • Platform-tools
    • Sono tools personalizzati (adb, fastboot) per supportare le funzionalità dell'ultima piattaforma Android
  • Build-tools
    • è un componente di Android SDK necessario per compilare il codice delle applicazioni per Android (apksigner).

Unlock bootloader

Il primo passo da fare e' unlock the bootloader (questo cencellerà tutti i dati!?)

Tramite il bootloader si può decidere se avviare il recovery o avviare android.

Il bootloader non solo è bloccato ma anche criptato. Lo decide il produttore e il gestore telefonico e questo permette di controllare la versione di Android in uso: il bootloader permette di avviare solo le versioni firmate dal gestore telefonico.

NOTA: NEXUS MOTOROLA E HTC si sbloccano facilmente.

htcdev.com/bootloader (Oops! You are not logged in.)

Passaggi:

  1. android modalità debug
  2. driver
  3. connessione usb
  4. sul terminale “adb devices” (lista)
  5. un nexus puo' saltare passaggio 6.
  6. adb reboot bootloader (riavvia in fastboot mode)
  7. ottenere la stringa identificatrice dispositivo
  8. comando o comandi che sbloccano
  9. fastboot reboot

A volte per lo sblocco del bootloader basta eseguire un'applicazione apk esterna, fornito dal produttore: dopo il riavvio, come conseguenza, lo smartphone avvisa che non può più controllare se un file è danneggiato (perché non è attivata la crittografia)

Rooting

xda-developers.com/root/

Dopo il bootloader, questo è il primo passo obbligatorio per fare altre cose. Su android non è possibile accedere come utente root (il superutente). Rootare un dispositivo è quell'azione che permette di eseguire anche operazioni privilegiate (come superutente) come: rimozione di applicazioni OEM e accesso a cartelle di sistema, partizioni /system (e /data)…

NOTA: un dispositivo può perdere la garanzia, può diventare instabile o può diventare un mattone. Roota a tuo rischio

Alcuni metodi di rooting possono installare ulteriore software sul telefono.

SuperSU

è una applicazione che permette acesso con privilegio di root solo alle applicazioni di tua scelta

Immagini deodex-ed

Un'immagine ROM (o firmware) è una distribuzione Android (ufficiale del produttore o alternativa). Ma bisogna fare attenzione al malware, perché in quest'ultimo caso il software non è firmato.

Le immagini dei sistemi operativi utilizzabili per essere installati nelle partizioni del dispositivo possono essere di due tipi:

  • .dex
  • .odex

Gli sviluppatori indipedenti di immagini ROM preferiscono usare il primo tipo che utilizza APP con una cache interna al file .apk (file classes.dex). Anche se esiste un piccolo difetto: la lentezza del primo avvio del sistema.

Viceversa le aziende OEM preferiscono le immagini che utilizzano APP con una cache esterna al file .apk (file.odex) che si trova nella VM. Queste app sono più difficili da modificare e sono su immagini ROM ODEX-ed.

Xposed

Xposed è un framework che funziona egregiamente in entrambi i tipi di sistemi, dato che permette di avviare un JAR all'avvio del sistema con privilegi di amministrazione e di sostituire qualsiasi metodo in qualsiasi classe in ogni APP.

Recovery mode

È indispensabile conoscere il Recovery mode. È utile per fare un reset di fabbrica

Ad esempio: nel dispositivo *Asus z170c* si può avviare in questa modalità tenendo premuto: Power + Volume down (per 10 secondi) Invece tenendo premuto la voce “shut down” nel display, quando il sistema chiede di confermare lo spegnimento, effettua un riavvio in “modalità provvisoria”

Recovery è il nome usato per indicare una partizione avviabile che contiene strumenti utili (come una console) per riparare l'installazione o per installare gli aggiornamenti ufficiali (combinando tasti o istruzioni CLI).

Questi strumenti sono open source come Android, cosi che e' possibile modificarli e personalizzarli. La maggior parte dei dispositivi possiedono un semplice “recovery mode” che può essere usato per recuperare o per porre il dispositivo in “fastboot” (fastboot mode??) o per leggere o per eliminare i dati (factory reset).

Esistono due tipi di Recovery

  • Stock recovery
  • Custom recovery
  1. Stock recovery è un sistema per avviare e fare poche cose, aggiornamenti oppure per il factory reset. Lo puoi fare anche da solo entrando in recovery mode.
  2. Custom recovery è un sistema per eseguire un backup o un ripristino, elimina solo parzialmente i dati. Permette di fare aggiornamenti non ufficiali, non firmati. Es. Amon Ra.
NANDroid

Per eseguire un backup completo è richiesto sempre un dispositivo rooted. Lo strumento di backup si chiama NANDroid

FASTBOOT MODE

(DISATTIVATO PER ALCUNI MODELLI)

In alternativa al Recovery mode, Google fornisce con un software Android SDK un protocollo FASTBOOT. Per essere usato su Windows è richiesto di installare anche dei driver per poter collegare il telefono.

FASTBOOT Mode

  • permette di lavorare dal PC sul telefono
  • permette di aggiungere una nuova immagine ROM di recovery (per poi scrivere una nuova immagine sulla memoria)
  • permette di avviare il telefono anche se questo è privo di Android.
  • permette di rimuovere una partizione sul telefono
  • permette di modificare le opzioni del kernel
  • permette di sviluppare tool per unlock bootloader.

https://en.wikipedia.org/wiki/List_of_custom_Android_firmware

Un'immagine ROM (o firmware) è una distribuzione Android (ufficiale del produttore o alternativa). Ma bisogna fare attenzione al malware, perché in quest'ultimo caso il software non è firmato.

Esempi di immagini
  • CopperheadOS è una versione android che supporta solo 8 dispositivi.
  • Replicant ne supporta 13 (Samsung Galaxy).
  • Paranoid Android
educare/sbloccare_android.txt · Last modified: 2020/06/08 22:20 by 127.0.0.1