Malware Android Hirudo tidak hanya mencuri kredensial melalui aplikasi palsu. ThreatFabric menemukan delapan aplikasi pengganti yang dirancang untuk aplikasi dari tujuh bank di Indonesia. Temuan ini menyoroti risiko yang lebih kompleks: manipulasi terhadap aplikasi mobile banking asli dan mekanisme keamanan di dalamnya.
Ketika Aplikasi Asli Tidak Lagi Bisa Dipercaya
Selama ini, edukasi keamanan mobile banking sering menekankan satu pesan: jangan mengklik tautan mencurigakan, jangan memberikan OTP kepada siapa pun, dan jangan mengunduh aplikasi dari sumber yang tidak resmi.
Langkah-langkah tersebut tetap penting. Namun, bagaimana jika ancamannya tidak berhenti pada pencurian kredensial melalui halaman login palsu?
Laporan ThreatFabric mengenai Hirudo mengungkap pendekatan yang lebih kompleks. Malware Android ini menggunakan aplikasi bertema hiburan sebagai pintu masuk, kemudian berupaya mengganti aplikasi mobile banking tertentu dengan versi yang telah dimodifikasi.
ThreatFabric mengidentifikasi delapan aplikasi pengganti yang dirancang untuk aplikasi dari tujuh bank di Indonesia. Aplikasi tersebut mempertahankan sebagian besar kode aplikasi asli, tetapi menambahkan mekanisme untuk memanipulasi sejumlah pemeriksaan keamanan.
Temuan ini memperlihatkan bahwa ancaman terhadap mobile banking tidak hanya berkaitan dengan bagaimana penyerang mencuri informasi pengguna. Integritas aplikasi yang berjalan di perangkat juga menjadi bagian penting dari pertahanan.
Bagi bank, fintech, dan organisasi yang mengoperasikan aplikasi mobile untuk layanan finansial, pertanyaannya bukan sekadar bagaimana melindungi kredensial nasabah. Organisasi juga perlu mempertimbangkan bagaimana mendeteksi dan merespons manipulasi terhadap aplikasi selama aplikasi tersebut berjalan.
Bagaimana Hirudo Menyerang Pengguna Mobile Banking?
Hirudo merupakan malware Android yang memiliki kemampuan Remote Access Trojan (RAT). Kemampuannya memungkinkan penyerang mengakses informasi tertentu dari perangkat korban dan menjalankan aktivitas berbahaya dari jarak jauh.
Berdasarkan analisis ThreatFabric, rangkaian serangan Hirudo dapat melibatkan beberapa tahapan.
1. Fake Update Menjadi Pintu Masuk
Serangan dapat dimulai ketika pengguna memasang aplikasi yang tampak seperti aplikasi hiburan, shopping, video, atau short drama.
Aplikasi tersebut dapat berfungsi sebagai dropper, yaitu aplikasi awal yang digunakan untuk mengantarkan atau memasang payload berbahaya. Setelah dijalankan, aplikasi dapat menampilkan pembaruan palsu atau fake update yang meminta pengguna memasang aplikasi tambahan.
Jika pengguna mengikuti instruksi tersebut, payload malware dapat terpasang di perangkat.
Taktik ini memanfaatkan kepercayaan pengguna terhadap proses pembaruan aplikasi. Tampilan aplikasi yang berfungsi normal pada awalnya juga dapat membuat aktivitas berbahaya lebih sulit dikenali.
Pelajaran pentingnya adalah bahwa risiko tidak selalu muncul dari aplikasi yang sejak awal terlihat mencurigakan. Aplikasi yang tampak biasa pun dapat menjadi bagian dari rantai serangan.
2. Mengumpulkan Kredensial dan Informasi Perangkat
Setelah aktif, Hirudo memiliki kemampuan untuk mengumpulkan informasi yang dapat dimanfaatkan dalam penipuan finansial.
Kemampuan yang dilaporkan mencakup pencurian kredensial dan PIN pembayaran, pengumpulan informasi SMS, serta pemantauan layar dan penggunaan kamera perangkat.
Kemampuan tersebut dapat membantu penyerang memahami aktivitas korban, mengumpulkan informasi sensitif, dan mendukung upaya pengambilalihan akun.
Dalam konteks mobile banking, risiko tidak terbatas pada satu jenis data. Kredensial yang dicuri dapat menjadi pintu masuk, sementara informasi tambahan dari perangkat dapat membantu penyerang melanjutkan serangan.
Namun, keberadaan kemampuan tersebut tidak berarti setiap perangkat yang terinfeksi pasti mengalami seluruh bentuk pencurian data atau transaksi tanpa otorisasi. Dampaknya bergantung pada kondisi perangkat, konfigurasi malware, izin yang diperoleh, dan tindakan penyerang.
3. Mengganti Aplikasi Mobile Banking dengan Versi Modifikasi
Inilah salah satu aspek paling penting dari temuan Hirudo.
ThreatFabric mengidentifikasi delapan aplikasi pengganti yang dirancang untuk aplikasi dari tujuh bank di Indonesia. Aplikasi pengganti tersebut mempertahankan sebagian besar kode aplikasi asli, tetapi telah dimodifikasi untuk menambahkan kemampuan berbahaya.
Pendekatan ini berbeda dari skenario phishing yang hanya menampilkan halaman login palsu di atas aplikasi atau situs resmi.
Dalam kasus yang dianalisis, malware berupaya mengganti aplikasi asli dengan versi yang telah dimodifikasi. Dengan demikian, penyerang tidak hanya berusaha menipu pengguna melalui tampilan antarmuka. Mereka juga mencoba mengubah bagaimana aplikasi itu sendiri beroperasi.
Bagi pengguna, aplikasi pengganti dapat terlihat menyerupai aplikasi yang biasa digunakan. Sementara itu, perubahan pada kode di balik tampilannya mungkin tidak mudah dikenali secara visual.
Inilah yang membuat integritas aplikasi menjadi persoalan keamanan yang penting.
Tampilan yang terlihat familiar bukan bukti bahwa aplikasi masih utuh dan beroperasi sesuai rancangan pengembangnya.
4. Memanipulasi Mekanisme Keamanan Aplikasi
Menurut ThreatFabric, aplikasi pengganti yang dianalisis menggunakan teknik hooking untuk memanipulasi sejumlah pemeriksaan keamanan.
Mekanisme yang menjadi sasaran mencakup pemeriksaan digital signature, Accessibility service, proteksi screenshot, dan Play Integrity.
Untuk memahami risikonya, kita perlu melihat fungsi beberapa mekanisme tersebut.
- Digital signature verification: membantu memverifikasi identitas penandatangan aplikasi dan integritas paket yang ditandatangani, bergantung pada cara pemeriksaannya diterapkan.
- Accessibility service: merupakan fitur Android yang membantu aksesibilitas, tetapi dapat disalahgunakan aplikasi berbahaya jika memperoleh izin yang relevan.
- Screenshot protection: membantu membatasi pengambilan gambar layar dalam kondisi tertentu, tetapi tidak menjamin seluruh metode perekaman atau pengamatan layar dapat dicegah.
- Google Play Integrity: menyediakan sinyal untuk membantu aplikasi dan backend menilai integritas aplikasi serta lingkungan perangkat, sesuai jenis pemeriksaan dan konfigurasi yang digunakan.
Hooking memungkinkan penyerang memanipulasi perilaku fungsi tertentu saat aplikasi berjalan. Jika pemeriksaan keamanan dilakukan di lingkungan yang telah dikompromikan, hasil pemeriksaan atau respons fungsi tersebut berpotensi dimanipulasi.
Hal ini tidak berarti mekanisme seperti digital signature verification atau Play Integrity tidak berguna. Sebaliknya, temuan Hirudo menunjukkan pentingnya menerapkan pemeriksaan tersebut dengan benar dan menggabungkannya dengan kontrol lain yang tidak sepenuhnya bergantung pada perangkat pengguna.
Bagi tim pengembang aplikasi, persoalannya bukan hanya apakah pemeriksaan keamanan sudah tersedia. Mereka juga perlu mempertimbangkan apakah pemeriksaan tersebut masih dapat dipercaya ketika aplikasi berjalan di lingkungan yang sedang dimanipulasi.
Mengapa Kasus Hirudo Menjadi Perhatian bagi Industri Finansial?
Risiko Hirudo tidak seharusnya dilihat hanya sebagai persoalan pengguna yang mengunduh aplikasi dari sumber tidak resmi.
Kasus ini juga memberikan pelajaran bagi organisasi yang mengembangkan, mengoperasikan, dan mengamankan aplikasi mobile.
Integritas Aplikasi Merupakan Bagian dari Keamanan Transaksi
Aplikasi mobile menjadi salah satu antarmuka utama bagi nasabah untuk mengakses layanan finansial. Keamanan aplikasi karena itu berhubungan langsung dengan perlindungan kredensial, sesi pengguna, dan proses transaksi.
Jika aplikasi telah dimodifikasi, asumsi bahwa seluruh fungsi keamanan di dalamnya bekerja sebagaimana mestinya perlu dipertanyakan.
Organisasi membutuhkan mekanisme untuk menilai apakah aplikasi yang berjalan masih sesuai dengan versi dan kondisi yang diharapkan, serta bagaimana merespons indikasi manipulasi.
Perlindungan Saat Pengembangan Saja Tidak Cukup
Secure coding, code review, vulnerability assessment, dan penetration testing tetap menjadi bagian penting dari siklus pengembangan aplikasi.
Namun, pengujian tersebut dilakukan pada kondisi dan waktu tertentu. Setelah aplikasi didistribusikan ke perangkat pengguna, aplikasi dapat menghadapi lingkungan eksekusi yang berbeda dari lingkungan pengujian.
Perangkat dapat mengalami kompromi. Aplikasi dapat menjadi sasaran reverse engineering, repackaging, atau runtime hooking. Penyerang juga dapat mencoba memanfaatkan konfigurasi perangkat yang tidak aman.
Karena itu, perlindungan aplikasi perlu mempertimbangkan dua hal: bagaimana aplikasi dibangun dan bagaimana aplikasi berperilaku ketika berjalan di perangkat pengguna.
Keamanan Perangkat Harus Terhubung dengan Pertahanan Backend
Aplikasi mobile tidak dapat menjadi satu-satunya lapisan pertahanan.
Pemeriksaan integritas yang dilakukan di perangkat perlu diintegrasikan dengan validasi di sisi server. Sistem backend juga perlu mempertimbangkan konteks autentikasi, pola perilaku pengguna, dan risiko transaksi.
Misalnya, sinyal bahwa aplikasi berjalan dalam lingkungan yang mencurigakan dapat menjadi salah satu masukan untuk meningkatkan tingkat pemeriksaan, meminta autentikasi tambahan, atau menahan transaksi tertentu sesuai kebijakan risiko organisasi.
Dengan pendekatan ini, keputusan keamanan tidak hanya bergantung pada hasil pemeriksaan lokal yang mungkin menjadi sasaran manipulasi.
Bagaimana Organisasi Dapat Memperkuat Keamanan Aplikasi Mobile?
Kasus Hirudo menegaskan bahwa perlindungan aplikasi mobile perlu dibangun melalui beberapa lapisan yang saling melengkapi.
1. Memperkuat App Integrity Verification
Organisasi perlu memverifikasi integritas aplikasi untuk membantu mengidentifikasi indikasi modifikasi atau penggunaan aplikasi yang tidak sesuai dengan versi resmi.
Pemeriksaan digital signature, validasi integritas aplikasi, dan penggunaan mekanisme attestation dapat mendukung upaya ini.
Untuk mekanisme seperti Google Play Integrity, hasil pemeriksaan perlu divalidasi di backend dan digunakan sesuai model ancaman serta kebijakan keamanan organisasi.
2. Mendeteksi Manipulasi Saat Runtime
Pemeriksaan integritas pada saat aplikasi dipasang atau diluncurkan tidak selalu cukup untuk menghadapi ancaman yang berkembang ketika aplikasi berjalan.
Organisasi perlu mempertimbangkan proteksi terhadap teknik seperti runtime hooking, debugging, reverse engineering, dan manipulasi proses aplikasi.
Pendekatan ini menjadi relevan ketika penyerang berusaha mengubah perilaku aplikasi tanpa harus mengubah seluruh tampilan atau fungsionalitas yang terlihat oleh pengguna.
3. Memperkuat Autentikasi dan Perlindungan Sesi
Kredensial yang benar tidak selalu menunjukkan bahwa proses autentikasi berlangsung dalam kondisi yang aman.
Organisasi perlu menilai bagaimana aplikasi mengelola sesi, menyimpan data sensitif, dan mengautentikasi tindakan berisiko tinggi.
Untuk transaksi tertentu, autentikasi tambahan atau verifikasi berbasis risiko dapat membantu mengurangi dampak jika kredensial pengguna telah dicuri.
4. Menerapkan Risk-Based Transaction Monitoring
Backend perlu menganalisis konteks transaksi dan pola aktivitas untuk mengidentifikasi perilaku yang menyimpang.
Indikatornya dapat mencakup perubahan pola transaksi, aktivitas yang tidak biasa, atau sinyal risiko dari aplikasi dan perangkat.
Tidak ada satu indikator yang selalu membuktikan adanya serangan. Karena itu, organisasi perlu menggabungkan beberapa sinyal dan menerapkan kebijakan respons berdasarkan tingkat risiko.
5. Mengintegrasikan Mobile Security ke dalam Siklus Pengembangan
Perlindungan aplikasi tidak seharusnya menjadi aktivitas yang baru dilakukan setelah insiden terjadi.
Tim application development, application security, IT security, dan fraud management perlu berkolaborasi untuk menentukan kebutuhan proteksi, menguji efektivitas kontrol, serta mengevaluasi respons terhadap indikasi kompromi.
Dengan cara ini, keamanan aplikasi menjadi bagian dari siklus pengembangan dan pengoperasian layanan digital, bukan sekadar pemeriksaan sebelum aplikasi dirilis.
Peran Mobile RASP dalam Menghadapi Ancaman seperti Hirudo
Salah satu pendekatan yang dapat dipertimbangkan adalah Mobile Runtime Application Self-Protection (Mobile RASP).
Mobile RASP merupakan pendekatan perlindungan yang diintegrasikan ke dalam aplikasi untuk membantu mendeteksi dan merespons ancaman pada saat aplikasi berjalan.
Berbeda dari pendekatan yang hanya memeriksa aplikasi sebelum dirilis atau mengandalkan kontrol jaringan, Mobile RASP berfokus pada kondisi runtime aplikasi dan lingkungan tempat aplikasi dieksekusi.
Bergantung pada kemampuan dan konfigurasi implementasinya, Mobile RASP dapat membantu mengidentifikasi indikasi runtime hooking, debugging, reverse engineering, modifikasi aplikasi, atau kondisi perangkat yang berisiko. Responsnya dapat berupa peringatan, pembatasan fungsi, penghentian sesi, atau tindakan mitigasi lainnya.
Pendekatan ini relevan dengan pelajaran dari Hirudo: ketika penyerang berusaha memanipulasi perilaku aplikasi, organisasi memerlukan kontrol yang mempertimbangkan apa yang terjadi selama aplikasi berjalan.
Namun, Mobile RASP bukan pengganti seluruh mekanisme keamanan aplikasi. Efektivitasnya bergantung pada kemampuan produk, implementasi, konfigurasi, dan pengujian terhadap skenario ancaman yang relevan.
AppProtectt dari Protectt.ai
Untuk organisasi yang ingin memperkuat perlindungan aplikasi mobile, salah satu solusi yang dapat dipertimbangkan adalah AppProtectt dari Protectt.ai, sebuah platform Mobile RASP untuk aplikasi Android dan iOS.
Berdasarkan informasi produk resminya, AppProtectt menyediakan sejumlah kemampuan perlindungan yang relevan dengan risiko manipulasi aplikasi mobile, antara lain:
- Runtime Hooking Protection: membantu mendeteksi dan memitigasi indikasi manipulasi fungsi aplikasi melalui teknik hooking.
- App Spoofing dan Reverse Engineering Protection: mendukung perlindungan terhadap ancaman yang berkaitan dengan aplikasi tiruan dan analisis atau rekayasa balik aplikasi.
- Compromised Device Detection: membantu mengidentifikasi kondisi perangkat berisiko, termasuk perangkat yang telah di-root atau di-jailbreak.
- Screen Mirroring Detection: membantu mendeteksi aktivitas screen mirroring yang berpotensi disalahgunakan untuk mengamati aktivitas pengguna.
- MITM Protection: membantu melindungi komunikasi aplikasi dari serangan man-in-the-middle dalam skenario yang didukung produk.
- SMS Attack Protection: menyediakan kemampuan perlindungan terhadap kategori ancaman SMS yang didukung platform.
Kemampuan tersebut dapat menjadi bagian dari strategi untuk mengurangi risiko manipulasi aplikasi, penyalahgunaan lingkungan runtime, dan pengamatan aktivitas pengguna.
Dalam konteks Hirudo, runtime hooking protection menjadi salah satu kemampuan yang relevan untuk dievaluasi karena ThreatFabric melaporkan penggunaan hooking pada aplikasi pengganti yang dianalisis.
Sementara itu, perlindungan terhadap aplikasi tiruan, reverse engineering, dan perangkat yang dikompromikan dapat mendukung pendekatan pertahanan berlapis.
Meski demikian, kemampuan tersebut tidak boleh ditafsirkan sebagai jaminan bahwa AppProtectt dapat mendeteksi atau menghentikan seluruh varian Hirudo maupun setiap tahapan serangannya. Organisasi tetap perlu mengevaluasi produk berdasarkan arsitektur aplikasi, model ancaman, dan skenario pengujian yang sesuai.
Informasi lengkap mengenai kapabilitas AppProtectt dapat dilihat melalui halaman resmi Protectt.ai: https://protectt.ai/appprotectt-mobile-app-security-platform.
Menggabungkan Runtime Protection dan Keamanan Backend
Perlindungan aplikasi mobile akan lebih efektif jika menjadi bagian dari arsitektur keamanan yang lebih luas.
Mobile RASP dapat membantu mendeteksi atau merespons aktivitas mencurigakan di dalam aplikasi. Namun, organisasi tetap memerlukan kontrol backend untuk memvalidasi sinyal integritas, mengelola autentikasi, memantau perilaku transaksi, dan menentukan tindakan berdasarkan tingkat risiko.
Pendekatan ini juga sejalan dengan rekomendasi ThreatFabric yang menekankan pentingnya validasi Play Integrity di sisi server, pemeriksaan attestation revocation, behavioral analytics, dan kontrol risiko transaksi.
Secara praktis, organisasi dapat membangun pendekatan berlapis melalui kombinasi berikut:
- Application-layer protection: mendeteksi indikasi manipulasi aplikasi dan aktivitas mencurigakan saat runtime.
- Server-side validation: memvalidasi sinyal integritas aplikasi dan perangkat melalui backend.
- Authentication security: memperkuat perlindungan kredensial, sesi, dan transaksi sensitif.
- Fraud monitoring: menganalisis aktivitas untuk mengidentifikasi pola transaksi berisiko.
- Incident response: menyiapkan proses investigasi, mitigasi, dan komunikasi ketika ditemukan indikasi kompromi.
Tujuannya bukan mengandalkan satu teknologi untuk menghentikan seluruh serangan. Tujuannya adalah membangun beberapa lapisan pertahanan sehingga kegagalan satu kontrol tidak otomatis membuka seluruh jalur menuju penyalahgunaan layanan.
Kesimpulan: Keamanan Mobile Banking Harus Melampaui Perlindungan Kredensial
Kasus Hirudo menunjukkan bahwa ancaman terhadap mobile banking dapat berkembang melampaui phishing dan pencurian kredensial.
Dalam temuan ThreatFabric, malware ini tidak hanya memiliki kemampuan mengumpulkan informasi sensitif, tetapi juga berupaya mengganti aplikasi perbankan tertentu dengan versi yang dimodifikasi dan memanipulasi sejumlah mekanisme keamanan di dalamnya.
Bagi industri finansial, hal ini mempertegas pentingnya menjaga integritas aplikasi, mendeteksi manipulasi selama runtime, dan menghubungkan sinyal keamanan aplikasi dengan kontrol di sisi server.
Mobile RASP, termasuk AppProtectt dari Protectt.ai, dapat menjadi salah satu komponen dalam strategi tersebut. Namun, penerapannya perlu disertai validasi backend, pengamanan autentikasi, pemantauan risiko transaksi, serta pengujian yang sesuai dengan model ancaman organisasi.
Keamanan aplikasi mobile bukan hanya tentang memastikan aplikasi aman ketika dirilis. Organisasi juga perlu mempertimbangkan apakah aplikasi tetap dapat dipercaya ketika berjalan di perangkat pengguna.
Perkuat Perlindungan Aplikasi Mobile Anda bersama Dymar
Bagi bank, fintech, multifinance, dan organisasi yang mengandalkan aplikasi mobile untuk melayani pelanggan, memahami risiko runtime manipulation merupakan langkah penting dalam memperkuat application security.
Dymar menyediakan solusi AppProtectt dari Protectt.ai untuk membantu organisasi mengevaluasi dan memperkuat perlindungan aplikasi mobile terhadap berbagai ancaman yang relevan.
Hubungi tim Dymar untuk mendiskusikan kebutuhan Mobile RASP dan pendekatan perlindungan aplikasi yang sesuai dengan arsitektur serta risiko organisasi Anda.
FAQ tentang Hirudo dan Mobile Application Security
1. Apa itu malware Hirudo?
Hirudo adalah malware Android dengan kemampuan Remote Access Trojan (RAT) yang dianalisis oleh ThreatFabric. Malware ini dapat mengumpulkan informasi sensitif dari perangkat dan, dalam kampanye yang dilaporkan, berupaya mengganti aplikasi mobile banking tertentu dengan versi yang telah dimodifikasi.
2. Bagaimana Hirudo menyerang aplikasi mobile banking di Indonesia?
Menurut ThreatFabric, Hirudo dapat disebarkan melalui aplikasi bertema hiburan dan shopping yang menggunakan fake update untuk memasang payload berbahaya. ThreatFabric juga mengidentifikasi delapan aplikasi pengganti yang dirancang untuk aplikasi dari tujuh bank di Indonesia. Versi pengganti tersebut mempertahankan sebagian besar kode aplikasi asli, tetapi menambahkan mekanisme untuk memanipulasi sejumlah pemeriksaan keamanan.
3. Apa itu Mobile RASP?
Mobile Runtime Application Self-Protection (Mobile RASP) adalah pendekatan keamanan yang diintegrasikan ke dalam aplikasi mobile untuk membantu mendeteksi dan merespons ancaman saat aplikasi berjalan. Bergantung pada kemampuan implementasinya, Mobile RASP dapat membantu mengidentifikasi indikasi hooking, debugging, reverse engineering, modifikasi aplikasi, dan kondisi runtime yang berisiko.
4. Bagaimana Mobile RASP membantu melindungi aplikasi mobile banking?
Mobile RASP dapat menambah lapisan perlindungan dengan membantu mendeteksi dan merespons manipulasi aplikasi saat runtime. Namun, efektivitasnya bergantung pada kemampuan produk, konfigurasi, dan implementasi. Mobile RASP sebaiknya dikombinasikan dengan validasi integritas di backend, autentikasi yang kuat, dan pemantauan risiko transaksi.
5. Apa itu AppProtectt dari Protectt.ai?
AppProtectt adalah platform Mobile RASP untuk aplikasi Android dan iOS. Berdasarkan informasi resmi Protectt.ai, platform ini menyediakan kemampuan perlindungan terhadap sejumlah ancaman aplikasi mobile, termasuk runtime hooking, app spoofing, reverse engineering, screen mirroring, dan perangkat yang dikompromikan. Kesesuaian fitur dan efektivitas perlindungannya perlu dievaluasi berdasarkan kebutuhan dan model ancaman organisasi.
6. Apakah Mobile RASP saja cukup untuk mencegah serangan terhadap mobile banking?
Tidak. Mobile RASP merupakan salah satu lapisan pertahanan, bukan pengganti seluruh kontrol keamanan. Organisasi tetap perlu menerapkan validasi di sisi server, pengamanan autentikasi dan sesi, pemantauan risiko transaksi, serta proses respons insiden untuk mengurangi risiko penyalahgunaan layanan.