Bagian ini berisi rekomendasi untuk memastikan keamanan komunikasi jaringan dari perangkat Android.
Soket pemrosesan permintaan aman
Gunakan soket pemrosesan dengan hati-hati. Umumnya, tidak boleh ada soket pemrosesan terbuka di perangkat karena soket ini menyediakan vektor bagi penyerang jarak jauh untuk mendapatkan akses ke perangkat.
- Perangkat Android harus meminimalkan jumlah soket pemrosesan internet
yang diekspos, terutama saat booting atau secara default. Secara default, tidak ada soket yang
akan memproses internet saat booting.
- Proses root dan proses yang dimiliki oleh ID unik sistem (UID) tidak boleh mengekspos soket pemrosesan apa pun.
- Soket pemrosesan harus dapat dinonaktifkan tanpa update OTA. Hal ini dapat dilakukan menggunakan perubahan konfigurasi server atau perangkat pengguna.
- Untuk soket yang menggunakan IPC lokal, aplikasi harus menggunakan soket domain UNIX dengan akses yang dibatasi untuk grup. Buat deskripsi file untuk IPC dan buat +RW untuk grup UNIX tertentu. Setiap aplikasi klien harus berada dalam grup UNIX tersebut.
- Beberapa perangkat dengan beberapa prosesor (misalnya, radio/modem yang terpisah dari prosesor aplikasi) menggunakan soket jaringan untuk berkomunikasi antar prosesor. Dalam kasus tersebut, soket jaringan yang digunakan untuk komunikasi antar-prosesor harus menggunakan antarmuka jaringan terisolasi untuk mencegah akses oleh aplikasi yang tidak sah di perangkat (yaitu menggunakan iptables untuk mencegah akses oleh aplikasi lain di perangkat).
- Daemon yang menangani port pemrosesan harus tahan terhadap data yang salah format. Anda harus melakukan pengujian fuzz terhadap port menggunakan klien yang tidak sah, dan, jika memungkinkan, klien yang sah. Laporkan bug untuk menindaklanjuti error.
Compatibility Test Suite (CTS) Android menyertakan pengujian yang memeriksa keberadaan port pemrosesan terbuka.
Menonaktifkan adb
Android Debug Bridge (adb) adalah alat pengembangan dan proses debug yang berharga, tetapi dirancang untuk digunakan di lingkungan yang aman dan terkontrol serta tidak boleh diaktifkan untuk penggunaan umum.
- Pastikan adb dinonaktifkan secara default.
- Pastikan adb mengharuskan pengguna untuk mengaktifkannya sebelum menerima koneksi.