In che modo Android impedisce di installare servizi di sistema personalizzati?

3

Sto cercando di capire il processo di avvio sicuro. Diciamo che il firmware è bloccato e fa solo l'installazione firmata di un'immagine del sistema operativo. Questa "immagine" è un pacchetto compresso di tutti i binari necessari al sistema. Quindi, una volta installati, vengono posizionati nel filesystem. Dopodiché, perché non riesco a copiare altri binari sul dispositivo. Come farà il sistema a sapere che non fa parte dell'installazione originale?

Android ha la verifica della firma su singoli binari prima che vengano caricati? Senza questo non sono sicuro di come possa essere fatto.

Supponendo che non ci sia una verifica della firma binaria al momento del caricamento, posso pensare a questo: il file system root verrà montato in sola lettura e solo il servizio SU sarà in grado di rimontarlo in modalità rw quando si esegue l'SU. E i programmi "mount" e "su" non faranno parte dell'installazione (tra gli altri programmi). Sarà sufficiente per impedire a qualcuno di installare binari personalizzati nella partizione di root?

    
posta user220201 06.01.2017 - 21:27
fonte

1 risposta

2

Nelle versioni precedenti di Android, questa protezione non esisteva e molti exploit di root per i dispositivi lo utilizzavano a loro vantaggio. Le versioni più recenti di Android utilizzano dm-verity nel kernel per garantire che nessuna parte della partizione di sistema sia stata manomessa, controllando gli hash firmati di ciascun blocco. Hanno anche una catena di fiducia che passa attraverso il bootloader e torna al SoC per evitare semplicemente di rimuovere questa caratteristica dal kernel.

    
risposta data 23.02.2017 - 05:26
fonte

Leggi altre domande sui tag