Selama ini, trojan perbankan Android umumnya bekerja dengan cara yang mirip: menampilkan layar login palsu (overlay) di atas aplikasi bank asli, lalu mencuri apa pun yang diketik korban. Pada Oktober 2026, perusahaan keamanan mobile ThreatFabric mengungkap trojan yang mengambil jalan jauh lebih berani. Namanya Hirudo. Alih-alih menipu dari luar, Hirudo menghapus aplikasi bank asli di ponsel korban dan menggantinya dengan salinan yang sudah dimodifikasi. Di dalam salinan itu, fitur keamanan bank dibuat “buta” terhadap kehadiran malware.
Yang membuat kasus ini sangat relevan bagi pembaca di tanah air: sasaran utama Hirudo saat ini adalah nasabah bank di Indonesia. Artikel ini merangkum secara lengkap apa itu Hirudo, bagaimana cara kerjanya dari awal hingga akhir, apa saja yang dicuri, kelemahannya, serta langkah perlindungan bagi pengguna maupun bank.
Apa Itu Hirudo?
Hirudo adalah trojan perbankan sekaligus remote access trojan (RAT) untuk Android. Ia menggabungkan dua kemampuan: pencurian kredensial langsung di perangkat dan kendali jarak jauh secara real-time oleh operator manusia. ThreatFabric mempublikasikan analisisnya pada 14 Oktober 2026, dan temuan ini segera diliput luas oleh media keamanan siber internasional.
Nama “Hirudo” sendiri diambil dari bahasa Latin untuk genus lintah. Nama ini terasa pas: seperti lintah, malware ini menempel pada aplikasi yang sudah dipercaya korban, hidup di dalamnya, dan diam-diam mengisap data berharga tanpa disadari.
Menurut ThreatFabric, Hirudo bukan sekadar malware sekali pakai, melainkan “mesin” yang dapat digunakan ulang dan diarahkan ke aplikasi serta wilayah lain. ThreatFabric menyebutnya sebagai “eskalasi yang disengaja dalam cara trojan perbankan Android menghadapi aplikasi yang sudah diperkuat keamanannya”.
Kronologi Penemuan
- Agustus 2026: ThreatFabric menganalisis backend milik operator Hirudo yang dibiarkan terbuka tanpa autentikasi, sekaligus menemukan sebuah dropper dari jalur distribusi bertema kasino.
- Oktober 2026: Sebagian jalur unduhan malware di Amazon CloudFront diketahui masih aktif.
- 14 Oktober 2026: ThreatFabric merilis laporan lengkap tentang Hirudo, yang kemudian diberitakan oleh BleepingComputer, SecurityWeek, dan berbagai media keamanan siber lainnya.
Hingga kini, Hirudo belum diatribusikan secara resmi ke kelompok peretas tertentu. Beberapa laporan mencatat bahwa panel kendalinya menggunakan antarmuka berbahasa Mandarin, sehingga operatornya diduga berbahasa Mandarin. Namun, dugaan ini belum terkonfirmasi.
Bagaimana Hirudo Masuk ke Ponsel Korban?
Hirudo tidak tersedia di Google Play Store. Ia menyebar melalui rantai infeksi bertahap yang dirancang agar terlihat wajar di setiap langkah.
1. Umpan lewat iklan media sosial
Korban digiring melalui iklan di media sosial dengan tema yang menarik banyak orang: sepak bola, belanja, video dewasa, dan drama pendek. Iklan ini mengarahkan korban untuk mengunduh aplikasi di luar Play Store. Paket-paketnya di-hosting di Amazon CloudFront, dan pemasangannya dilacak menggunakan tautan atribusi OpenInstall serta Meta Pixel, persis seperti kampanye iklan aplikasi yang sah.
2. Aplikasi umpan (dropper) yang benar-benar berfungsi
Aplikasi yang diunduh korban berperan sebagai dropper, yaitu aplikasi pembawa yang bertugas memasang malware utama. Beberapa nama yang teridentifikasi:
- Shopora: aplikasi belanja
- 1V1 X: aplikasi video dewasa
- ZoyaTV dan KoiShort: aplikasi drama pendek
Uniknya, aplikasi-aplikasi ini benar-benar menampilkan konten yang dijanjikan, sehingga korban tidak curiga. Di latar belakang, dropper memeriksa apakah malware utama sudah terpasang. Jika belum, muncul notifikasi “update” palsu di dalam aplikasi.
3. “Update” palsu yang memasang trojan
Saat korban menuruti “update” tersebut, yang sebenarnya terpasang adalah aplikasi kedua, yaitu trojan Hirudo. Menurut laporan SecurityOnline, dropper Shopora bahkan menyalakan VPN lokal berjenis “blackhole” yang membuang lalu lintas IPv4 selama proses pemasangan berlangsung. Tujuannya diduga untuk mengganggu koneksi layanan keamanan saat malware dipasang.
4. Meminta izin Aksesibilitas
Setelah terpasang, Hirudo meminta izin Accessibility Service (Aksesibilitas) dan akses notifikasi. Izin Aksesibilitas sebenarnya dirancang untuk membantu pengguna difabel, tetapi bagi malware, izin ini setara dengan “kunci serep” ponsel: ia dapat membaca isi layar, menekan tombol, dan mengisi teks atas nama pengguna.
Teknik Utama: Mengganti Aplikasi Bank Asli
Inilah yang membuat Hirudo berbeda dari trojan perbankan lain. Begitu izin Aksesibilitas didapat, Hirudo menjalankan langkah-langkah berikut:
- Mendeteksi aplikasi bank yang terpasang menggunakan Aksesibilitas, lalu membandingkan sertifikat tanda tangan aplikasi tersebut dengan sertifikat rujukan yang tersimpan di malware.
- Menampilkan “update” palsu yang meniru aplikasi bank tersebut.
- Membuka jendela uninstall aplikasi bank asli tanpa menunggu korban mengetuk apa pun.
- Secara paralel, mengunduh aplikasi pengganti yang dibuat khusus untuk bank tersebut dari server milik pelaku.
- Mengendalikan installer Android melalui Aksesibilitas untuk memasang aplikasi pengganti.
Mengapa aplikasi asli harus dihapus terlebih dahulu? Aplikasi pengganti memakai nama paket dan nomor versi yang sama dengan aplikasi asli, tetapi ditandatangani dengan test key Android yang tersedia untuk publik, bukan kunci resmi milik bank. Android tidak mengizinkan aplikasi dengan tanda tangan berbeda dipasang sebagai pembaruan di atas aplikasi aslinya. Karena itu, satu-satunya cara adalah menghapus aplikasi asli lebih dulu, lalu memasang tiruannya.
Bagi korban, prosesnya terlihat seperti aplikasi bank sedang “diperbarui”. Setelah selesai, ikon dan tampilan aplikasi bank tetap sama. Bedanya, yang kini berjalan adalah versi yang sudah disusupi.
Di Dalam Aplikasi Bank Tiruan: Keamanan yang Dibutakan
Aplikasi tiruan ini mempertahankan hampir seluruh kode asli bank, sehingga fungsinya tetap normal. Modifikasinya sangat kecil: satu baris kode disisipkan di kelas Application untuk memuat sebuah hooking engine dari aset yang dibundel di dalam aplikasi.
Hooking engine ini dibangun di atas dua kerangka kerja open source:
- YAHFA, untuk mengait (hook) metode Java
- Dobby, untuk mengait fungsi native
Agar sulit dideteksi, hook hanya aktif ketika trojan Hirudo membuat sebuah file pemicu di perangkat. Saat file itu tidak ada, aplikasi tiruan terlihat hampir tidak berbeda dari aslinya ketika dianalisis secara statis.
Karena mesin ini berjalan di dalam proses aplikasi bank itu sendiri, semua pemeriksaan keamanan yang dilakukan aplikasi bisa dimanipulasi. ThreatFabric merangkumnya dengan kalimat: “Dengan mesin yang berjalan di dalam proses aplikasi bank, pertahanan aplikasi justru dibalikkan untuk melawannya sendiri.”
Berikut pemeriksaan keamanan yang dilumpuhkan:
| Pemeriksaan keamanan | Cara Hirudo mengakalinya |
|---|---|
| Verifikasi tanda tangan aplikasi | Saat aplikasi memeriksa sertifikatnya sendiri, hook mengembalikan sertifikat asli milik bank dan menyembunyikan tanda tangan test key. |
| Deteksi layanan Aksesibilitas | Saat aplikasi menanyakan layanan Aksesibilitas apa saja yang aktif, hook mengembalikan daftar kosong, sehingga trojan tidak terlihat. |
Perlindungan tangkapan layar (FLAG_SECURE) |
Penanda ini dicabut, sehingga layar aplikasi bank bisa ditonton dan direkam dari jarak jauh. |
| Key attestation | Sertifikat atestasi ditandatangani ulang menggunakan keybox yang dibundel. Keybox ini ternyata sudah bocor ke publik. |
| Google Play Integrity | Permintaan Play Integrity diteruskan melalui HTTP polos ke server operator, yang lalu mengembalikan putusan integritas palsu yang “lolos”. |
Apa Saja yang Bisa Dilakukan Hirudo?
Setelah aplikasi bank berhasil diganti dan trojan aktif, operator Hirudo memiliki kendali yang sangat luas atas perangkat korban.
Pencurian data
- Kata sandi perbankan dan PIN pembayaran
- PIN, kata sandi, atau pola kunci layar, dibaca melalui Aksesibilitas maupun lewat layar kunci palsu
- SMS hingga 90 hari terakhir, termasuk kode OTP
- Riwayat layar kunci dan bahkan perkiraan pendapatan bulanan korban, yang dikirim ke panel manajemen pusat
Halaman pembayaran palsu
Hirudo menggunakan halaman checkout transparan yang tersedia dalam delapan bahasa untuk menangkap PIN pembayaran. Setelah PIN dikirim ke server pelaku, korban justru disuguhi pesan “pembayaran berhasil” palsu, sehingga tidak curiga. Halaman ini bahkan memuat branding bank dan dompet digital asal Malaysia.
Kendali jarak jauh
- Streaming layar secara langsung melalui WebRTC
- Mengaktifkan kamera depan dan belakang
- Merekam audio dan mengambil tangkapan layar
- Mengendalikan perangkat secara real-time, sehingga operator dapat bertransaksi langsung dari ponsel korban
Siapa yang Menjadi Sasaran?
Saat ini, Hirudo berfokus pada Indonesia. ThreatFabric menemukan aplikasi pengganti yang sudah siap pakai untuk delapan aplikasi perbankan dari tujuh bank Indonesia. Nama-nama bank yang terdampak tidak disebutkan dalam laporan-laporan publik.
Namun, cakupannya jauh lebih luas. Hirudo menyimpan daftar 42 aplikasi keuangan, dan kodenya juga merujuk pada target di Tiongkok, India, Malaysia, Meksiko, Maroko, dan Thailand. Karena “mesin” Hirudo dirancang untuk digunakan ulang, menambah target baru hanyalah soal waktu.
Panel Operator yang Bocor
Ironisnya, operator Hirudo sendiri lalai menjaga keamanan. ThreatFabric menemukan backend yang terbuka tanpa perlindungan berisi ribuan entri kredensial aplikasi yang dicuri, lengkap dengan data perangkat, data layar kunci, dan profil keuangan korban. Selain itu, ditemukan pula panel pemrosesan APK tanpa autentikasi dengan kontrol berbahasa Mandarin.
Jumlah pasti korban hingga kini belum diketahui.
Kelemahan Hirudo
Meskipun canggih, Hirudo memiliki beberapa titik lemah yang bisa dimanfaatkan:
- Proses penggantian dapat digagalkan pengguna. ThreatFabric mencatat ada dua titik di mana korban bisa menghentikan serangan: saat jendela uninstall aplikasi bank muncul, dan saat installer meminta otorisasi untuk memasang aplikasi pengganti. Cukup tekan “Batal”.
- Keybox yang dipakai sudah bocor dan dicabut. Google sudah memasukkan setidaknya dua sertifikat dari keybox tersebut ke daftar pencabutan (revocation list). Bank yang memverifikasi atestasi di sisi server dan memeriksa daftar pencabutan dapat mendeteksi pemalsuan ini.
- Tanda tangan aplikasi tiruan berbeda. Karena ditandatangani dengan test key publik, aplikasi tiruan tetap dapat dikenali oleh pemeriksaan yang tidak berjalan di dalam proses aplikasi itu sendiri.
Tanda-Tanda Ponsel Anda Mungkin Terinfeksi
- Sebuah aplikasi non-bank (belanja, video, drama) tiba-tiba menawarkan “update” yang memasang aplikasi lain.
- Aplikasi meminta izin Aksesibilitas, padahal bukan alat bantu aksesibilitas yang Anda pilih sendiri.
- Muncul jendela “update” untuk aplikasi bank di luar Play Store.
- Aplikasi bank Anda tiba-tiba diminta dihapus, atau sempat hilang lalu muncul kembali.
- Muncul permintaan izin VPN dari aplikasi yang tidak ada hubungannya dengan VPN.
Cara Melindungi Diri bagi Pengguna
- Perbarui aplikasi hanya melalui Google Play Store. Aplikasi yang menawarkan untuk memasang “update”-nya sendiri adalah tanda bahaya.
- Jangan memasang APK dari tautan iklan media sosial, sekalipun aplikasinya terlihat menarik dan berfungsi normal.
- Matikan izin “Instal aplikasi tidak dikenal” untuk browser dan semua aplikasi lain.
- Jangan berikan izin Aksesibilitas kepada aplikasi yang bukan alat bantu aksesibilitas pilihan Anda.
- Jika aplikasi bank meminta dipasang ulang atau tiba-tiba hilang, hentikan prosesnya. Pasang ulang hanya dari Play Store, lalu hubungi bank melalui nomor resmi yang tertera di kartu Anda.
- Selalu perbarui sistem Android dan jalankan pemindaian Play Protect secara berkala.
Rekomendasi bagi Bank dan Pengembang Aplikasi
Pelajaran terbesar dari Hirudo adalah bahwa sinyal keamanan yang dihasilkan di perangkat tidak lagi bisa dipercaya begitu saja. ThreatFabric menegaskan bahwa sinyal lokal “harus diperlakukan sebagai sesuatu yang dapat dipengaruhi penyerang dan diverifikasi di sisi server”. Beberapa langkah yang direkomendasikan:
- Verifikasi Play Integrity dan key attestation di sisi server, termasuk memeriksa sertifikat terhadap daftar pencabutan milik Google.
- Ikat hasil verifikasi integritas ke sesi dan aksi sensitif (misalnya transfer), bukan hanya diperiksa sekali saat aplikasi dibuka. Contoh solusi yang dapat digunakan adalah V-OS App Identity.
- Gunakan analitik perilaku dan kontrol risiko transaksi untuk menandai pola navigasi yang tidak wajar atau telemetri yang hilang selama sesi berlangsung.
- Terapkan deteksi repackaging, hooking, penyalahgunaan Aksesibilitas dan overlay, serta perekaman layar.
- Periksa sumber instalasi aplikasi dan tandai aplikasi yang tidak dipasang dari toko resmi.
- Lakukan edukasi nasabah secara aktif bahwa pembaruan aplikasi bank tidak pernah datang melalui pop-up di luar Play Store.
Kesimpulan
Hirudo menandai babak baru dalam ancaman perbankan mobile. Jika trojan lama hanya “menempelkan” layar palsu di atas aplikasi bank, Hirudo mengganti aplikasinya sekaligus dan membalikkan fitur keamanan bank untuk melawan dirinya sendiri. Dengan fokus pada nasabah Indonesia, ancaman ini perlu diwaspadai serius oleh pengguna maupun industri perbankan di tanah air.
Kabar baiknya, rantai serangan Hirudo masih bergantung pada persetujuan pengguna di beberapa titik: memasang aplikasi dari luar Play Store, memberikan izin Aksesibilitas, dan mengizinkan aplikasi bank dihapus. Di setiap titik itu, satu ketukan “Batal” dapat memutus seluruh rantai serangan.
Sumber
- BleepingComputer: Hirudo Android malware replaces banking apps to evade security checks
- SecurityOnline: Hirudo Android Banking Trojan Replaces Genuine Banking Apps With Patched Copies
- PCrisk: Hirudo Android Trojan Swaps Banking Apps For Self-Blinding Clones
- Talsec: Hirudo, the Android banking trojan that patches the bank’s own app
- Frame: Hirudo swaps your real banking app for a patched copy
Leave a Reply