Kenapa Satu Klik Link Ini Bisa Curi Akun Telegram Desktop?
Satu klik tautan bisa mencuri sesi login Telegram Desktop lewat bug CVE-2026-107181. Ini cara kerja dua celahnya, dari injeksi IPC sampai pengambilalihan akun.
Bayangkan kamu baru saja dimasukkan ke sebuah grup Telegram oleh orang yang tidak kamu kenal. Di dalam grup itu, seseorang mengirim file bernama biasa saja, lalu sebuah tautan yang terlihat wajar. Kamu tidak mengunduh apa pun, tidak membuka file aneh, dan tidak mengetik kata sandi. Namun beberapa jam kemudian, akun Telegrammu sudah dikendalikan orang lain.
Itulah skenario yang ditemukan peneliti keamanan bernama beaksec. Sebuah bug di Telegram Desktop membuat satu klik pada tautan yang disiapkan dengan tepat bisa mencuri berkas sesi loginmu, lalu mengirimnya langsung ke penyerang lewat Telegram itu sendiri. Akunmu berpindah tangan tanpa kamu sadari.

Celah ini diberi kode CVE-2026-107181, dinilai serius dengan skor CVSS 3.1 sebesar 8,1, dan sudah diperbaiki di versi 7.2.9. Mari bedah cara kerjanya, karena mekanismenya menarik sekaligus menakutkan.
Dua Celah dalam Satu Klik
Bug ini sebenarnya gabungan dari dua cacat yang saling melengkapi. Cacat pertama ada di cara Telegram Desktop menangani tautan yang kamu klik.
Ketika kamu mengklik tautan tg:// dan Telegram sudah berjalan, sistem operasi tetap meluncurkan proses Telegram baru. Proses baru itu sadar ada instansi lain yang hidup lewat sebuah soket lokal, lalu menyerahkan tautan tersebut dalam bentuk satu baris teks dan berhenti. Masalahnya, format teks itu memisahkan setiap instruksi dengan titik koma, dan titik koma yang muncul di dalam tautan tidak pernah di-escape.
Akibatnya, tautan seperti tg://x?a=1;CMD:quit sampai ke instansi yang berjalan bukan sebagai satu instruksi, melainkan dua instruksi terpisah. Itulah injeksi, cacat pertama. Nama CMD: memang hanya menerima show dan quit, jadi contoh di atas cuma bisa menutup aplikasi. Tetapi perintah OPEN: menerima URL apa pun tanpa filter skema.
Di sinilah cacat kedua masuk: ada skema internal bernama interpret: yang hidup di dalam kode Telegram. Skema ini tidak dikenal sistem operasi, tapi bisa dipanggil lewat perintah OPEN: yang disuntikkan. Kombinasinya sederhana dan mematikan: tautan yang diklik korban diam-diam mengeksekusi perintah tambahan yang tidak pernah ia minta.
Skema interpret: yang Seharusnya Sudah Pensiun
Skema interpret: dulunya adalah alat bantu internal tim Telegram untuk mempublikasikan rilis mereka sendiri. Alurnya sederhana: sebuah skrip menulis file teks kecil berisi nama kanal, berkas yang akan dikirim, dan teks pengumuman, lalu meluncurkan Telegram dengan skema interpret: menunjuk ke file itu. Telegram membaca file instruksi, mengambil berkasnya, dan mengunggahnya ke kanal.
Masalahnya, fungsi yang melakukan ini, InterpretSendPath, tidak pernah memeriksa siapa yang memintanya. Ia tidak meminta konfirmasi di layar, tidak memvalidasi asal permintaan, dan bisa membaca berkas apa pun dari disk untuk kemudian dikirim ke sebuah chat atau supergrup.
Dari baris perintah, perilaku itu tidak berbahaya. Penyerang yang sudah bisa mengetik perintah di komputermu tentu tidak butuh Telegram untuk mencuri berkasmu. Tetapi begitu jalur yang sama bisa dijangkau lewat tautan yang diklik korban, fungsi istimewa ini menjadi tersedia bagi siapa pun yang bisa membuatmu mengklik satu tautan.
Bagaimana Rantai Serangan Bekerja
Langkah pertama adalah menaruh file instruksi di komputer korban. Telegram Desktop secara default mengunduh otomatis berkas yang dikirim di grup hingga 8 MiB, lalu menyimpannya di folder Downloads/Telegram Desktop dengan nama yang dipilih pengirim. Penyerang cukup menambahkan korban ke grup, lalu mengirim tiga file teks berisi instruksi seperti channel: <kanal penyerang>, file: <berkas target>, dan tanpa sengaja, tidak ada pengecekan from: berarti tidak ada verifikasi akun.
Langkah kedua adalah memancing klik. Tautan tg:// yang diklik di dalam chat Telegram aman, karena ditangani langsung di dalam proses yang sama dan tidak pernah lewat soket. Karena itu penyerang mengirim tautan https:// biasa, dan servernya merespons dengan redirect ke tautan tg:// yang sudah disuntik perintah. Saat korban mengkliknya di peramban, sistem meminta membuka Telegram, dan proses baru itu menyerahkan teks berisi beberapa perintah tersembunyi ke instansi yang sedang berjalan.
Perintah tersembunyi itu berupa OPEN:interpret:../../../Downloads/Telegram%20Desktop/instructions.txt. Karena interpret: menerima path relatif, penyerang tidak perlu tahu nama pengguna Windows korban: path relatif dihitung dari folder data Telegram di %APPDATA%\Telegram Desktop, yang posisinya tiga level di bawah folder home, sedangkan folder Downloads tepat di folder home. Tiga berkas instruksi berarti tiga perintah beruntun, semuanya dieksekusi oleh satu klik.
Kenapa Pencurian File Berarti Akun Diambil Alih
Target pencuriannya bukan sembarang file, melainkan tiga berkas di folder tdata: key_datas yang menyimpan salt dan kunci enkripsi data (DEK) yang terenkripsi, berkas berisi otorisasi MTProto yang juga terenkripsi, serta berkas indeks yang membuat sesi bisa dimuat. Data lokal Telegram memang terenkripsi, dan kunci sesi yang dicuri inilah yang dipakai klien untuk mengidentifikasi dirinya ke server, mirip seperti cookie sesi di sebuah situs.
Telegram menggunakan pembungkusan kunci dua lapis. Kunci panjang (DEK) mengenkripsi datamu, sedangkan kunci pembungkus (KEK) mengenkripsi DEK dan diturunkan dari kata sandi lokal lewat fungsi derivasi kunci. Secara default, Telegram Desktop tidak punya kata sandi lokal. Itu berarti KEK diturunkan dari string kosong plus salt, dan salt itu tersimpan polos di berkas yang sama.
Jadi, siapa pun yang memegang key_datas bisa menghitung ulang KEK, membuka DEK, lalu mendekripsi otorisasi sesi. Tiga berkas itu cukup untuk membangun ulang akun: letakkan di folder tdata baru, jalankan Telegram, dan sesi korban terbuka. Satu klik berubah menjadi pengambilalihan akun penuh.
Status, Skor, dan Cara Mengamankan Akunmu
Celah ini dilaporkan lewat Zero Day Initiative pada 25 Juni 2026, diperbaiki Telegram lewat commit db3405699f pada 16 September, lalu dirilis sebagai Telegram Desktop 7.2.9 pada 17 September 2026. Yang menarik, catatan rilisnya hanya menyebut perbaikan rendering, tanpa sepatah kata soal keamanan. Peneliti mempublikasikan tulisan lengkapnya pada awal Oktober, dan sejak itu celah ini ramai dibahas komunitas, termasuk mencapai halaman depan Hacker News dengan ratusan komentar.
Kode resminya CVE-2026-107181, diklasifikasikan sebagai CWE-143 (penanganan pembatas record yang tidak tepat), dengan skor CVSS 3.1 8,1 dan CVSS 4.0 8,6, keduanya kategori High. Versi 7.2.8 ke bawah terdampak, dan penyerang kini punya bukti konsep publik sehingga risikonya nyata bagi siapa pun yang belum memperbarui.
Kabar baiknya, pertahananmu cukup sederhana. Perbarui Telegram Desktop ke 7.2.9 atau yang lebih baru. Aktifkan kata sandi lokal di pengaturan, karena tanpanya kunci enkripsimu bisa dihitung ulang dari berkas yang dicuri. Matikan unduh otomatis untuk grup, batasi siapa yang bisa menambahkanmu ke grup, dan waspada setiap kali peramban bertanya apakah kamu ingin membuka tautan di Telegram. Untuk eksperimen keamanan lain yang saya kerjakan, kamu bisa melihat-lihat daftar /projects saya.

Dimas Febriyanto
Fullstack & Mobile Developer specializing in Golang & Flutter. Aktif sebagai Junior Mobile Developer di Sagara Technology & asisten lab di Universitas Gunadarma. Passionate about building scalable algorithms & high-impact applications.
Lihat Portofolio