2FA lewat SMS tidak lagi melindungi apa pun: apa yang harus dipakai

NIST menggolongkan SMS sebagai autentikator terbatas. SIM swap, celah SS7, phishing waktu nyata, dan dengan apa kode SMS sebaiknya diganti.

|

Waktu baca: 12 menit

2FA lewat SMS tidak lagi melindungi apa pun: apa yang harus dipakai

Pada 9 Januari 2024, akun X resmi Securities and Exchange Commission, regulator pasar keuangan Amerika Serikat, mengumumkan persetujuan ETF Bitcoin, keputusan yang sudah dinanti pasar berbulan-bulan. Dalam hitungan menit, Bitcoin naik lebih dari 1.000 dolar per keping. Lalu SEC membantah: akun itu diretas. Harga kembali turun lebih dari 2.000 dolar.

Yang membuat kasus ini mendidik bukanlah besarnya pergerakan pasar, melainkan betapa biasanya cara yang dipakai. Menurut siaran pers Departemen Kehakiman Amerika Serikat, Eric Council Jr., 26 tahun, mencetak kartu identitas palsu dengan pencetak kartu portabel, mendatangi gerai AT&T, dan meyakinkan seorang karyawan untuk memindahkan nomor telepon yang tertaut ke akun itu ke kartu SIM yang ia kendalikan. Ia lalu menerima kode reset kata sandi lewat SMS dan meneruskannya kepada rekan-rekannya. Pada 16 Mei 2025 ia dijatuhi hukuman 14 bulan penjara.

Satu penjelasan perlu ditambahkan, yang mengubah cara membaca kasus ini tanpa melemahkan pelajarannya. Menurut pernyataan resmi SEC, autentikasi multifaktor pada akun tersebut telah dinonaktifkan pada Juli 2023, atas permintaan tim itu sendiri. Jadi saat kejadian, SMS bukanlah faktor kedua, melainkan jalur pemulihan akun. Dan justru itulah yang membuat contoh ini berguna: entah sebagai faktor kedua atau pintu belakang, nomor telepon tetap menjadi titik tempat rantai itu putus.

Apa yang seharusnya dijamin oleh faktor kedua

Prinsipnya muat dalam satu kalimat. Kata sandi saja adalah sesuatu yang Anda ketahui; padanya ditambahkan sesuatu yang Anda miliki (sebuah ponsel, sebuah kunci fisik) atau sesuatu yang merupakan diri Anda (sebuah sidik jari). Orang yang mencuri kata sandi Anda dari sebuah kebocoran data tidak dengan sendirinya memegang benda fisik milik Anda.

Penalaran ini bertumpu pada satu asumsi yang jarang diucapkan: bahwa faktor kedua benar-benar terikat pada sebuah benda dalam kepemilikan Anda, dan bahwa menunjukkannya membuktikan sesuatu tentang tempat Anda masuk. SMS gagal pada kedua titik itu.

SMS bukan faktor kepemilikan

Menerima kode lewat SMS tidak membuktikan bahwa Anda memiliki sebuah perangkat, melainkan bahwa sebuah nomor telepon, yang diberikan oleh operator dan dapat diubah oleh operator yang sama, menunjuk ke sebuah terminal. Itu bukan hal yang sama. Tiga jalur memanfaatkan jarak ini, dan ketiganya tidak diperbaiki dengan cara yang sama.

SIM swap

Inilah serangan dalam kasus SEC, dan ia tidak bertumpu pada celah teknis apa pun. Penyerang mengumpulkan data pribadi tentang sasarannya, sering kali sudah tersedia dari kebocoran publik, lalu menghubungi operator sambil menyamar sebagai orang itu: ponsel hilang, tolong pindahkan nomornya ke SIM baru. Jika ia meyakinkan, atau jika ada karyawan yang berkomplot, nomor itu berpindah tangan dan semua SMS sampai kepadanya. Laporan tahunan IC3 2024, pusat pengaduan FBI, mencatat pada tahun itu saja 982 laporan SIM swap dan hampir 26 juta dolar kerugian yang dilaporkan, dan hanya menghitung korban yang mengajukan pengaduan. Tidak ada pembaruan perangkat lunak yang memperbaiki jalur ini: sasarannya bukan perangkat lunak, melainkan sebuah proses bisnis yang dijalankan manusia.

Penyadapan lewat SS7

Signaling System 7 adalah protokol yang memungkinkan jaringan telepon di seluruh dunia saling berbicara: merutekan panggilan, menangani roaming, mengantar SMS dari satu operator ke operator lain. Ia dirancang pada 1975, ketika lingkaran operator masih tertutup, sedikit jumlahnya, dan masing-masing menganggap yang lain layak dipercaya secara bawaan. Karena itu ia sama sekali tidak memuat autentikasi bawaan antarjaringan: permintaan yang tampak sah diperlakukan sebagai sah.

