- Ditemukan masalah keamanan serius di mana StarDict pada lingkungan X11 mengirim pilihan teks pengguna ke server eksternal melalui HTTP tanpa enkripsi
- Masalah ini terjadi karena plugin YouDao dan dict.cn aktif secara default dalam konfigurasi bawaan Debian
- Ini berarti setiap kali pengguna memilih teks, teks tersebut otomatis dikirim ke server, sehingga ada risiko kebocoran informasi sensitif
- Pengelola paket telah meninjau usulan untuk menonaktifkan fitur dan memisahkan plugin, tetapi penerapan solusi mendasar masih kurang memadai
- Masalah ini sudah beberapa kali diangkat di masa lalu, namun kembali menunjukkan tidak adanya respons yang tuntas serta pentingnya kesadaran keamanan
Ringkasan cara kerja StarDict dan isu keamanannya
- StarDict adalah program kamus lintas platform berlisensi GPLv3, dengan dukungan berbagai bahasa dan ekosistem plugin
- Dalam konfigurasi bawaan Debian, saat StarDict berjalan, teks yang dipilih pengguna dikirim ke dua server jarak jauh, youdao.com dan dict.cn, melalui HTTP tanpa enkripsi
- Masalah ini juga telah dilaporkan ke milis oss-security dan pelacak bug Debian
Rincian masalah
- Secara desain StarDict, kode yang berkomunikasi dengan situs web kamus merupakan bagian yang wajar, tetapi fitur "scan" aktif secara default
- Ini berarti ketika pengguna memilih teks dengan mouse, popup terjemahan akan muncul otomatis, dan teks tersebut otomatis dikirim ke server eksternal
- Masalah menjadi serius ketika pengguna membiarkan StarDict terus berjalan di latar belakang
Perbedaan menurut lingkungan Linux
- Di lingkungan Wayland, StarDict tidak dapat menangkap teks dari aplikasi lain, sehingga fitur scan tidak berfungsi dan masalah keamanan ini tidak muncul
- Masalah ini saat ini hanya ada di lingkungan X11 lama
Respons Debian dan pengembang StarDict
- Pengelola paket Debian, Xiao Sheng Wen, menilai ini bukan masalah besar dengan mengatakan bahwa
"fitur scan dan plugin YouDao dapat dinonaktifkan" - Namun pelapor, Vincent Lefevre, menekankan bahwa "fitur yang berkaitan dengan privasi harus nonaktif secara default"
- Fitur ini bisa diberitahukan lewat deskripsi paket, tetapi deskripsi stardict-plugin tidak menyebutkan penggunaan kamus online
- Ada usulan perbaikan seperti pemisahan plugin, tetapi belum ada tindakan segera
Kenyamanan fitur dan kekhawatiran keamanan
- Fitur scan adalah keunggulan utama StarDict saat pengguna ingin cepat mencari arti ketika membaca bahasa asing
- Namun pengguna sulit memperkirakan bahwa komunikasi ini tidak dienkripsi. Siapa pun di jalur perantara dapat menyebabkan risiko terbukanya teks sensitif
Insiden keamanan serupa di masa lalu dan penanganannya
- Pada 2009 dan 2015, kasus serupa juga pernah dilaporkan
- 2009: penonaktifan kamus jaringan sempat dijadikan default
- Namun plugin YouDao yang ditambahkan pada 2016 mengabaikan pengaturan tersebut
- Masalah tahun 2015 baru diselesaikan pada 2025 dalam bentuk penghapusan plugin
- Hal ini menunjukkan isu yang berulang dan lambatnya penanganan, bersama pergantian pemelihara dan buruknya penetapan prioritas
Skala pengguna dan dampak keamanan
- Menurut statistik Debian, saat ini hanya sekitar 178 orang yang memasang dan memakai StarDict, tetapi dengan mempertimbangkan sistem yang tidak ikut statistik, banyak pengguna selama bertahun-tahun mungkin telah terekspos pada risiko kebocoran teks
- Salinan kata sandi, email sensitif, atau teks yang dipilih saat mengedit dokumen bisa saja terekspos ke pihak luar
Ekosistem open source dan agenda keamanan
- Distribusi besar seperti Debian mengelola sangat banyak paket, sehingga pembaruan yang terlewat dan penuaan perangkat lunak sering terjadi
- Hukum Linus yang berbunyi "dengan cukup banyak orang melihat, semua bug menjadi dangkal" pada praktiknya baru berlaku jika seseorang menemukan bug, melaporkannya, lalu pemelihara mengakui masalah tersebut dan memperbaikinya
Perubahan dari X11 ke Wayland
- Adopsi Wayland bertujuan untuk mengurangi kemungkinan cacat keamanan jenis ini, terutama kebocoran informasi antar aplikasi
- Namun, ketidaknyamanan fungsional dan cara baru menangani izin penggunaan tetap menjadi tantangan
Kesimpulan dan implikasi
- Kenyataan bahwa masalah keamanan yang ditemukan, didiagnosis, dan dilaporkan masih tetap belum terselesaikan atau kembali terulang menimbulkan kekhawatiran
- Untuk menjaga reputasi keamanan Linux, pengembang open source, pengelola paket, dan pengguna perlu terus sadar terhadap masalah ini dan merespons dengan cepat
1 komentar
Komentar Hacker News
Seperti yang ditunjukkan Xiao, pengguna yang memasang perangkat lunak memang bisa membaca deskripsi paket, dan fungsi pemindaian itu memang disebutkan. Namun pengelola Debian sering menjawab laporan bug dengan nada seperti, “Anda harus membaca dengan teliti semua deskripsi paket (bahkan ratusan paket yang terpasang sebagai dependensi),” padahal jujur saja, jika Anda mulai membaca semua deskripsi dan README pada rilis Trixie beberapa hari lalu, mungkin sampai sekarang pun belum selesai
dselectlalu meluangkan beberapa jam untuk menyesuaikan semua opsi dengan lingkungan perangkat keras nyata kita saat itu. Dulu sistemnya tidak sedinamis sekarang, jadi memang harus memilih opsi satu per satu. Sekarang jumlah paket sudah terlalu banyak, dan konfigurasi kernel juga terlalu luas, jadi secara realistis mustahil memeriksa semuanya (masih ada yang pakaidselect...?)Wajar saja kalau orang mengira program kamus memang menyertakan kode untuk berkomunikasi dengan situs web. Tetapi kalau saya memasang kamus lewat
apt-get, saya berharap seluruh kamusnya ada di komputer saya. Lagi pula, kamus kertas juga sudah dipakai selama ratusan tahun... Stardict memang berbasis online, jadi mungkin itu normal, tetapi rasanya seperti ada jebakandingyang lama sangat mendukung kamus lokal. Itu juga ada di Debian tautan dingSaya cukup terkejut saat mengetahui bahwa di ponsel Samsung, semua data clipboard dibagikan ke seluruh perangkat di akun Samsung saya, termasuk kata sandi, dan bahkan riwayatnya juga disimpan. Saya tidak ingat apakah itu pengaturan bawaan atau saya tak sengaja menyetujuinya. Saya menduga data ini diteruskan lewat server Samsung. Fitur berbagi sudah saya matikan, tetapi riwayat clipboard tidak mati, dan meski saya ganti keyboard, kalau kembali ke keyboard Samsung, semua isi clipboard lama masih ada. Sekarang saya rasa ponsel berikutnya bukan Samsung
Menurut saya pembahasan soal Wayland agak berpotensi menyesatkan. Ringkasan terakhirnya akurat: “Mungkin saja StarDict meminta izin khusus agar bisa berjalan di Wayland, dan pengguna akan menerima nilai bawaan itu seperti yang biasa terjadi sekarang.” Jadi kemungkinan besar memang begitu, dan izin itu juga bisa saja disetel otomatis saat proses instalasi. Malware akan selalu ada. Wayland bisa melindungi dari jenis serangan tertentu, tetapi tidak akan membuat Anda aman dari paket yang dipasang sebagai bagian dari distribusi
dict.youdao.comdandict.cnlewat HTTP tanpa perlindungan apa pun, sehingga siapa pun di jalur itu bisa melihat isi permintaannyaKueri kamus lokal untuk setiap clipboard itu tidak masalah. Menambahkan fungsi permintaan ke kamus jarak jauh juga tidak masalah. Menggabungkan dua fungsi ini dengan mudah pun masih bisa dimaklumi kalau dipisahkan lewat flag khusus atau semacamnya, tetapi mencampur keduanya dalam pengaturan bawaan hampir terasa mendekati tindakan jahat
Soal pernyataan “tentu saja program kamus punya kode yang terhubung ke situs web”, saya ingin bilang bahwa kenyataannya tergantung tujuan. Versi minimum kamus bahasa Finlandia (
tsk) yang saya sediakan berukuran sekitar 30MB dengan sekitar 250 ribu kata, dan kamusnya langsung ditanam ke dalam biner, lalu pencarian prefix dibangun ulang setiap kali dijalankan. Tetapi basis data besar yang mencakup lemmatisasi, etimologi, dan sebagainya bisa membengkak sampai puluhan gigabita. Tujuan saya adalah penelusuran yang sepenuhnya instan pada tingkat input keyboard, jadi struktur seperti ini diperlukan. Usahanya juga besar, sehingga mulai versi berikutnya saya memutuskan untuk menjualnya tsk Github situs versi berbayar (saat ini offline karena masalah code signing untuk Windows). Untuk sebagian besar kasus penggunaan lain, jauh lebih praktis untuk melakukan kueri ke server. Hampir tidak ada alasan untuk mengunduh seluruh kamus raksasa, jadi struktur hibrida pun cukup masuk akal, misalnya 10 ribu kata teratas di-cache secara lokal, sementara kata langka lainnya diambil dari serverMelihat hal seperti ini, ada banyak bagian yang membuat saya hanya bisa menyimpulkan ada niat buruk. Pengelolanya menjawab, “Pengguna sendiri yang mengaktifkan fitur ‘scan’, dan memilih teks akan memicu aksi penerjemahan... jadi kenapa Anda memilih data rahasia sebagai kueri terjemahan?”
Saya menghormati besarnya upaya yang dicurahkan ke Debian, tetapi saya selalu tidak suka dengan “maksimalisme” semacam ini dari pengelola paket. Misalnya, saat mencoba memasang foo, mereka ikut memasang semua perangkat lunak terkait yang mungkin relevan, dan kalau ada daemon jaringan, langsung dijalankan juga. Saya tahu ada flag untuk mencegah pemasangan “paket rekomendasi”, tetapi rasanya pengaturan bawaan justru malah merepotkan pengguna
/etc/apt/conf.d/, atau untuk sekali pakai gunakan--no-install-recommendsAPT::Install-Recommendsadalah false, lalu diubah menjadi true pada Debian 6.0 Squeeze (2011-02-06). Saat itu saya tidak suka karena Debian dan Ubuntu jadi memasang banyak paket yang tidak perlu. Kalau dipikir sekarang, batas antara recommend dan suggest memang agak kabur, dan saya jadi merasa lebih baik jika “recommend” dipasang secara bawaan dan pengguna bisa opt-out. Meski begitu, di sistem yang saya kelola sendiri, saya masih mematikan pemasangan otomatis paket rekomendasi--install-recommendsmenjadi bawaan. Perbedaan halus bahwa Recommends berarti “kebanyakan dari kami menginginkan ini” dan Suggests berarti “fitur untuk sebagian kecil pengguna” menurut saya tidak buruk. Namun saya juga setuju bahwa penyalahgunaan field Recommends oleh pemelihara individual itu masalah. Misalnya, tidak masuk akal bila memasang alat kompresi malah memaksa sistem init tertentu ikut terpasang (file-roller, saya melihat ke arah tim GNOME)Saya tidak mengerti kenapa semua ini tidak offline. Seluruh kamus bahasa Mandarin jumlah katanya kurang dari 400 ribu, dan bahkan kalau dihitung 1k per kata pun, 400MB sudah cukup. Ini sepenuhnya bisa dibuat lokal; bergantung pada koneksi jaringan hanyalah desain yang buruk
Melihat isu seperti ini benar-benar membuat saya sangat marah. Ini sama sekali tidak bisa diterima