📱 I. Pendahuluan
Di era digital saat ini, hampir semua orang menggunakan aplikasi mobile untuk berbagai keperluan: mulai dari belanja, perbankan, belajar, hingga komunikasi. Namun, di balik kenyamanan ini, terdapat ancaman serius yang mengintai keamanan pengguna: session hijacking atau pembajakan sesi.
Session hijacking adalah teknik di mana penyerang mencuri identitas sesi pengguna yang sedang login, dan menggunakannya untuk mengakses akun pengguna tanpa login ulang. Di aplikasi mobile, serangan ini semakin berbahaya karena sering kali terjadi tanpa disadari oleh korban.
🧠 II. Apa Itu Session Hijacking?
Setiap kali kamu login ke sebuah aplikasi, sistem akan memberikan “tiket khusus” berupa session ID. Session ID ini akan terus digunakan oleh aplikasi untuk mengenali kamu, tanpa harus minta login ulang di setiap halaman.
Nah, jika session ID ini dicuri oleh penyerang, maka mereka bisa langsung masuk ke akun kamu dan mengakses semua fitur — seolah-olah mereka adalah kamu. Inilah yang disebut session hijacking.
⚠️ III. Mengapa Aplikasi Mobile Rentan?
Meskipun banyak orang merasa bahwa aplikasi mobile lebih aman, kenyataannya justru sebaliknya. Berikut beberapa alasan mengapa aplikasi mobile rentan terhadap session hijacking:
- Penggunaan Jaringan Publik (Wi-Fi)
- Banyak pengguna mengakses aplikasi dari Wi-Fi publik tanpa enkripsi, membuat session ID mudah disadap.
- Penyimpanan Session ID di Memori Lokal
- Session ID sering disimpan di
SharedPreferences
(Android) atauNSUserDefaults
(iOS) yang bisa diakses oleh aplikasi lain jika tidak dienkripsi.
- Session ID sering disimpan di
- Tidak Menggunakan HTTPS Sepenuhnya
- Jika pengembang tidak memaksa HTTPS di semua komunikasi, data bisa bocor saat transit.
- Kurangnya Proteksi Cookie
- Jika aplikasi berbasis web (hybrid) dan tidak mengatur cookie dengan benar, session ID bisa dicuri lewat XSS.
- Tidak Ada Session Timeout
- Banyak aplikasi tidak mengakhiri sesi meskipun tidak aktif dalam waktu lama, membuka peluang pembajakan lebih besar.
🔍 IV. Contoh Serangan Session Hijacking di Aplikasi Mobile
Kasus Sederhana:
- Seorang pengguna login ke aplikasi e-wallet dari Wi-Fi kafe.
- Penyerang yang berada di jaringan sama menyadap lalu lintas data menggunakan aplikasi seperti Packet Capture.
- Session ID pengguna berhasil didapat.
- Penyerang memasukkan session ID ke aplikasinya dan langsung mengakses saldo dan transaksi tanpa perlu login.
Hasil:
- Uang korban berpindah tangan.
- Tidak ada notifikasi login mencurigakan.
- Korban bingung karena tidak merasa kehilangan kendali atas akun.
🛡️ V. Cara Mencegah Session Hijacking di Aplikasi Mobile
Berikut beberapa praktik terbaik yang dapat dilakukan untuk melindungi sesi pengguna di aplikasi mobile:
✅ Untuk Pengembang:
- Gunakan HTTPS (TLS) sepenuhnya
- Enkripsi seluruh komunikasi antara aplikasi dan server.
- Gunakan Token yang Aman (seperti JWT)
- Token harus dienkripsi dan dibatasi waktu penggunaannya.
- Simpan Token di Tempat Aman
- Hindari menyimpan token di
SharedPreferences
tanpa enkripsi. Gunakan Keystore atau Secure Enclave.
- Hindari menyimpan token di
- Regenerasi Token Secara Berkala
- Setiap kali pengguna login ulang atau melakukan aktivitas penting, ganti session ID.
- Terapkan Session Timeout
- Otomatis logout setelah waktu tertentu tanpa aktivitas.
- Tambahkan Autentikasi Ganda (MFA)
- Lapisan keamanan tambahan jika sesi dicuri.
✅ Untuk Pengguna:
- Hindari Wi-Fi publik saat login ke aplikasi penting
- Selalu logout jika menggunakan perangkat umum
- Periksa izin aplikasi — jangan sembarang izinkan akses data
- Gunakan kunci layar dan fitur keamanan biometrik
📌 VI. Kesimpulan
Session hijacking di aplikasi mobile adalah ancaman nyata yang bisa terjadi kapan saja, terutama jika pengguna atau pengembang tidak menerapkan prinsip keamanan yang tepat. Dengan banyaknya aktivitas sensitif yang dilakukan lewat aplikasi — mulai dari transaksi, chat, hingga pekerjaan — menjaga keamanan sesi pengguna adalah tanggung jawab bersama.
NAMA : SAFARUDDIN
NIM : 23156201035
JURUSAN : SISTEM KOMPUTER