Celah Keamanan Fast Connect pada AirPods
(blogs.gnome.org)- Karena CVE-2024-27867 pada firmware AirPods, orang yang mengetahui alamat MAC Bluetooth dapat terhubung ke perangkat untuk mendengarkan mikrofon atau memutar musik
- Celah ini terjadi karena jalur Fast Connect, protokol proprietari Apple, tidak secara eksplisit memeriksa status autentikasi dan enkripsi
- Alamat MAC Bluetooth yang diperlukan untuk serangan tidak sepenuhnya privat, dan dapat diperoleh melalui sinyal radio saat dalam mode pairing atau saat AirPods aktif
- Jika AirPods berada di dalam casing pengisian daya yang tertutup, atau AirPods Max berada di dalam Smart Case, fungsi nirkabel dimatikan sehingga koneksi tidak dapat dilakukan sama sekali
- Apple telah merilis pembaruan firmware untuk AirPods dan beberapa Beats, tetapi pengguna Android, Windows, dan Linux yang menggunakannya tanpa iOS atau macOS mungkin menghadapi prosedur pembaruan yang lebih merepotkan
Celah firmware AirPods dan cakupan dampaknya
- Firmware Apple AirPods memiliki celah keamanan CVE-2024-27867
- Orang yang mengetahui alamat MAC Bluetooth dapat terhubung ke AirPods dan melakukan tindakan berikut
- Mendengarkan mikrofon
- Memutar musik
- Memeriksa dan menjeda musik yang sedang diputar di perangkat lain yang terhubung
- Melakukan sebagian tindakan yang dimungkinkan oleh protokol AAP
- Mengirim pesan dengan format salah untuk membuat AirPods crash
- Meski AirPods sudah terhubung ke ponsel, penyerang tetap dapat membuat koneksi tambahan
- Namun, jika penyerang menyalakan mikrofon, pemutaran musik akan berhenti
- Jika AirPods berada di dalam casing pengisian daya yang tertutup, atau AirPods Max berada di dalam Smart Case, fungsi nirkabel dimatikan sehingga koneksi apa pun tidak memungkinkan
Cara celah ditemukan
- AirPods 3 menjalankan berbagai fungsi secara mulus dalam kombinasi macOS dan perangkat Apple, tetapi ketika laptop yang sama di-boot ke Linux, AirPods tidak dapat terhubung ke ponsel dan laptop secara bersamaan
- Karena perbedaan ini, diasumsikan ada protokol khusus Apple yang tidak ada pada headphone Bluetooth biasa, lalu analisis dimulai untuk mengimplementasikan ulang sebagian fungsi di Linux
- Dalam proses analisis, celah ditemukan pada fitur Fast Connect Apple untuk menghubungkan periferal Bluetooth
Cara kerja Fast Connect
- Fast Connect adalah protokol proprietari Apple, dan menggunakan fitur ping dalam spesifikasi Bluetooth secara kreatif
- Tujuannya adalah mengurangi waktu penyiapan koneksi antara dua perangkat Apple dari sekitar 1 detik menjadi sekitar 0,5 detik
- Sebelum melakukan autentikasi dengan perangkat tujuan koneksi, kedua perangkat saling bertukar pesan ping L2CAP
- Apple memasukkan pesan protokol ke dalam payload ping
- Dengan cara ini, kedua pihak dapat memastikan apakah Fast Connect didukung tanpa melanggar spesifikasi Bluetooth
- Setelah itu, negosiasi yang diperlukan untuk koneksi dilakukan melalui 3 kali pertukaran pesan pulang-pergi tambahan
- Total pesan pulang-pergi hanya 4 kali, sehingga lebih cepat daripada prosedur koneksi Bluetooth biasa yang bertukar descriptor SDP dan mengonfigurasi channel
Pemeriksaan autentikasi yang terlewat
- Masalahnya adalah ada pemeriksaan penting yang hilang pada jalur kode terpisah yang mengimplementasikan Fast Connect
- AirPods tidak memeriksa apakah pihak yang terhubung benar-benar telah terautentikasi dan mengaktifkan enkripsi
- iOS dan macOS normal melakukan tahap autentikasi dan aktivasi enkripsi setelah pesan Fast Connect awal
- Meski penyerang melewati tahap ini, AirPods tetap melanjutkan prosedur Fast Connect
- Saat terhubung ke AirPods dengan cara Bluetooth biasa tanpa Fast Connect, tahap autentikasi tercakup secara implisit; kemungkinan karena itu pemeriksaan eksplisit terlewat pada jalur kode Fast Connect
Syarat alamat MAC Bluetooth
- Penyerang harus mengetahui alamat MAC Bluetooth tetap milik AirPods
- Alamat ini bukan informasi yang sepenuhnya privat
- Diiklankan melalui sinyal radio saat perangkat Bluetooth berada dalam mode pairing
- Saat AirPods aktif, alamat ini dapat dengan mudah diperoleh dari sinyal radio menggunakan hardware seperti Ubertooth One
Pembaruan dan masalah bagi pengguna non-Apple
- Dalam beberapa hari terakhir, Apple merilis beberapa pembaruan firmware yang memperbaiki celah ini
- Perangkat yang terdampak mencakup AirPods 2, AirPods 3, AirPods Pro, AirPods Pro 2, AirPods Max, dan sebagian headphone Beats
- Pengguna harus memastikan firmware AirPods sudah terbaru
- Informasi pembaruan keamanan: halaman keamanan Apple
- Cara memperbarui: panduan pembaruan firmware AirPods
- Firmware AirPods diperbarui otomatis, tetapi hanya saat digunakan bersama iPhone atau MacBook
- Orang yang menggunakan AirPods tanpa perangkat iOS atau macOS, seperti pengguna Android, Windows, atau Linux, sulit memperbarui firmware dengan mudah
- Pengguna seperti ini tampaknya dapat memperoleh pembaruan firmware di Apple Store
Pelaporan dan alat
- Jiska Classen dari University of Potsdam membantu untuk pertanyaan terkait Bluetooth dan proses pengungkapan publik
- Alat komunitas Linux seperti BlueZ diperlukan untuk menemukan masalah ini
1 komentar
Pendapat di Hacker News
Saya ingin tahu faktor apa yang menentukan satuan waktu dalam proses ini
Pada akhirnya, ini adalah struktur di mana handshake untuk memastikan fitur apa yang didukung kedua sisi dan menentukan protokol lapisan fisik mana yang akan dipakai untuk berkomunikasi memakan waktu
Ada beberapa aplikasi pihak ketiga, tetapi keandalannya rendah. Untungnya di Mac sebagian besar hal bisa dilakukan, tetapi uji kecocokan pemakaian hanya memerlukan iPhone. Upgrade firmware tidak bisa dikendalikan pengguna, dan tidak ada informasi status atau progres sama sekali, sehingga dibuat sebingung mungkin
Staf dukungan Apple Store pernah mengatakan, “Hubungkan AirPods ke Mac, masukkan ke casing yang terbuka, sambungkan casing ke daya, lalu biarkan sekitar 30 menit,” tetapi dalam praktiknya pembaruan terasa cukup acak. Staf Apple Store juga kadang tampak sangat samar memahami interoperasi antarproduk Apple selain iPhone, dan dua kali mereka bingung ketika tahu saya memakai AirPods hanya dengan Mac dan Android tanpa iPhone
https://support.apple.com/en-us/106340
Versi AS menampilkan nomor versi firmware terbaru yang berbeda; misalnya AirPods Pro generasi ke-2 adalah 6F8, sedangkan versi India 6B34
Jadi menantikan tulisan lanjutan tentang implementasi Linux
Saya berharap ada lebih banyak kendali atas pembaruan
https://support.apple.com/en-us/106340
Memang benar lebih dari 95% pengguna AirPods tidak perlu tahu soal pembaruan firmware, tetapi bagi orang yang peduli, seharusnya ada cara untuk memastikan apa yang sedang terjadi
Biasanya ini bukan masalah besar, tetapi saya pernah menerima firmware AirPods beberapa hari terlambat, dan ke depannya bisa saja ada momen ketika pembaruan segera menjadi penting
Jika caranya adalah memutus koneksi yang ada, tampaknya sulit untuk menyadap panggilan atau stream audio tanpa diketahui pengguna. Saya tidak tahu apakah skenario terburuknya hanya memindai alamat MAC dari jarak dekat lalu tersambung otomatis untuk memutar suara bising di telinga, atau ada masalah yang lebih besar
Mungkin saja seseorang mengambil alih AirPods pejabat terkenal atau politisi saat mereka sedang melakukan video call, tetapi sepertinya akan langsung ketahuan; saya penasaran apakah ada hal yang lebih buruk dari itu
Selain itu, mengambil alih koneksi Bluetooth berarti memperoleh permukaan serangan yang cukup luas, jadi jika penyerang mengetahui kerentanan lain, ini juga membuka jalan untuk rangkaian exploit tambahan
Protokol “Fast Connect” tampaknya mengizinkan “koneksi” ke beberapa perangkat sekaligus, sehingga pengguna kemungkinan besar tidak menyadarinya. Serangan lain adalah menaruh perangkat berbentuk tatakan gelas kopi di berbagai tempat di kantor seperti petugas kebersihan, lalu menangkap audio dari AirPods di sekitar
Bagian inti yang sulit pada dasarnya sudah terselesaikan; tinggal membuat perangkat berisi baterai kecil, pemancar Bluetooth, dan penyimpanan, maka audio berkualitas tinggi bisa dikumpulkan di dekat tempat orang berbicara
Namun harus berada dalam jangkauan Bluetooth, jadi mungkin lebih mudah menyadap dengan cara biasa saja
Jika tidak ditambal, mungkin seseorang akan membuat aplikasi pengganggu AirPods untuk Flipper Zero yang memutus audio AirPods semua orang di tempat umum dan membuat mereka kesal
6A326 tampaknya versi yang menyertakan perbaikan
https://support.apple.com/en-us/HT214111
Sepertinya itu versi untuk AirPods Pro generasi ke-2