Di blog ini, kami ingin menjawab pertanyaan. “Mengapa metode konfirmasi transaksi klasik (SMS OTP dan Push Code OTP) ini tidak aman?”.
Penggunaan notifikasi SMS sebagai faktor 2FA (2 Factor Authentication) sudah umum bagi kebanyakan orang. Selain itu, banyak layanan digital menggunakan metode otentikasi ini untuk transaksi seperti lupa password, mengkonfirmasi suatu transfer, dan sebagainya.
Jika Anda memasukkan nomor ponsel anda ke semua layanan digital penting sehari-hari seperti email, akun Google, akun ID Apple, Facebook, Twitter, dan sebagainya, kartu SIM anda menjadi “kunci kehidupan Anda”. Sebenarnya, boleh saja jika kartu SIM anda hanya digunakan untuk mengakses foto dan tweet. Tidak akan menarik bagi para hacker untuk mencuri akun Facebook anda (kecuali jika anda seorang public figur).
Untuk membuatnya lebih jelas, hacker saat ini bukanlah satu orang saja jika dilihat secara garis besar. Peretasan adalah bisnis kriminal berteknologi tinggi yang terorganisasi dengan adanya manajer hacker, brain-center, pelaksana, informan, dan sebagainya. Tujuan utama bisnis ini (seperti semua bisnis lainnya) adalah untuk menghasilkan uang.
Memang, kita memiliki akses secara online untuk mengelola dan mentransfer uang dari satu akun ke akun yang lain. Jadi, hacker hanya memerlukan alat untuk mendapatkan akses sah atas nama kita. Di sinilah mereka berhadapan dengan prosedur keamanan.
Mari kita bayangkan bahwa sekelompok hacker telah memperoleh detail yang diperlukan untuk mengakses akun kita. Hal itu bisa berupa detail kartu pembayaran, login, kata sandi untuk perbankan online, atau akun dari layanan FinTech. Untuk mentransfer uang, mereka harus melewati 2FA. Jika bank atau layanan FinTech menyediakan layanan menggunakan SMS OTP atau Push Codes, maka mereka perlu mendapatkan SMS atau Push Codesnya.
Tiga skenario utama bagaimana kode SMS dapat dicuri
Mari kita lihat bagaimana kode keamanan yang dikirim melalui SMS dapat diketahui dan diambil oleh hacker.
1. Metode teknis
Ini adalah peretasan cara lama: Hacker membuat virus dan malware untuk melakukan penjebakan lewat pesan. Malware semacam itu akan dikirimkan ke perangkat korban melalui spam, situs yang terinfeksi, aplikasi palsu, software bajakan dan sebagainya. Setelah diinstal pada smartphone korban, malware ini dapat memiliki akses ke konten SMS korban.
2. Metode teknologi
Ketika kita berbicara tentang SMS, kita berbicara tentang teknologi yang ditemukan pada tahun 1970-an. Dan saat ini, kita dapat menggunakan peralatan yang harganya hanya sekitar 20 Jutaan rupiah untuk menyadap SMS apa pun di dunia. Hal itu menjadi mungkin setelah peneliti independen menemukan kerentanan dalam protokol SS7 (Protokol ini digunakan untuk mengirim pesan SMS).
3. Secara sosial
Ada dua teknik utama: SIM Swap dan Social Engineering.
1. SIM Swap merupakan cara yang sangat sederhana. Hacker, biasanya dengan menipu pihak penyedia layanan jaringan seluler, mengganti kartu SIM korban untuk menerbitkan kartu SIM baru dengan nomor telepon yang sama. Setelah manipulasi ini, “kunci rekening bank korban” ada di tangan hacker.
Ya, korban akan mengetahui bahwa kartu SIM nya telah diubah. Namun, waktu 10 menit sudah cukup untuk mengatur ulang akses ke semua layanan digital korban dan untuk mentransfer semua uang dari rekening bank yang korban miliki. Tentu saja, operator jaringan seluler dapat memberi tahu bank ketika kartu SIM diganti. Layanan ini disebut “cek IMSI”. Namun hal ini membutuhkan biaya lebih serta tidak banyak bank yang mau membayar risiko itu.
2. Social Engineering adalah sebuah teknik manipulasi yang memanfaatkan kesalahan manusia untuk mendapatkan akses pada informasi pribadi atau data-data berharga. Contoh kasusnya, hacker menelepon korban dan mengatakan sesuatu seperti “Halo, ini adalah layanan keamanan bank Anda. Apakah Anda membuat transaksi mencurigakan ini untuk mentransfer semua uang Anda? Tidak? Ok, untuk menolak ini, tolong beri tahu saya kata sandi dalam pesan SMS yang baru Anda terima”. Anda bisa membayangkan apa yang akan terjadi segera setelah korban memberikan kode. Ada banyak teknik Social Engineering.
Ok, kami secara singkat menggambarkan bagaimana kode konfirmasi dapat diambil oleh “Hacker”. Kita juga perlu memahami bahwa sebagian dari dolar yang dicuri (atau rupiah, baht, yen, won, ringgit) akan digunakan hacker untuk mengembangkan sistem ini, menciptakan malware yang lebih canggih, mengirim lebih banyak spam, menerapkan penyadapan SS7 dalam berbagai pintu masuk, dan mempekerjakan psikolog untuk skrip Social Engineering dan sebagainya. Pesan SMS pada dasarnya tidak aman.
Sisi Yuridis Dari Pesan SMS OTP:
Beberapa hal lagi yang ingin kami sebutkan adalah tentang sudut pandang yuridis.
1. Dalam sebagian besar kasus yang telah kita lihat, OTP tak ditautkan dengan detail transaksi. Ini berarti kita dapat menggunakan kata sandi suatu transaksi untuk mengonfirmasi transaksi lainnya. Kita, sebagai pelanggan, tidak dapat membuktikan bahwa kita mengkonfirmasi aktivitas transfer “100 ribu ke Alice”, atau “10 juta ke Eva” misalnya.
2. Pada saat yang sama, kita sebagai nasabah dapat pergi ke bank untuk melakukan skenario penipuan seperti meminta mengembalikan uang kita atas penipuan transaksi misalnya. Nasabah penipu akan komplain kepada Bank dengan berkata, “Saya belum mengkonfirmasi operasi ini, anda (bank) yang melakukan ini, karena anda tahu kode konfirmasi sebelum saya, anda yang membuatnya. Dan operator jaringan seluler tahu. Serta agregator pesan SMS juga tahu. Saya menerima kode ini, tetapi tidak memasukkannya di mana pun. Buktikan bahwa aku salah”.
Ini berarti bahwa kode pesan SMS juga tidak aman dari sudut pandang yuridis.
Bagaimana Dengan Push Codes?
Push codes dikirim melalui internet, bukan jaringan seluler. Orang dapat berpikir bahwa, secara teoritis, mereka lebih aman di ponsel. Sebenarnya tidak juga.
1. Teknis. Mencuri push notification dari smartphone sama mudahnya dengan pesan SMS.
2. Teknologi. Push notification dikirim melalui platform ponsel, biasanya Google atau Apple. Jika Anda membaca perjanjian pengembang dari Google dan Apple dengan cermat, kita dapat menemukan bahwa mereka sangat membatasi pengiriman informasi rahasia “termasuk kata sandi bank” melalui push notification. Ini berarti bahwa konten push, layaknya pesan SMS, akan diketahui oleh pihak ketiga.
3. Sosial. Push codes dapat didiktekan semudah pesan SMS. Tidak ada perbedaan antara keduanya. Namun, push memiliki satu keuntungan, yaitu penyerangan dengan metode SIM swap tidak dapat dilakukan.
Dari sudut pandang yuridis, tidak ada perbedaan antara pesan SMS dan push codes. Dengan demikian, tingkat keamanan kedua teknologi ini sama.
Sebagai penutup, kami ingin berbagi hasil percobaan teknis kami kepada anda.
Kami menempatkan diri di posisi sebagai peretas dan mencoba membuat malware Android untuk mencuri pesan SMS dan push notification OTP. Butuh sekitar 1 jam dan 30 menit untuk membuat sebuah malware untuk Android, server untuk menerima notifikasi curian, dan tampilan untuk membacanya di server. Tidak ada aplikasi antivirus atau analisis perilaku yang mendeteksi malware ini.
Kami merekomendasikan agar tidak menggunakan SMS atau push notification OTP untuk mengkonfirmasi transaksi keuangan apa pun. Dari sudut pandang keamanan, cara itu bukan ide yang baik. Kami memiliki solusi yaitu PayConfirm untuk mengakomodasi kebutuhan dengan cara yang lebih tepat.
Sumber: https://airome.tech/id/why-sms-and-push-codes-are-not-secure/