Selasa, 27 Oktober 2026 | 11 min read | Andhika R
Pentest Mobile Perlu Menguji Data yang Tertinggal setelah Pengguna Logout
Pengguna membuka aplikasi perusahaan untuk memeriksa informasi pelanggan, mengunduh dokumen, dan menyelesaikan sejumlah pekerjaan. Setelah seluruh aktivitas selesai, pengguna menekan tombol logout. Aplikasi kembali menampilkan halaman login tanpa menunjukkan kesalahan.
Dari sisi pengguna, proses tersebut terlihat normal. Sesi dianggap sudah berakhir dan informasi yang sebelumnya diakses seharusnya tidak lagi tersedia.
Namun, bagaimana jika dokumen yang baru dibuka masih tersimpan dalam cache aplikasi? Bagaimana jika informasi pelanggan tetap berada dalam database lokal, atau token autentikasi masih dapat digunakan untuk mengakses server tanpa harus login kembali?
Kondisi tersebut memperlihatkan bahwa keberhasilan logout pada antarmuka belum tentu menjamin seluruh akses terhadap data telah dihentikan.
Inilah alasan mengapa pentest mobile perlu memeriksa kondisi aplikasi setelah pengguna logout, bukan hanya memastikan tombol keluar berfungsi sebagaimana mestinya.

