Tag Archives: e-money

Membedah: mandiri e-money isi ulang (2)

Akhirnya ada yang mencoba melakukan attack dan berhasil (menurut pengakuannya — saya belum melihat dokumentasi attack ini dilakukan).

Sesuai dengan analisa pertama saya bahwa memberikan fasilitas debug/logging pada aplikasi production (sebelumnya saya hanya menyebut “feature“, karena toh sudah ada yang menulis secara detil di blog) memberikan kemudahan attacker melakukan analisa alur program, terlebih lagi protokol komunikasi yang dipergunakan.

Sebuah pembelajaran untuk selalu kritis dalam implementasi aplikasi (terutama aplikasi untuk industri financial).

Membedah: mandiri e-money isi ulang

Seperti yang pernah saya singgung pada postingan sebelumnya, memberikan aplikasi untuk layanan e-money merupakan pilihan yang bisa dibilang beresiko. Apalagi untuk proses top-up. Masalahnya tentu pada aspek security dari layanan ini tentunya.

Sebelum terlalu dalam (karena waktu juga yang belum ada), mari kita coba dulu apakah aplikasi ini benar-benar bekerja sesuai yang dijanjikan.

Prosesnya cukup mudah:

  1. Registrasi terlebih dahulu, seperti halnya layanan online, pengguna harus mendaftarkan e-mail & set password
  2. NFC ON
  3. Tap kartu pada handset
  4. Aplikasi akan memunculkan informasi saldo terakhir, setelah itu muncul denominasi nilai top-up yang bisa dipilih
  5. Setelah memilih denom, user akan diminta untuk input nomor kartu ATM, expiry date, & CVV kartu
  6. Selanjutnya proses authentikasi 3DS seperti biasa kode OTP akan dikirim melalui SMS; perlu dicatat bahwa tipe SMS yang dipergunakan adalah class-0, sehingga pesan OTP hanya muncul sebagai pop-up dialog pada handset Android. Menyebabkan user harus benar-benar mengingat nilai OTP yang dikirim, untuk selanjutnya diinputkan dalam aplikasi (sebenarnya hanya menampilkan tampilan web 3DS-nya Bank Mandiri)
  7. Setelah proses 3DS selesai, user diharuskan untuk melakukan tap ulang kartu e-money pada handset; di sinilah proses top-up saldo offline kartu dilakukan
  8. Dan notifikasi akan muncul bahwa saldo e-money sudah terkredit; notifikasi juga dikirim melalui e-mail

Setelah mencoba sendiri, rasanya aplikasi ini layak mendapat acungan jempol karena,

  • Berjalan sesuai dengan yang diharapkan
  • Inovasi layanan e-money pertama di Indonesia yang memperbolehkan mekanisme top-up melalui mobile device milik user

Lalu bagian analisa security-nya?

Continue reading

Let’s hack! Membedah e-money Bank Mandiri

Kenapa e-money Bank Mandiri? Ada beberapa alasan mengapa saya penasaran dengan keamanan produk e-money ini.

  1. Saat ini produk e-money yg ada di dompet saya
  2. Saat ini produk e-money yg meluncurkan aplikasi reader (mandiri e-money info)

Dari dua alasan tersebut saya coba mem-“bedah” keamanan untuk produk e-money tersebut. Kenapa? Saya pikir memberikan aplikasi pembaca kartu seperti memberikan kunci yang patah untuk mengintip isi sebuah kotak yang dikunci dengan gembok. Pertanyaan selanjutnya apakah kunci patah tadi hanya bisa untuk mengintip saja? atau bahkan bisa membuka isi kotak?

Jika belum mudeng maksud analogi saya di atas, ada analogi lain: bayangkan anda akan masuk ke sebuah rumah yang memiliki dua lapis pintu. Di balik pintu pertama terdapat ruang tamu dengan foto-foto harta benda yang berada di dalam rumah itu. Di balik pintu kedua kemungkinan kita bisa menemukan harga yang sebenarnya. Di depan rumah tersebut ada pelayan yang bertugas hanya mengantar anda untuk masuk rumah melewati pintu pertama. Pelayan tersebut membawa beberapa kunci, bisa jadi salah satu kunci yang lain merupakan kunci untuk memasuki pintu kedua. Continue reading