- Serangan side-channel akustik yang menebak tombol yang ditekan pengguna hanya dari suara ketikan keyboard, kini dipadukan dengan deep learning dan mencatat akurasi hingga 95%
- Penyerang dapat memanfaatkan mikrofon terdekat, smartphone yang terinfeksi malware dengan izin mikrofon, atau suara ketikan dalam panggilan Zoom untuk membocorkan informasi sensitif seperti kata sandi, percakapan, dan pesan
- Eksperimen dilakukan pada MacBook Pro terbaru dengan mengumpulkan suara dari 36 tombol yang masing-masing ditekan 25 kali, lalu membuat waveform dan spektrogram untuk melatih classifier gambar CoAtNet
- Dalam lingkungan yang menggunakan laptop yang sama dan iPhone 13 mini pada jarak 17 cm, rekaman smartphone mencapai akurasi 95%, rekaman Zoom 93%, dan Skype 91,7%
- Mengubah cara mengetik, kata sandi acak, white noise, filter audio, autentikasi biometrik, dan pengelola kata sandi disebut sebagai langkah mitigasi, tetapi hanya mengganti ke keyboard yang lebih senyap tidak cukup untuk bertahan
Pencurian data lewat suara ketikan
- Tim peneliti dari universitas di Inggris melatih model deep learning untuk memperkirakan data ketikan menggunakan suara input keyboard yang direkam dengan mikrofon
- Dalam serangan berbasis rekaman mikrofon, model mencapai akurasi 95%
- Saat dilatih menggunakan audio yang dikumpulkan melalui Zoom, akurasinya turun menjadi 93%, tetapi menurut media tersebut hasil itu masih sangat tinggi dan merupakan capaian yang memecahkan rekor
- Jika serangan berhasil, kata sandi, percakapan, pesan, dan informasi sensitif lainnya dapat bocor ke pihak ketiga yang berniat jahat
Mengapa side-channel akustik realistis
- Serangan side-channel lain kadang dipengaruhi oleh kondisi khusus, laju transfer data, dan keterbatasan jarak
- Karena perangkat dengan mikrofon sudah sangat umum dan mampu menangkap audio berkualitas tinggi, tingkat kesulitan menjalankan serangan akustik menjadi lebih rendah
- Serangan side-channel berbasis suara yang dipadukan dengan kemajuan machine learning menjadi metode serangan yang lebih mungkin diwujudkan dan lebih berbahaya daripada perkiraan sebelumnya
Prosedur serangan dan pengumpulan data
- Langkah pertama adalah merekam suara ketikan dari keyboard target
- Bisa direkam dengan mikrofon terdekat
- Bisa juga dilakukan dengan ponsel yang terinfeksi malware dan memiliki izin akses mikrofon
- Dalam panggilan Zoom, peserta rapat yang berniat jahat dapat mengaitkan pesan yang diketik target dengan suara yang terekam
- Para peneliti merekam suara yang dihasilkan dari menekan 36 tombol masing-masing sebanyak 25 kali pada MacBook Pro terbaru
- Dari rekaman tersebut dibuat waveform dan spektrogram untuk memvisualisasikan perbedaan yang dapat diidentifikasi pada tiap tombol
- Sinyal kemudian melalui tahap pemrosesan data tertentu agar bisa digunakan untuk mengenali ketikan tombol
Pelatihan model dan lingkungan eksperimen
- Gambar spektrogram digunakan untuk melatih CoAtNet, sebuah classifier gambar
- Para peneliti menguji epoch, learning rate, dan parameter pembagian data untuk mendapatkan akurasi prediksi terbaik
- Lingkungan eksperimennya adalah sebagai berikut
- Laptop yang sama dengan keyboard yang digunakan pada laptop Apple selama 2 tahun terakhir
- iPhone 13 mini pada jarak 17 cm dari target
- Zoom
- Akurasi classifier berbeda menurut medianya
- Rekaman smartphone: 95%
- Rekaman Zoom: 93%
- Rekaman Skype: 91,7%
Mitigasi yang mungkin dilakukan
- Makalah tersebut menyarankan pengguna yang sangat khawatir terhadap serangan side-channel akustik untuk mengubah cara mengetik atau menggunakan kata sandi acak
- Langkah pertahanan lain mencakup perangkat lunak yang memutar ulang suara ketikan, white noise, dan filter audio ketikan berbasis perangkat lunak
- Model serangan ini menunjukkan efektivitas tinggi bahkan pada keyboard yang sangat senyap, sehingga menambahkan bahan peredam pada keyboard mekanis atau beralih ke keyboard berbasis membran kemungkinan tidak banyak membantu
- Jika memungkinkan, menggunakan autentikasi biometrik dan pengelola kata sandi agar tidak perlu mengetik informasi sensitif secara manual juga dapat menjadi faktor mitigasi
Rekomendasi tambahan dari Zoom
- Zoom menyatakan bahwa privasi dan keamanan pengguna adalah hal yang penting bagi mereka
- Selain mitigasi yang diusulkan peneliti, pengguna Zoom dapat menjaga informasi tetap lebih aman dengan pengaturan berikut
- Mengatur fitur penekanan kebisingan latar ke level yang lebih tinggi
- Membisukan mikrofon secara default saat bergabung ke rapat
- Membisukan mikrofon saat mengetik selama rapat
1 komentar
Komentar di Hacker News
Data pelatihan dan data pengujian dibuat dengan laptop, mikrofon, dan lingkungan yang sama, bahkan mungkin orang yang sama yang menekan tombolnya.
Model Zoom juga dilatih ulang dengan data yang dikumpulkan dari Zoom, tetapi meski menyebutnya sebagai serangan side-channel yang praktis, tampaknya sama sekali tidak memeriksa apakah pendekatan ini bisa digeneralisasi.
Ini bukan serangan yang mencoba mempelajari suara keyboard sembarang, melainkan mempelajari suara target tertentu.
Misalnya, jika seorang streamer Twitch mengetik jawaban di chat saat mikrofon live menyala, lalu kemudian memasukkan kata sandi Twitch, audio dari situasi pertama bisa dipelajari dan diterapkan pada situasi kedua.
Kelebihan serangan Zoom adalah jika target bisa dibuat mengetik di jendela chat, Anda mendapatkan “plaintext” segera setelah mendengar “ciphertext”.
Pengetikan yang terdengar dalam konteks lain juga kemungkinan besar mengikuti beberapa tata bahasa yang sudah bisa dikenali LLM, seperti bahasa alami, bahasa pemrograman, perintah, input perhitungan, dan sebagainya; jika tidak, mungkin besar kemungkinan itu adalah kata sandi.
Peredaman bising belakangan ini sangat agresif sampai-sampai ketika seseorang berkata “maaf ada suara mesin/ambulans/kebisingan kota”, orang lain sering kali justru tidak tahu apa maksudnya.
Suara keyboard cukup mudah dibedakan, jadi seharusnya itu tidak terlalu sulit.
Sebagai proyek kelulusan universitas, saya pernah melakukan serangan side-channel akustik yang mirip; di bidang ini sudah ada cukup banyak hasil, dan tinggal menunggu seseorang menggabungkan metodologinya.
Hasilnya cukup bagus ketika menggabungkan model geometris, model statistik berbasis pembelajaran/non-pembelajaran seperti ini, serta beberapa model bahasa.
Beberapa makalah yang saya baca adalah sebagai berikut:
https://doi.org/10.1007/s10207-019-00449-8 - SonarSnoop. Mengeluarkan ultrasonik lewat speaker ponsel untuk memprofilkan interaksi pengguna, misalnya input kata sandi berbasis swipe.
https://people.eecs.berkeley.edu/~daw/papers/ssh-use01.pdf - “Timing Analysis of Keystrokes and Timing Attacks on SSH”. Makalah tahun 2001 yang menggunakan model statistik timing penekanan tombol untuk memulihkan kata sandi dari trafik SSH terenkripsi.
https://doi.org/10.1145/1609956.1609959 - “Keyboard acoustic emanations revisited”. Memulihkan teks dengan klasifikasi berbasis fitur cepstrum menggunakan hidden Markov model dan karakteristik bahasa Inggris.
https://doi.org/10.1145/2660267.2660296 - “Context-free Attacks Using Keyboard Acoustic Emanations”. Menggunakan pendekatan geometris yang memperkirakan posisi fisik secara probabilistik dari perbedaan waktu kedatangan.
Saya tidak begitu mengerti kenapa ini diremehkan seolah bukan apa-apa.
Dari perspektif keamanan dan intelijen, ini cukup signifikan, dan berarti pembelajaran audio sudah mencapai titik di mana perangkat penyadap sensitif pada dasarnya bisa dijadikan keylogger.
Dalam banyak konteks, memasang perangkat penyadap audio jauh lebih mudah daripada serangan jaringan tradisional, dan dengan shotgun mic modern mungkin bahkan tidak perlu masuk ke dalam gedung.
Ini bisa diterapkan jauh lebih luas daripada sekadar mencuri kata sandi.
Saya sudah lama tertarik pada vektor serangan ini dan penasaran apakah benar-benar akan sampai ke titik ini.
Benar-benar menarik.
Bukan suara abstrak, melainkan mengambil rekaman saya benar-benar mengetik di keyboard tersebut, lalu mencampurnya menjadi frasa atau urutan yang terdengar realistis.
Jika berhenti sangat sebentar agar suara ketikan asli bisa bercampur, rasanya akan sangat sulit untuk mendekode, atau mengorelasikannya dengan peristiwa lain seperti momen memasukkan kata sandi.
Yang lebih baik lagi adalah memutar white noise di sekitar, dan saya pernah mendengar hal itu kadang dilakukan dalam rapat yang sangat penting.
Kalau Anda bukan orang sepenting itu, cukup masukkan hal-hal penting hanya lewat ponsel. Semoga layar sentuh tidak menghasilkan suara yang cukup jelas.
Kelihatannya bukan hal besar.
Menarik. Saya benar-benar penasaran karakteristik akustik apa yang dikenali.
Apakah ini lebih mirip sidik jari fisik tiap tombol, sehingga jika keycap atau pegas diganti model harus diperbarui? Apakah mirip dengan identifikasi forensik mesin tik lama berdasarkan ketidaksesuaian manufaktur?
Atau tombolnya sendiri identik, tetapi karena bentuk benda di sekitarnya, tiap tombol menghasilkan pola resonansi berbeda di dalam keyboard atau laptop? Jika keyboard dipindahkan di dalam ruangan, apakah model harus dilatih ulang?
Saya juga penasaran apakah seberapa keras tombol ditekan sama sekali tidak berpengaruh, atau justru besar pengaruhnya.
Untuk tiap jenis keyboard, jika membandingkan tombol MacBook yang tipis dengan keyboard eksternal full-height, saya juga penasaran mana yang membuat tiap tombol lebih mudah atau lebih sulit diidentifikasi.
Seberapa cepat mencapai tiap tombol, ritme, kecenderungan menekan tombol tertentu seberapa keras, dan sebagainya kemungkinan berpengaruh.
Rasanya lebih banyak memprofilkan orangnya daripada keyboardnya.
Sebagai catatan, sebagian—mungkin sebagian besar—perangkat lunak konferensi video menghapus suara keyboard dari audio
Ini karena pada laptop, mikrofon berada tepat di sebelah tombol, sehingga bisa menjadi gangguan yang sangat mengalihkan perhatian
Saya cukup yakin Zoom melakukan ini secara default sebagai bagian dari peredam bising. Dengan memanfaatkan event keydown, bukan hanya stream audio, mungkin juga bisa membantu identifikasi, sehingga bisa lebih mudah
Jika peredam bising default saja sudah aktif, serangan seperti ini kemungkinan bisa dicegah dalam konferensi video biasa
Jadi saya sulit membayangkan situasi di mana ini menjadi ancaman realistis, kecuali penyerang sudah punya akses fisik sampai bisa memasang keylogger biasa atau kamera tersembunyi
Saat seseorang mulai mengetik di tengah panggilan, suaranya terdengar sangat jelas
Georgi Gerganov sudah membuat yang seperti ini beberapa tahun lalu
https://github.com/ggerganov/kbd-audio
Ilustrasi contoh menunjukkan satu tombol ditekan setiap 0,5 detik, yang menyiratkan mengetik dua jari sekitar 24 wpm
Dengan cara seperti ini, model mendapatkan bentuk gelombang yang sangat bersih
Saya penasaran apakah pendekatan ini juga bekerja baik untuk pengetik rata-rata atau cepat. Mengaitkan profil suara dengan huruf bisa menjadi jauh lebih sulit
Jika data latihnya cukup, sepertinya pola yang dapat diulang bisa ditemukan dari pengetik standar
Misalnya, pada tata letak QWERTY, setelah mengetik “A”, “Q” mungkin membutuhkan waktu input 1,2–2,3 kali lebih lama daripada “J”; semacam pola tempo berpasangan
Ini membantu mengurangi ruang pencarian dibanding mencoba semua kandidat karakter secara brute force
Jika target memakai frasa sandi, ketika beberapa karakter patokan dapat diidentifikasi dengan probabilitas tinggi seperti “hXXXse battXXX stXXXXX cXXXXXX”, itu menjadi mungkin ditafsirkan
Setelah melihat tulisan ini, saya membuka proyek awal untuk varian ide ini sebagai open source: https://github.com/secretlessai/audio-mnist
Saya sudah lama tertarik menerapkan teknik klasifikasi gambar seperti CNN pada data audio
Beberapa tahun lalu, sebagai proyek akhir pekan, saya membuat dataset “audio-mnist” sederhana dari rekaman audio angka tulisan tangan, tetapi setelah beberapa hari mengerjakannya saya tidak sempat melanjutkan
Meski begitu, sudah cukup lama saya berpikir seharusnya ini dirilis sebagai open source, dan tulisan ini membuat saya akhirnya bertindak
Jika datanya ditambah dan contoh CNN dasar serta hal lain dimasukkan, ini bisa menjadi titik awal yang baik untuk berbagai riset dan alat
Kode terpisah untuk membuat rekaman dan memotong audio masih harus saya cari dan rapikan agar bisa dipahami
Semoga ini membantu siapa pun yang merasa sebagian proses ini menarik atau berguna
Akan menarik kalau ada keyboard nirkabel yang bekerja dengan cara ini
Tidak perlu baterai, pengisian daya, atau sinkronisasi
Itu adalah remote Space Command buatan Zenith, dan konon inilah alasan remote TV kadang disebut “clicker”
https://www.theverge.com/23810061/zenith-space-command-remot...
Dampak probabilitas kegagalan × biaya rasanya tetap sulit ditoleransi bahkan jika tingkat kesalahannya membaik satu digit
Sekarang saatnya menyuntikkan audio latar berisi saya mengetik “fuck you” ke panggilan Zoom
Tujuannya adalah membuat penyadap benar-benar mengevaluasi ulang pilihan hidupnya, dan mungkin malah larut dalam ceritanya sendiri
Karena itu menjadi titik acuan yang bagus