1 poin oleh GN⁺ 2023-12-23 | 1 komentar | Bagikan ke WhatsApp

Proses penemuan

  • Meneliti cara WhatsApp melakukan permintaan HTTP melalui fitur pratinjau tautan.
  • Mengonfirmasi bahwa tautan dan pratinjau dikirim secara terpisah, lalu berhasil membuat pesan yang memiliki pratinjau berbeda dari tautan sebenarnya.

Masalah #1 - Ketidaksesuaian pratinjau tautan

  • Menganalisis tautan dan data pratinjau yang disertakan dalam pesan WhatsApp untuk mencari cara menciptakan ketidaksesuaian.
  • Berhasil mencegat dan memodifikasi pesan sehingga dapat mengirim pesan dengan pratinjau dan tautan aktual yang berbeda.

Masalah #2 - Penyamaran tautan (2K2E)

  • Menguji cara mengubah representasi teks menggunakan karakter Unicode.
  • Menggunakan karakter U+202E (Right-To-Left Override) untuk menampilkan tautan secara terbalik, dan dengan itu mengembangkan metode agar URL palsu terlihat seperti URL asli.

Hasil akhir

  • Membuat URL yang tampak seperti Instagram, tetapi sebenarnya menghasilkan tautan yang mengarah ke blog milik penyerang.
  • Dengan ini ditemukan kerentanan yang dapat membuat pengguna salah mengira tautan tersebut sebagai tautan normal lalu mengkliknya.

Skenario serangan

  • Penyerang membeli domain palsu dan membuat pesan yang menggunakan pratinjau dari domain yang sah.
  • Memanipulasi pesan dengan menghapus properti matchedText dan mengubah properti text menjadi karakter U+202E dan URL palsu.
  • Mengirimkan pesan yang telah dimanipulasi tersebut kepada korban.

Respons Meta

  • Meta memiliki sistem yang dapat menyesuaikan logika normalisasi URL secara dinamis karena harus mendukung berbagai platform dan lingkungan.
  • Namun, Meta tampaknya tidak berniat memperbaiki masalah keamanan ini dan hanya akan merespons jika terdeteksi sebagai spam.

Cara mitigasi

  • Karena Meta tidak berniat menyelesaikan masalah ini, tautan di WhatsApp tidak dapat dipercaya.
  • Sebelum mengklik tautan, tautan itu harus disalin terlebih dahulu lalu alamat tautan yang telah dimurnikan dari karakter U+202E diperiksa melalui pratinjau clipboard.

Pembaruan

  • Selain WhatsApp, ada juga layanan lain yang rentan terhadap 2K2E karena sanitasi yang tepat tidak dilakukan.

Pendapat GN⁺:

  • Hal terpenting dalam tulisan ini adalah kerentanan clickjacking yang ditemukan di WhatsApp, dengan penjelasan rinci tentang metode serangan yang membuat pengguna mengklik tautan palsu yang berbeda dari tautan sebenarnya.
  • Tulisan ini menarik karena kerentanan keamanan tak terduga ditemukan pada platform perpesanan yang umumnya dipercaya, dan ini mengingatkan pengguna mengapa mereka harus selalu berhati-hati sebelum mengklik tautan.
  • Selain itu, respons Meta menunjukkan tidak adanya kemauan untuk secara aktif menyelesaikan masalah ini, sehingga menekankan perlunya pengguna sendiri lebih memperhatikan keamanan.

1 komentar

 
GN⁺ 2023-12-23
Komentar Hacker News
  • Ini adalah kombinasi cerdas dari penyalahgunaan fitur, tetapi dampak keamanannya dinilai rendah karena penyerang tetap memerlukan serangan tambahan kecuali mereka adalah polisi, badan intelijen, dan sejenisnya. Demi akurasi teknis, saya rasa tidak tepat menyebut ini sebagai "clickjacking". Clickjacking merujuk pada teknik tertentu, yaitu menumpuk frame HTML tak terlihat di atas konten lain.
  • Clickjacking berarti elemen yang menangkap event klik berbeda dari elemen yang sebenarnya ingin diklik pengguna. Penyerang dapat mengetahui apa yang diklik pengguna. Yang ditemukan OP keren, dan sebenarnya ia menemukan cara untuk mengubah tampilan tautan pada sistem lain, bukan clickjacking.
  • Pengguna kesulitan mengenali domain saat mengklik tautan, dan banyak orang tidak memahaminya atau tidak bisa membedakannya. Meski tautannya bisa dilacak dan terlihat mencurigakan, tidak ada yang menganggapnya sebagai masalah.
  • Meta perlu mengakui dan menyiapkan solusi untuk masalah bahwa URL pesan dan URL pratinjau bisa berbeda. Ini mungkin dimaksudkan untuk membuka pemendek URL, tetapi Meta dan WhatsApp seharusnya bisa menyiapkan solusi yang lebih cerdas.
  • Masalah sebenarnya bukan WhatsApp atau karakter pembalik arah Unicode, melainkan URL itu sendiri yang sulit dipahami. Bahkan URL sederhana seperti visa.securesite.com bisa menipu banyak orang. Sepertinya tidak akan ada solusi yang baik dalam waktu dekat.
  • Mengecewakan bahwa Meta tidak memperbaiki masalah ini dan tidak membayar bug bounty kepada penelitinya.
  • Menarik bahwa serangan ini diklasifikasikan sebagai "reverse engineering".
  • RTL telah lama menjadi penyebab besar kerentanan keamanan. Harus ada pengaturan di sistem operasi untuk menonaktifkan RTL agar orang yang tidak menggunakannya tidak terekspos risiko.
  • Serangannya sangat keren, dan artikelnya mudah dibaca serta dipahami. Ada pertanyaan mendasar apakah debugger digunakan pada aplikasi web WhatsApp, diterapkan di ponsel, atau menggunakan emulator.
  • Terima kasih telah membagikan ide dan kerentanan yang menarik ini. Ringkasannya singkat dan jelas.
  • Sudah dipastikan bahwa tautan dan pratinjau dikirim secara terpisah. Desain UI yang mengharuskan pengguna membandingkan tautan dan pratinjau demi keamanan adalah masalah yang lebih besar.