Sesi Manajemen
Salah satu komponen inti dari setiap aplikasi
berbasis web atau API stateful adalah mekanisme yang mengontrol dan
memelihara status pengguna atau perangkat yang berinteraksi dengannya.
Manajemen sesi mengubah protokol stateless menjadi stateful, yang sangat
penting untuk membedakan pengguna atau perangkat yang berbeda.
Pastikan aplikasi terverifikasi memenuhi persyaratan manajemen sesi tingkat tinggi seperti berikut:
Sesi bersifat unik untuk setiap individu dan tidak dapat ditebak atau dibagikan
Sesi menjadi tidak valid jika tidak diperlukan lagi dan habis waktunya selama periode tidak aktif.
Testing session management
Testing 1:
1. login di browser A
2. login di browser B dengan akun yang sama pada browser B
3. lalu coba log out dari akun yang berada pada browser A, apakah pada browser B juga ikut logout. Jika tidak maka terdapat celah session management, wlau begitu untuk testing kali ini terkadang ada aplikasi yang memberikan ijin dengan cara seperti ini sebagian program tidak menganggap kerentanan tingkat tingggi.
Testing 2:
1. daftarkan akun di browser dan login dengan akun yang telah terdaftar.
2. coba hapus akun setelah login.
3. coba masukkan kembali apakah akun yang telah di hapus dapat kembali digunakan. cara ini juga termasuk dalam bussenis logic. Jika masih dapat masuk maka aplikasi gagal dalam menangani session
Testing 3:
1. Login ke akun dengan browser A
2. Copy cookie yang terdapat pada browser A dengan menggunakan tools addos cookie, atau tools lainnya
3. logout pada browser A
4. coba masukkan ke browser B dengan cookie yang di salin dari browser A.
5 Jika berhasil masuk kedalam akun hanya menggunakan cookie yang disalin tanpa memasukkan nama user dan kata sandi untuk kredensial maka dapat dipastikan ada kerusakan sessi managment.
Testing 4:
1. Masuk sebagai Pengguna A
2. Inpercept salah satu request yang diautentikasi dan kirim ke burpsuite
3. Ubah kata sandi dengan pengaturan ulang kata sandi atau fungsi lainnya
4. Kirim lagi permintaan yang dicegat di Burp Repeater dan amati sesi tersebut tidak divalidasi.
Testing 5:
1. Login dengan nama pengguna Anda dan biarkan tab browser terbuka dalam waktu lama.
2. Perhatikan bahwa sesi tidak dihentikan
Pada Pembahasan kali ini cukup sedikit saja yang dapat saya jelaskan namun semoga dapat dimengerti dengan praktik yang sederhana. tentang session management yang memiliki kerentanan
Referensi:
https://www.cobalt.io/vulnerability-wiki/v3-session-management/
https://cheatsheetseries.owasp.org/cheatsheets/Session_Management_Cheat_Sheet.html
Share this :
0 Komentar
Penulisan markup di komentar