Logout yang Berhasil di Layar Belum Tentu Mengakhiri Seluruh Akses
Dalam pengembangan aplikasi mobile, logout sering dipahami sebagai proses mengakhiri sesi pengguna dan mengembalikan tampilan aplikasi ke halaman autentikasi.
Namun, proses tersebut sebenarnya melibatkan beberapa komponen yang bekerja secara terpisah. Aplikasi perlu mengakhiri status autentikasi, menangani token yang digunakan untuk mengakses backend, dan memastikan informasi sensitif tidak lagi tersedia bagi pihak yang tidak berwenang.
Masalah muncul ketika mekanisme logout hanya mengubah status pengguna pada aplikasi, sementara komponen lainnya tidak ikut diperbarui.
Sebagai contoh, aplikasi dapat menghapus informasi login dari antarmuka tanpa mencabut sesi yang masih aktif pada server. Akibatnya, permintaan API tertentu mungkin tetap diterima menggunakan token autentikasi sebelumnya.
Kondisi serupa dapat terjadi pada penyimpanan lokal. Aplikasi memang tidak lagi menampilkan informasi pengguna, tetapi salinan data yang sebelumnya diproses masih tersedia di perangkat.
OWASP Mobile Application Security melalui kategori MASWE-0024, Sensitive Data Accessible After Session Termination, mengidentifikasi kondisi ini sebagai kelemahan keamanan. Permasalahannya mencakup data sensitif atau sesi autentikasi yang tetap dapat diakses setelah seharusnya berakhir.
Standar OWASP MASVS-AUTH-3 juga menekankan bahwa aplikasi harus membuat data sensitif tidak dapat diakses setelah sesi dihentikan.
Dengan demikian, pengujian logout tidak cukup dilakukan dengan menekan tombol keluar dan memeriksa apakah halaman login muncul kembali. Perlu ada pembuktian bahwa proses tersebut benar-benar mengakhiri akses yang tidak lagi memiliki otorisasi.
Data Sensitif Bisa Tetap Tersimpan di Perangkat setelah Logout
Aplikasi mobile sering menyimpan sebagian informasi secara lokal untuk meningkatkan performa dan kenyamanan pengguna.
Penyimpanan tersebut memungkinkan aplikasi memuat informasi lebih cepat, mengurangi permintaan berulang ke server, atau menyediakan fungsi tertentu ketika koneksi internet tidak tersedia.
Namun, manfaat tersebut juga menimbulkan tanggung jawab keamanan. Data yang disimpan perlu dikelola berdasarkan tingkat sensitivitas dan kebutuhan penggunaannya.
Ketika proses logout tidak mempertimbangkan mekanisme penyimpanan lokal, informasi yang seharusnya dilindungi dapat tetap tersedia meskipun pengguna telah mengakhiri sesi.
Cache Aplikasi Dapat Mempertahankan Informasi Pengguna
Cache digunakan untuk menyimpan informasi sementara agar aplikasi tidak perlu mengambil data yang sama berulang kali.
Dalam aplikasi perusahaan, informasi tersebut dapat mencakup profil pelanggan, riwayat aktivitas, dokumen internal, maupun respons API.
Penyimpanan sementara bukanlah kerentanan dengan sendirinya. Risiko muncul ketika cache berisi informasi sensitif yang tetap dapat diakses setelah pengguna logout.
Sebagai contoh, aplikasi layanan pelanggan menyimpan informasi detail pelanggan untuk mempercepat proses pencarian. Setelah petugas keluar dari aplikasi, informasi tersebut masih berada dalam cache dan dapat ditampilkan kembali melalui fungsi tertentu tanpa autentikasi ulang.
Apabila kondisi tersebut terjadi, pembatasan akses yang seharusnya berlaku setelah logout belum diterapkan secara menyeluruh.
Database Lokal Tidak Selalu Mengikuti Status Sesi
Selain cache, aplikasi Android dan iOS dapat menggunakan database lokal untuk menyimpan informasi yang dibutuhkan selama operasional.
SQLite dan berbagai mekanisme penyimpanan lainnya memungkinkan aplikasi mengelola data secara efisien. Namun, data yang tersimpan tidak otomatis hilang ketika pengguna menekan logout.
Apabila aplikasi menyimpan informasi pelanggan, laporan pekerjaan, atau dokumen internal tanpa perlindungan yang memadai, data tersebut berpotensi tetap dapat diakses melalui aplikasi atau oleh pihak yang berhasil memperoleh akses ke penyimpanannya.
Tingkat risikonya bergantung pada kondisi perangkat, mekanisme perlindungan sistem operasi, konfigurasi aplikasi, dan kemampuan pihak yang mencoba mengakses informasi.
Karena itu, pengujian tidak cukup hanya memeriksa keberadaan file atau database. Pemeriksa juga perlu memahami jenis informasi yang tersimpan, perlindungan yang digunakan, dan kemungkinan data tersebut dapat diakses setelah sesi berakhir.
WebView Bisa Menyimpan Cookie dan Informasi Sesi
Sebagian aplikasi mobile menggunakan WebView untuk menampilkan konten berbasis web di dalam aplikasi.
Komponen ini dapat menggunakan cookie, cache, dan mekanisme penyimpanan web untuk mendukung fungsi autentikasi maupun penyajian informasi.
Masalah dapat terjadi ketika aplikasi mengakhiri sesi pada komponen utama, tetapi tidak menangani data autentikasi atau informasi sensitif yang masih tersimpan dalam WebView.
Akibatnya, konten atau status autentikasi tertentu mungkin tetap tersedia ketika pengguna kembali membuka bagian aplikasi tersebut.
Risiko ini perlu diperiksa berdasarkan cara aplikasi mengintegrasikan WebView dengan sistem autentikasi dan pengelolaan data secara keseluruhan.
Token yang Masih Berlaku Bisa Membuat Sesi Berlanjut tanpa Login Ulang
Data yang tertinggal setelah logout tidak selalu berbentuk dokumen atau informasi yang terlihat pada layar.
Token autentikasi justru dapat menimbulkan risiko yang lebih besar apabila tetap dapat digunakan untuk memperoleh akses ke sistem backend.
Dalam banyak aplikasi mobile, access token digunakan untuk mengakses API setelah pengguna berhasil melakukan autentikasi. Sementara itu, refresh token dapat digunakan untuk memperoleh access token baru tanpa meminta pengguna memasukkan kredensial setiap kali sesi diperbarui.
Keduanya memiliki fungsi yang berbeda dan membutuhkan pengelolaan keamanan yang sesuai.
Ketika pengguna logout, aplikasi seharusnya menghentikan kemampuan sesi tersebut untuk mengakses sumber daya yang memerlukan autentikasi, sesuai rancangan keamanan sistem.
Namun, menghapus token dari penyimpanan aplikasi belum tentu membuat token tersebut langsung tidak berlaku pada server.
Jika backend masih menerima token lama, permintaan yang menggunakan token tersebut mungkin tetap berhasil meskipun pengguna telah keluar dari aplikasi.
Sebaliknya, mengakhiri sesi pada server juga tidak otomatis menghapus seluruh salinan data sensitif yang sudah berada di perangkat.
Hal ini menunjukkan bahwa keamanan logout membutuhkan koordinasi antara aplikasi mobile dan sistem backend.
Pada arsitektur yang menggunakan token stateless, pencabutan access token secara langsung dapat memerlukan mekanisme tambahan, seperti revocation list, pengelolaan sesi terpusat, atau masa berlaku token yang pendek.
Karena itu, pengujian harus mempertimbangkan desain autentikasi yang digunakan. Tidak semua token yang masih berada dalam masa berlaku otomatis menunjukkan kerentanan, tetapi perilakunya harus sesuai dengan kebijakan pengakhiran sesi dan tingkat risiko aplikasi.
Tujuan utama pengujian adalah memastikan bahwa sesi yang telah berakhir tidak lagi memberikan akses yang seharusnya membutuhkan autentikasi baru.
Perangkat Bersama Membuat Data yang Tertinggal Menjadi Risiko Operasional
Risiko penyimpanan data setelah logout menjadi lebih relevan pada aplikasi perusahaan yang digunakan melalui perangkat bersama.
Dalam lingkungan operasional, satu perangkat dapat digunakan secara bergantian oleh beberapa karyawan. Kondisi ini umum dijumpai pada aplikasi pelayanan pelanggan, pencatatan inventaris, kegiatan lapangan, maupun proses administrasi.
Bayangkan sebuah aplikasi yang digunakan petugas untuk mengakses dokumen pelanggan dan mencatat hasil pekerjaan.
Petugas pertama menyelesaikan tugas lalu logout. Setelah itu, perangkat diberikan kepada petugas berikutnya yang menggunakan akun berbeda.
Apabila informasi dari sesi sebelumnya masih dapat ditampilkan, aplikasi berpotensi memperlihatkan data yang tidak berkaitan dengan hak akses pengguna baru.
Persoalannya tidak selalu berupa serangan siber yang kompleks. Dalam kondisi tertentu, kelemahan pengelolaan sesi dan penyimpanan informasi sudah cukup untuk menimbulkan paparan data antar pengguna.
Analisis ini sering kami temukan saat melakukan penetration testing pada perusahaan di Indonesia.
Risiko tersebut memperlihatkan bahwa keamanan aplikasi mobile tidak hanya berkaitan dengan perlindungan terhadap penyerang dari luar.
Pemisahan informasi antar akun, pengelolaan data lokal, dan konsistensi hak akses juga menentukan apakah aplikasi aman digunakan dalam aktivitas operasional sehari-hari.
Pentest Mobile Perlu Memeriksa Kondisi Sebelum dan Sesudah Logout
Pengujian keamanan aplikasi mobile seharusnya tidak berhenti pada pemeriksaan fungsi login, validasi kata sandi, atau pengujian autentikasi awal.
Proses logout merupakan bagian dari siklus autentikasi yang juga membutuhkan evaluasi.
Dalam mobile penetration testing, pemeriksaan dapat dilakukan dengan membandingkan kondisi aplikasi ketika sesi masih aktif dan setelah pengguna berhasil logout.
Tujuannya adalah mengetahui apakah informasi sensitif, status autentikasi, dan kemampuan mengakses layanan telah berubah sesuai kebijakan keamanan.
Beberapa aspek penting yang perlu diperiksa meliputi:
- Penyimpanan data lokal. Pemeriksa mengidentifikasi informasi sensitif yang tersimpan dalam database, cache, file aplikasi, maupun mekanisme penyimpanan lainnya.
- Pengakhiran token autentikasi. Token yang digunakan selama sesi diuji untuk mengetahui apakah masih dapat memberikan akses setelah logout.
- Respons API setelah sesi berakhir. Pemeriksaan memastikan bahwa permintaan yang membutuhkan autentikasi tidak lagi diterima menggunakan sesi yang sudah dihentikan.
- Penyimpanan dan sesi WebView. Cookie, cache, serta informasi autentikasi dalam komponen web diperiksa sesuai implementasi aplikasi.
- Pergantian pengguna. Pengujian memastikan bahwa informasi akun sebelumnya tidak dapat diakses secara tidak sah oleh pengguna berikutnya.
- Perubahan kondisi aplikasi. Pemeriksa mengevaluasi perilaku aplikasi ketika berpindah ke latar belakang, dibuka kembali, atau menghadapi kondisi yang menurut kebijakan mengharuskan autentikasi ulang.
OWASP Mobile Application Security Testing Guide menyediakan metodologi untuk mengevaluasi penyimpanan data sensitif, autentikasi, dan pengelolaan sesi pada aplikasi mobile.
Salah satu pemeriksaan yang dijelaskan OWASP adalah memastikan informasi sensitif dalam memori tidak tetap tersedia setelah pengguna keluar dari aplikasi.
Pendekatan tersebut menunjukkan bahwa keamanan logout perlu diperiksa pada berbagai lapisan aplikasi, bukan hanya berdasarkan perubahan tampilan.
Hasil pengujian juga harus memberikan konteks yang jelas. Keberadaan data lokal tidak selalu membuktikan adanya kerentanan, terutama apabila data tersebut telah dilindungi dengan mekanisme yang sesuai dan tidak dapat diakses oleh pihak yang tidak berwenang.
Dengan demikian, kualitas pentest mobile bergantung pada kemampuan menghubungkan temuan teknis dengan risiko yang benar-benar relevan terhadap penggunaan aplikasi.
Mengamankan Logout Tidak Berarti Semua Data Harus Dihapus
Salah satu kesalahan dalam memahami keamanan penyimpanan mobile adalah menganggap bahwa seluruh data lokal harus dihapus setiap kali pengguna logout.
Pendekatan tersebut tidak selalu tepat.
Beberapa aplikasi memang membutuhkan penyimpanan data untuk mendukung fungsi offline, mempertahankan pengaturan non-sensitif, atau mempercepat proses ketika pengguna kembali menggunakan aplikasi.
Penghapusan seluruh data tanpa mempertimbangkan kebutuhan tersebut dapat mengganggu pengalaman pengguna maupun proses operasional.
Persoalan yang lebih penting adalah menentukan informasi mana yang perlu dihapus, tetap disimpan, dienkripsi, atau dibuat tidak dapat diakses setelah sesi berakhir.
Data sensitif seharusnya dikelola berdasarkan klasifikasi informasi, kebutuhan retensi, dan tingkat risiko.
Untuk informasi tertentu, penghapusan setelah logout merupakan langkah yang sesuai. Pada kondisi lain, perusahaan dapat menerapkan enkripsi dengan pengelolaan kunci yang memastikan data tidak dapat dibuka tanpa autentikasi yang sah.
Android Keystore dan iOS Keychain dapat menjadi bagian dari strategi perlindungan kredensial atau material kriptografi. Namun, keberadaan mekanisme tersebut tidak otomatis menjamin seluruh data aman.
Konfigurasi, kebijakan akses, penggunaan kunci, dan hubungan antara penyimpanan dengan sesi aplikasi tetap perlu diperiksa.
Prinsip yang seharusnya diterapkan adalah memastikan informasi sensitif hanya dapat digunakan oleh pihak yang memiliki otorisasi, termasuk ketika perangkat digunakan bergantian atau aplikasi dibuka kembali setelah logout.
Keamanan Logout Perlu Menjadi Bagian dari Siklus Pengembangan Aplikasi
Kelemahan pengelolaan sesi sering berkaitan dengan keputusan arsitektur dan implementasi aplikasi.
Ketika kebutuhan keamanan hanya berfokus pada proses login, mekanisme pengakhiran sesi berpotensi mendapatkan perhatian yang lebih sedikit.
Padahal, autentikasi dan logout merupakan bagian dari siklus pengelolaan identitas yang saling berkaitan.
Tim pengembang perlu memahami lokasi penyimpanan data sensitif, cara token dikelola, serta perilaku aplikasi ketika sesi berakhir.
Kebutuhan tersebut sebaiknya ditentukan sejak tahap perancangan melalui pendekatan Secure Software Development Life Cycle (Secure SDLC).
Pengujian keamanan juga perlu diintegrasikan dengan proses pengembangan, terutama ketika terdapat perubahan pada sistem autentikasi, penggunaan WebView, mekanisme penyimpanan lokal, atau integrasi API.
Perubahan kecil pada fitur aplikasi dapat memengaruhi pengelolaan data yang sebelumnya telah diuji.
Sebagai contoh, penambahan fitur penyimpanan dokumen offline dapat memperkenalkan lokasi penyimpanan baru yang belum tercakup dalam mekanisme pembersihan data saat logout.
Begitu pula dengan perubahan sistem autentikasi yang dapat memengaruhi cara token diterbitkan, diperbarui, dan dicabut.
Oleh sebab itu, security regression testing menjadi penting untuk memastikan perbaikan dan pembaruan aplikasi tidak membuka kembali kelemahan yang sebelumnya sudah ditangani.
Pentest mobile secara berkala dapat melengkapi proses tersebut dengan mengevaluasi keamanan aplikasi melalui pendekatan pengujian yang terstruktur.
Sesi yang Berakhir Seharusnya Mengakhiri Akses, Bukan Sekadar Menutup Halaman
Tombol logout merupakan fitur yang sederhana dari sudut pandang pengguna. Namun, di balik proses tersebut terdapat pengelolaan data, token autentikasi, penyimpanan lokal, dan komunikasi dengan backend.
Ketika salah satu komponen tidak menangani pengakhiran sesi dengan benar, informasi sensitif berpotensi tetap tersedia meskipun aplikasi telah menampilkan halaman login.
Risiko tersebut menjadi semakin penting pada aplikasi perusahaan yang mengelola data pelanggan, dokumen internal, dan informasi operasional.
Karena itu, keberhasilan logout seharusnya tidak hanya dinilai melalui tampilan aplikasi. Perusahaan juga perlu memastikan bahwa data sensitif tidak dapat diakses secara tidak sah dan sesi autentikasi telah berakhir sesuai kebijakan keamanan.
Pentest mobile membantu memvalidasi kondisi tersebut dengan memeriksa apa yang terjadi pada data dan hak akses setelah pengguna meninggalkan sesi.
Dengan pendekatan ini, pengujian keamanan tidak hanya memastikan aplikasi dapat digunakan sebagaimana dirancang, tetapi juga membantu memastikan mekanisme perlindungan tetap bekerja ketika pengguna berhenti menggunakannya.
Evaluasi Keamanan Aplikasi Mobile Bersama Fourtrezz
Aplikasi mobile yang terlihat berfungsi dengan baik belum tentu memiliki mekanisme pengelolaan sesi dan penyimpanan data yang aman.
Fourtrezz, bagian dari PT Tiga Pilar Keamanan, menyediakan layanan Vulnerability Assessment dan Penetration Testing untuk membantu perusahaan mengidentifikasi, mengevaluasi, dan memahami risiko keamanan pada sistem digital.
Melalui layanan Mobile Application Penetration Testing, Fourtrezz membantu perusahaan melakukan evaluasi keamanan aplikasi Android dan iOS, termasuk aspek autentikasi, pengelolaan sesi, penyimpanan data, komunikasi API, serta kontrol keamanan lainnya sesuai ruang lingkup pengujian.
Hasil pemeriksaan dapat menjadi dasar bagi tim pengembang dan pengelola sistem dalam menentukan prioritas perbaikan, memperkuat perlindungan data, dan meningkatkan keamanan aplikasi.
Bagi perusahaan yang ingin mengevaluasi keamanan aplikasi mobile sebelum diluncurkan maupun setelah digunakan secara operasional, Fourtrezz terbuka untuk diskusi dan kerja sama sesuai kebutuhan pengujian.
Hubungi Fourtrezz:
Website: www.fourtrezz.co.id
Telepon/WhatsApp: +62 857-7771-7243
Email: [email protected]
Andhika RDigital Marketing at Fourtrezz
Artikel Terpopuler
Tags: Pentest Mobile, Mobile Security, Sensitive Data, Session Management, Secure Logout
Baca SelengkapnyaBerlangganan Newsletter FOURTREZZ
Jadilah yang pertama tahu mengenai artikel baru, produk, event, dan promosi.


