Sto scrivendo qualche piccolo rapporto sulla sicurezza relativo ai dispositivi Android in generale relativo all'accesso alle informazioni dalla RAM. La condizione principale è che il dispositivo inizialmente non è rootato.
Caso d'uso: l'utente apre l'app di terze parti, inserisce una password nel campo della password. Successivamente, il dispositivo viene perso con questa applicazione in esecuzione. Il codice sorgente di questa applicazione mostra che queste informazioni sulla password sono disponibili nella RAM mentre l'applicazione è attiva e in esecuzione. Ad esempio in classe AllMyAppPasswords in public String myPassword. Ora è la domanda sul modo possibile per accedere a queste informazioni sulla password (correggimi se ho torto):
- Il modo per accedere a questo pwd è scaricare la memoria.
- Per il dump della memoria ho bisogno di avere il dispositivo per essere rootato.
- Per eseguire il root del dispositivo è necessario sbloccare il bootloader.
- Per raggiungere il bootloader di sblocco e le operazioni di root è necessario riavviare il dispositivo almeno una volta.
- Una volta riavviato il dispositivo, le informazioni sulla password sono passate dalla RAM
Ulteriori informazioni sul caso d'uso corrente: assumiamo che l'utente abbia appena scollegato un nuovo dispositivo e sia sicuro al 100% che non sia rootato e che non contenga alcuna app di keylogger. Quindi l'utente ha appena installato la mia app, ha inserito la password e l'applicazione utilizza questa password internamente durante l'esecuzione per la connessione periodica del server (solo RAM con password, mai memorizzata su disco). Quindi, visivamente non è rimasto nulla in Modifica campi di testo, informazioni sulla password solo nella memoria dell'applicazione per uso interno, ovviamente non è possibile solo leggere il testo della password dallo schermo. Ora l'utente ha perso il telefono.
Conclusione e mia domanda: Non è possibile ottenere la password che risiede nella memoria RAM dall'app se il dispositivo non è rootato (senza smontare fisicamente il chip di memoria congelato). È corretto? La preoccupazione dell'utente per qualcuno che ha trovato il suo telefono può ottenere questa password dalla RAM?