Ini bukan kelemahan teoretis. Pada Desember 2014, peneliti Jerman Tobias Engel dan Karsten Nohl mendemonstrasikannya di depan umum pada Chaos Communication Congress: melacak lokasi seorang pelanggan dan menyadap SMS-nya hanya bermodalkan nomor telepon. Pada 2017 pemanfaatan nyatanya terkonfirmasi: operator Jerman O2-Telefónica mengakui bahwa rekening bank sejumlah pelanggan dikuras, setelah para penyerang memperoleh akses ke jaringan sebuah operator asing lalu memasang penerusan SMS untuk menangkap kode konfirmasi perbankan.

Phishing waktu nyata

Jalur ketiga adalah yang terpenting, karena ia tidak bergantung pada celah telekomunikasi mana pun dan bertahan terhadap semua yang bisa diperbaiki pada dua jalur sebelumnya.

Sebuah situs palsu meniru sempurna halaman masuk sebuah layanan. Anda memasukkan nama pengguna dan kata sandi di sana, yang segera diteruskan situs palsu itu ke situs asli, yang lalu mengirim SMS ke ponsel Anda. SMS itu memang sampai kepada Anda, dan asli. Anda mengetik kodenya di situs palsu, yang pada gilirannya meneruskannya dalam hitungan detik. Sesi terbuka, dan yang memegangnya adalah penyerang.

Ini disebut serangan adversary-in-the-middle. Ia sudah terindustrialisasi: perkakas seperti Evilginx, sebuah reverse proxy yang muncul pada 2017, atau kit yang dijual dengan langganan bulanan, membuatnya terjangkau tanpa keahlian khusus. Lagi pula yang dicuri bukan hanya kodenya, melainkan cookie sesi, yang setelah itu memungkinkan tetap masuk tanpa melewati autentikasi apa pun lagi.

Persoalannya arsitektural. Kode yang dikirim lewat SMS tidak memuat informasi apa pun tentang situs yang memintanya. Karena itu ia tidak bisa membedakan yang asli dari yang palsu: ia berlaku di mana pun ia diketikkan.

Ini bukan lagi pendapat, melainkan posisi resmi

Argumen terkuat melawan SMS tidak datang dari vendor solusi, melainkan dari lembaga yang menulis standar.

Pada Juli 2025, NIST Amerika Serikat menerbitkan versi final SP 800-63B-4, Digital Identity Guidelines: Authentication and Authenticator Management. Teks itu menciptakan kategori eksplisit autentikator terbatas, yang disediakan bagi mekanisme yang daya tahannya menurun seiring perkembangan ancaman. Bagian 3.1.3.3 menempatkan penggunaan jaringan telepon umum di sana, yaitu kode yang dikirim lewat SMS atau panggilan suara: “Use of the PSTN for out-of-band verification is restricted as described in this section and SHALL satisfy the requirements of Sec. 3.2.9.” Secara konkret, layanan yang masih menggunakannya harus menyediakan alternatif yang tidak terbatas, memberi tahu penggunanya tentang risiko itu, dan memiliki rencana migrasi.

Pada Desember 2024, CISA, badan keamanan siber Amerika Serikat, telah menerbitkan Mobile Communications Best Practice Guidance, menyusul kampanye spionase Salt Typhoon yang di dalamnya aktor-aktor berafiliasi dengan negara Tiongkok menembus beberapa operator telekomunikasi Amerika. Rumusannya tidak menyisakan ruang tafsir: “Do not use SMS as a second factor for authentication. SMS messages are not encrypted”, dan selanjutnya, tanpa berputar-putar: “Only FIDO authentication is phishing-resistant.” Dokumen itu secara tegas merekomendasikan kunci perangkat keras FIDO, dengan menyebut Yubico dan Google Titan, serta menegaskan bahwa setelah FIDO diaktifkan, SMS harus dimatikan, sebab jika tidak ia tetap ada sebagai jalur cadangan yang bisa dieksploitasi.

Aplikasi autentikator: kemajuan nyata, solusi separuh jalan

Aplikasi TOTP, singkatan dari Time-based One-Time Password, menghasilkan kode enam digit yang berubah setiap tiga puluh detik, dihitung secara lokal dari sebuah rahasia yang dibagikan saat aktivasi dan dari waktu saat itu. Tidak ada apa pun yang melintasi jaringan telepon.

Keuntungannya langsung terasa: SIM swap menjadi tidak berdaya karena nomor tidak lagi terlibat, begitu pula penyadapan SS7 karena tidak ada pesan yang diangkut. Berpindah ke aplikasi autentikator layak dilakukan pada setiap akun yang tidak bisa melangkah lebih jauh.

