Kerentanan di Android yang memungkinkan Anda melewati layar kunci

Kerentanan telah diidentifikasi di platform Android (CVE-2022-20465), yang memungkinkan Anda menonaktifkan kunci layar dengan mengatur ulang kartu SIM dan memasukkan kode PUK. Kemampuan untuk menonaktifkan kunci telah ditunjukkan pada perangkat Google Pixel, tetapi karena perbaikan tersebut memengaruhi basis kode utama Android, kemungkinan besar masalah tersebut memengaruhi firmware dari produsen lain. Masalah ini telah diatasi dalam peluncuran patch keamanan Android pada bulan November. Peneliti yang memperhatikan masalah ini menerima hadiah sebesar $70 ribu dari Google.

Masalah ini disebabkan oleh proses pembukaan kunci yang salah setelah memasukkan kode PUK (Personal Unblocking Key), yang digunakan untuk melanjutkan pengoperasian kartu SIM yang diblokir setelah berulang kali salah memasukkan kode PIN. Untuk menonaktifkan kunci layar, cukup pasang kartu SIM di ponsel Anda, yang memiliki perlindungan kode PIN. Setelah mengganti kartu SIM yang dilindungi kode PIN, permintaan kode PIN pertama kali ditampilkan di layar. Jika Anda salah memasukkan kode PIN sebanyak tiga kali, kartu SIM akan diblokir, setelah itu Anda akan diberikan kesempatan untuk memasukkan kode PUK untuk membukanya. Ternyata memasukkan kode PUK dengan benar tidak hanya membuka kunci kartu SIM, tetapi juga mengarah ke transisi ke antarmuka utama, melewati screen saver, tanpa mengonfirmasi akses menggunakan kata sandi atau pola utama.

Kerentanan ini disebabkan oleh kesalahan dalam logika pemeriksaan kode PUK di pengendali KeyguardSimPukViewController, yang bertanggung jawab untuk menampilkan layar otentikasi tambahan. Android menggunakan beberapa jenis layar autentikasi (untuk PIN, PUK, kata sandi, pola, autentikasi biometrik) dan layar ini dipanggil secara berurutan ketika beberapa pemeriksaan perlu dilakukan, misalnya, ketika PIN dan pola diperlukan.

Jika Anda memasukkan kode PIN dengan benar, verifikasi tahap kedua akan dipicu, yang mengharuskan Anda memasukkan kode buka kunci utama, tetapi ketika Anda memasukkan kode PUK, tahap ini dilewati dan akses diberikan tanpa meminta kata sandi utama atau kunci pola . Tahap pembukaan kunci berikutnya dibuang karena saat memanggil KeyguardSecurityContainerController#dismiss() tidak ada perbandingan antara metode verifikasi yang diharapkan dan yang lolos, yaitu. pemroses yakin bahwa metode verifikasi tidak berubah dan selesainya verifikasi kode PUK menunjukkan konfirmasi otoritas yang berhasil.

Kerentanan ditemukan secara tidak sengaja - ponsel pengguna mati dan setelah mengisi daya dan menyalakannya, ia membuat kesalahan beberapa kali saat memasukkan kode PIN, setelah itu ia membuka kuncinya dengan kode PUK dan terkejut karena sistem tidak menanyakannya. untuk kata sandi utama yang digunakan untuk mendekripsi data, setelah itu dibekukan dengan pesan β€œPixel is starting...”. Pengguna tersebut ternyata sangat teliti, memutuskan untuk mencari tahu apa yang sedang terjadi dan mulai bereksperimen dengan memasukkan kode PIN dan PUK dengan berbagai cara, hingga ia secara tidak sengaja lupa me-reboot perangkat setelah mengganti kartu SIM dan mendapatkan akses ke lingkungan sebagai gantinya. pembekuan.

Yang menarik adalah reaksi Google terhadap pengumuman kerentanan tersebut. Informasi mengenai permasalahan tersebut telah dikirimkan pada bulan Juni, namun hingga bulan September peneliti masih belum dapat memperoleh jawaban yang jelas. Dia percaya bahwa perilaku ini disebabkan oleh fakta bahwa dia bukan orang pertama yang melaporkan kesalahan ini. Kecurigaan bahwa ada sesuatu yang tidak beres muncul pada bulan September, ketika masalah tetap tidak teratasi setelah menginstal pembaruan firmware yang dirilis 90 hari kemudian, ketika periode kerahasiaan yang dinyatakan telah berakhir.

Karena semua upaya untuk mengetahui status pesan terkirim tentang masalah hanya menghasilkan balasan otomatis dan template, peneliti mencoba menghubungi karyawan Google secara pribadi untuk mengklarifikasi situasi dengan persiapan perbaikan dan bahkan menunjukkan kerentanan di kantor Google di London. . Baru setelah itu upaya untuk menghilangkan kerentanan dapat dilanjutkan. Selama analisis, ternyata seseorang telah melaporkan masalah tersebut sebelumnya, namun Google memutuskan untuk membuat pengecualian dan memberikan imbalan jika melaporkan masalah tersebut lagi, karena hanya berkat kegigihan pembuatnya masalah tersebut diketahui.

Sumber: opennet.ru

Tambah komentar