- Paket Lotusbail adalah fork dari pustaka WhatsApp Web API yang sah, Baileys, dan merupakan paket berisi malware yang telah diunduh lebih dari 56 ribu kali di npm selama 6 bulan
- Sambil menyediakan fungsi API yang bekerja normal, paket ini mencuri kredensial autentikasi WhatsApp, pesan, kontak, dan file media lalu mengirimkannya ke server penyerang
- Data dikirim setelah melalui beberapa lapisan enkripsi dan obfuskasi seperti RSA, AES, Base-91, LZString, sehingga memungkinkan menghindari pemantauan keamanan
- Paket ini memasang backdoor yang menghubungkan perangkat penyerang secara permanen ke akun WhatsApp pengguna melalui kode pairing yang di-hardcode
- Kasus ini menunjukkan semakin canggihnya serangan supply chain dan menekankan pentingnya pemantauan keamanan berbasis perilaku yang tidak bisa digantikan oleh analisis statis saja
Ikhtisar paket Lotusbail
lotusbail adalah fork dari @whiskeysockets/baileys yang sah dan menyediakan fungsi WhatsApp Web API apa adanya
- Fungsi kirim dan terima pesan bekerja normal sehingga pengembang cenderung memasangnya tanpa curiga
- Paket ini telah terdaftar di npm selama 6 bulan dan saat artikel ditulis masih bisa diunduh
- Di balik fungsi nyatanya, tersembunyi aktivitas berbahaya seperti pencurian kredensial WhatsApp, penyadapan pesan, pengumpulan kontak, dan pemasangan backdoor
Informasi yang dicuri
- Termasuk token autentikasi dan kunci sesi, seluruh riwayat pesan, daftar kontak beserta nomor telepon, file media dan dokumen, serta hak akses backdoor yang persisten
- Semua data dienkripsi sebelum dikirim ke server penyerang
Cara kerja
Fungsi penyamaran yang benar-benar berjalan
- Sebagian besar paket npm berbahaya mudah dikenali karena tidak berfungsi atau memuat kode mencurigakan, tetapi Lotusbail menyamar sebagai API yang bekerja normal
- Paket ini berbasis pustaka Baileys yang sah dan fitur kirim-terima pesannya diimplementasikan secara lengkap
- Karena itu, digunakan teknik social engineering yang membuat pengembang tidak mencurigai perilaku berbahaya pada “kode yang berjalan normal”
Pencurian dan pengiriman data
- Paket ini bekerja dengan membungkus klien WebSocket yang berkomunikasi dengan WhatsApp
- Saat autentikasi, paket menangkap kredensial, dan saat pesan diterima atau dikirim, seluruh isinya disalin
- Fungsi normal tetap dipertahankan, hanya saja semua data dikirim ganda ke penyerang
- Data yang dicuri dikirim setelah dienkripsi dengan implementasi RSA kustom
- Ini terpisah dari enkripsi end-to-end milik WhatsApp dan digunakan sebagai enkripsi untuk menghindari pemantauan jaringan
- Alamat server tidak diekspos langsung di dalam kode, melainkan disembunyikan dalam string konfigurasi terenkripsi
- Diterapkan obfuskasi empat tahap seperti manipulasi variabel Unicode, kompresi LZString, encoding Base-91, dan enkripsi AES
Pemasangan backdoor
- Paket ini menyalahgunakan fitur kode pairing perangkat WhatsApp untuk menghubungkan perangkat penyerang ke akun pengguna
- Di dalam paket terdapat kode pairing yang di-hardcode dan dienkripsi dengan AES
- Saat pengguna melakukan autentikasi, perangkat penyerang ikut terhubung secara bersamaan sehingga memperoleh akses akun yang persisten
- Penyerang dapat melakukan kontrol penuh atas akun, termasuk membaca dan mengirim pesan, mengunduh media, serta mengakses kontak
- Bahkan jika paket npm dihapus, perangkat penyerang tetap terhubung, dan pemblokiran hanya bisa dilakukan dengan memutus semua perangkat yang tertaut secara manual di pengaturan WhatsApp
Teknik penghindaran analisis
- Kode ini memuat 27 jebakan infinite loop sehingga eksekusi dihentikan saat alat debugging terdeteksi
- Paket mendeteksi debugger, argumen proses, lingkungan sandbox, dan lain-lain untuk mengganggu analisis dinamis
- Ada komentar pada bagian kode berbahaya, yang menunjukkan jejak pengelolaan pengembangan yang sistematis
Kesimpulan dan implikasi keamanan
- Serangan supply chain semakin canggih, dan kasus yang menyamar sebagai kode yang berfungsi normal terus meningkat
- Analisis statis dan verifikasi berbasis reputasi saja sulit untuk mendeteksi kasus semacam ini, sehingga diperlukan analisis perilaku saat runtime (behavioral analysis)
- Kasus Lotusbail menunjukkan bagaimana celah keamanan yang “menganggap kode aman hanya karena berfungsi” dapat dieksploitasi, dan menegaskan pentingnya membangun sistem pemantauan perilaku saat runtime
- Tim riset Koi Security mengidentifikasi ancaman yang melewati prosedur verifikasi yang ada melalui teknologi deteksi berbasis runtime tersebut
Belum ada komentar.