Tetapi jalur ketiga tetap utuh. Kode TOTP yang diketikkan di situs palsu diteruskan ke situs asli persis seperti kode SMS. Aplikasi tidak tahu di mana Anda masuk: ia menampilkan sebuah angka, dan angka itu berlaku bagi siapa pun yang menyajikannya dalam jendela tiga puluh detiknya. CISA mengatakannya dengan kalimat yang sama: kode autentikator lebih baik daripada SMS tetapi tetap rentan terhadap phishing.

TOTP adalah tahap antara yang jujur, bukan tujuan akhir.

Mengapa kunci FIDO2 mengubah sifat masalahnya

Kunci perangkat keras FIDO2/WebAuthn tidak sekadar mempersulit serangan, ia menghapus kemungkinan mekanisnya.

Saat didaftarkan pada sebuah layanan, kunci itu menghasilkan sepasang kunci kriptografis khusus untuk layanan tersebut. Bagian publik menuju layanan, bagian privat tidak pernah meninggalkan cip dan tidak dapat diekspor maupun dibaca. Tidak ada rahasia bersama yang bisa disalin, tidak ada kode enam digit yang bisa disadap.

Lalu datang mekanisme yang menentukan, pengikatan pada origin. Saat masuk, peramban menyampaikan kepada kunci nama domain sesungguhnya dari halaman yang ditampilkan. Informasi itu termasuk dalam data yang ditandatangani, dan peramban memaksakannya: JavaScript halaman tidak dapat mengubah maupun memalsukannya.

Kunci FIDO2 tidak membuat phishing lebih sulit berhasil. Ia membuat hasil phishing tidak dapat dipakai.

Mari tinjau ulang serangan adversary-in-the-middle, kali ini dengan sebuah kunci. Situs palsu itu sempurna, korban tidak merasakan apa pun dan menyentuh kuncinya. Peramban menyampaikan domain sesungguhnya dari halaman itu, yaitu domain situs penipuan. Kunci mendapati tidak ada pasangan untuk domain tersebut, atau menandatangani untuknya sehingga menghasilkan tanda tangan yang akan ditolak layanan asli. Dalam kedua kasus, penyerang tidak memperoleh apa pun yang bisa dipakai.

Di situlah perbedaan sifatnya. Dengan SMS atau TOTP, keamanan pada akhirnya bertumpu pada kewaspadaan pengguna, pada kemampuannya mengenali domain palsu di bilah alamat, pada saat ia sedang terburu-buru dan halaman itu tampak normal. Dengan FIDO2, pemeriksaan itu dilakukan oleh mesin, setiap kali, tanpa bergantung pada perhatian siapa pun. Pengalihan tanggung jawab inilah yang penting, lebih daripada kekuatan kriptografinya.

Efeknya terukur. Google mewajibkan kunci bagi karyawannya sejak awal 2017 dan menyatakan pada 2018 bahwa tidak tercatat satu pun akun yang jebol di antara lebih dari 85.000 orang.

Batas nyata kunci perangkat keras

Menyajikannya sebagai sempurna akan tidak jujur, dan tidak berguna untuk menyiapkan keputusan yang sesungguhnya.

Biayanya ada. Perkirakan 25 hingga 60 euro tergantung modelnya, lebih mahal untuk versi biometrik, dan kalikan dua.

Kehilangan kunci adalah risiko yang sebenarnya. Satu kunci saja pada akun kritis adalah kesalahan rancangan. Perlu dua yang terdaftar pada setiap akun penting, satu di antaranya disimpan di tempat lain, pada orang dekat atau di brankas. Yang kedua bukan kenyamanan, melainkan yang membuat yang pertama bisa dipakai tanpa was-was.

Cakupannya belum lengkap. Banyak layanan, terutama perbankan di Eropa, belum mendukung FIDO2, karena itulah urutan prioritas berikut diperlukan.

Kunci bisa dicuri. Karena itu perlu mengaktifkan PIN pada kunci, atau memilih model bersidik jari: tanpa itu, bendanya saja sudah cukup bagi siapa pun yang memungutnya.

Jalur cadangan tetap menjadi mata rantai terlemah. Mengaktifkan FIDO2 tanpa mematikan SMS tidak melindungi apa pun: penyerang cukup menempuh jalan yang dibiarkan terbuka. Migrasi baru selesai ketika mekanisme lama dihapus dari akun, termasuk opsi pemulihan.

Soal perangkatnya, jajaran YubiKey mencakup rentang protokol terluas, Google Titan lebih murah dan terbatas pada FIDO, Nitrokey dan SoloKeys menawarkan alternatif dengan firmware terbuka dan dapat diaudit, sedangkan Token2 membuat model dengan papan angka terpasang, tempat PIN dimasukkan langsung pada kunci alih-alih pada papan ketik. Tidak ada pilihan buruk di antara kunci bersertifikat FIDO2: protokolnya sama, yang berbeda hanya kegunaan sampingannya.

