Langsung ke konten utama

Unggulan

Mendeteksi Gambar Duplikat dengan Python: Panduan Praktis

Panduan OverTheWire Bandit Level 19 → 20

Panduan OverTheWire Bandit Level 19 → 20

Login

Gunakan perintah berikut untuk masuk:

ssh bandit19@bandit.labs.overthewire.org -p 2220

Kata Sandi: IueksS7Ubh8G3DCwVzrTd8rAVOwq3M5x


Tugas

Untuk mengakses level berikutnya, Anda harus menggunakan binary setuid di direktori rumah. Jalankan binary tersebut tanpa argumen untuk mengetahui cara menggunakannya. Kata sandi untuk level ini dapat ditemukan di tempat biasa (/etc/bandit_pass), setelah Anda menggunakan binary setuid tersebut.


Teori Singkat

Izin di Linux adalah topik yang cukup luas. Setiap file memiliki pemilik dan grup yang memiliki file tersebut. Izin dapat disetel terpisah untuk pengguna, grup, dan pengguna lainnya, termasuk apakah file tersebut dapat dibaca, ditulis, atau dieksekusi.

Suid adalah izin khusus yang menggantikan x pada izin pengguna. Artinya, binary akan dijalankan sebagai pemilik binary, bukan pengguna yang mengeksekusinya. Untuk memberikan izin suid pada binary, Anda bisa menggunakan perintah:

chmod u+s <nama_file>

Solusi

Pertama, kita periksa siapa pemilik dari binary setuid tersebut:

bandit19@bandit:~$ ls -la

Hasilnya menunjukkan bahwa pemilik binary bandit20-do adalah pengguna bandit20, dan grupnya adalah bandit19. Izin -rwsr-x--- menunjukkan bahwa pengguna bandit19 dapat mengeksekusi binary, tetapi binary tersebut akan dijalankan sebagai pengguna bandit20.

  1. Jalankan binary bandit20-do untuk melihat fungsinya:

    bandit19@bandit:~$ ./bandit20-do
    Run a command as another user.
    Example: ./bandit20-do id
    
  2. Menjalankan perintah ls untuk melihat file /etc/bandit_pass:

    bandit19@bandit:~$ ./bandit20-do ls /etc/bandit_pass
    
  3. Membaca file kata sandi untuk bandit20:

    bandit19@bandit:~$ ./bandit20-do cat /etc/bandit_pass/bandit20
    

    Hasilnya adalah kata sandi level berikutnya:

    GbKksEFF4yrVs6il55v6gwY5aVje5f0j
    

Komentar

Postingan Populer