Questa sezione contiene consigli per garantire la sicurezza delle comunicazioni di rete dai dispositivi Android.
Messa in sicurezza delle prese d'ascolto
Utilizzare le prese di ascolto con cautela. In genere non dovrebbero esserci prese di ascolto aperte sui dispositivi poiché queste forniscono un vettore che consente a un utente malintenzionato remoto di ottenere l'accesso al dispositivo.
- I dispositivi Android dovrebbero ridurre al minimo il numero di prese di ascolto Internet che espongono, soprattutto all'avvio o per impostazione predefinita. Per impostazione predefinita, nessun socket dovrebbe essere in ascolto su Internet all'avvio.
- I processi root e i processi di proprietà dell'identificatore univoco del sistema (UID) non dovrebbero esporre alcun socket di ascolto.
- I socket di ascolto devono poter essere disabilitati senza un aggiornamento OTA. Questa operazione può essere eseguita utilizzando una modifica della configurazione del server o del dispositivo utente.
- Per i socket locali che utilizzano IPC, le app devono utilizzare un socket di dominio UNIX con accesso limitato a un gruppo. Creare un descrittore di file per l'IPC e renderlo +RW per uno specifico gruppo UNIX. Tutte le app client devono trovarsi all'interno di quel gruppo UNIX.
- Alcuni dispositivi con più processori (ad esempio, una radio/modem separato dal processore dell'app) utilizzano socket di rete per comunicare tra i processori. In tali casi, il socket di rete utilizzato per la comunicazione tra processori deve utilizzare un'interfaccia di rete isolata per impedire l'accesso da parte di app non autorizzate sul dispositivo (ovvero utilizzare iptables per impedire l'accesso da parte di altre app sul dispositivo).
- I demoni che gestiscono le porte di ascolto devono essere robusti contro i dati non validi. È necessario condurre test fuzz sulla porta utilizzando un client non autorizzato e, ove possibile, un client autorizzato. File di bug per dare seguito agli arresti anomali.
Android Compatibility Test Suite (CTS) include test che verificano la presenza di porte di ascolto aperte.
Disabilita ADB
Android Debug Bridge (ADB) è un prezioso strumento di sviluppo e debug, ma è progettato per l'uso in un ambiente controllato e sicuro e non deve essere abilitato per l'uso generale.
- Assicurati che ADB sia disabilitato per impostazione predefinita.
- Assicurati che ADB richieda all'utente di attivarlo prima di accettare le connessioni.