Mulai dari mana ketika tidak bisa mengubah semuanya

Urutan migrasi bukan soal selera, ia mengalir dari saling ketergantungan antarakun Anda.

  1. Kotak surel utama lebih dulu. Ia menerima tautan reset untuk hampir semua yang lain. Penyerang yang menguasainya mengambil alih akun-akun lain satu per satu, tanpa menyerang satu pun secara langsung. Tidak ada yang layak diamankan sebelum dia.
  2. Pengelola kata sandi. Ia memusatkan faktor pertama dari semua akses Anda, sehingga perlindungannya harus setara dengan akun paling terlindungi yang ia simpan. Ini saatnya memeriksa mutu kata sandi utama, topik yang kami bahas rinci dalam artikel tentang entropi dan ilmu di balik keamanan Anda.
  3. Akun keuangan dan platform kripto. Sasaran bernilai langsung, tempat sebuah pembobolan berubah menjadi kerugian tak terpulihkan dalam hitungan menit.
  4. Akun media sosial dengan audiens. Kasus SEC memperlihatkan berapa nilai ucapan sebuah akun yang diikuti banyak orang, dan kerugiannya tidak selalu menimpa pemiliknya.
  5. Sisanya bisa menunggu, dengan aplikasi TOTP menggantikan SMS. Sebuah forum atau layanan streaming tidak menuntut upaya yang sama.

Untuk akun yang belum mendukung FIDO2: beralihlah ke TOTP di mana pun memungkinkan, dan mintalah operator Anda mengunci portabilitas nomor Anda, sebuah opsi gratis di sebagian besar operator.

Apa yang ini katakan tentang pendekatan Arpokrat

Tulisan ini menggambarkan masalah yang hanya ada karena sebuah pengidentifikasi ditempatkan di pusat sistem. Nomor telepon tidak pernah dirancang sebagai bukti identitas: ia menjadi tulang punggung autentikasi daring karena kebiasaan, dan ketiga serangan yang dijelaskan di atas semuanya memanfaatkan penyimpangan fungsi itu.

Itulah penalaran yang memandu perancangan protokol Arpokrat Messenger: tanpa nomor telepon, tanpa alamat surel, tanpa akun. Pengguna hadir sebagai sehimpunan kunci kriptografis yang tersimpan di perangkatnya sendiri, dan perkenalan berlangsung melalui tautan undangan sekali pakai. Logikanya sama dengan FIDO2, satu tingkat lebih tinggi: apa yang tidak dipegang pihak ketiga tidak dapat diambil darinya, baik lewat rekayasa sosial terhadap operator maupun lewat perintah hukum. Keselarasan dengan arsitektur Zero-Knowledge ini kami kembangkan dalam artikel tentang kumpulkan sekarang, dekripsi nanti.

Kunci perangkat keras yang menandatangani tanpa pernah membuka rahasianya, sebetulnya juga cara kerja dompet kripto luring, yang kami uraikan dalam panduan lengkap cold wallet: simpan bagian rahasianya dalam sebuah benda khusus, dan biarkan hanya sebuah tanda tangan yang keluar.

Penutup

2FA lewat SMS tidak dirancang dengan buruk. Ketika ia meluas pada awal 2010-an, ia merupakan kemajuan besar dibanding kata sandi saja, dan ia memiliki satu-satunya kualitas yang penting dalam skala besar: semua orang sudah punya telepon.

Masalahnya bukan penemuannya, melainkan kelangsungan hidupnya. Demonstrasi SS7 berasal dari 2014, eksploitasi perbankan yang nyata dari 2017, industrialisasi phishing waktu nyata dari akhir dasawarsa itu. CISA menulis agar ia tidak lagi dipakai pada 2024, NIST meresmikan pembatasannya pada 2025. Sekitar sepuluh tahun memisahkan saat celah-celah itu menjadi dapat dieksploitasi dalam skala besar dari saat lembaga-lembaga menuliskannya hitam di atas putih. Dan SMS tetap menjadi faktor kedua bawaan pada sebagian besar layanan untuk khalayak umum.

Jarak itulah informasi sesungguhnya dari tulisan ini. Mekanisme keamanan tidak lenyap ketika ia berhenti bekerja, melainkan ketika sesuatu yang sama sederhananya datang menggantikannya, dan itu memakan waktu jauh lebih lama. Karena itu pertanyaannya bukan apakah Anda sebaiknya meninggalkan SMS, hal itu sudah lama tuntas. Pertanyaannya adalah perlindungan lain mana yang Anda anggap sudah pasti, yang sebenarnya sudah berada dalam situasi serupa, hanya saja belum ada yang menuliskannya.

Sumber