Langsung ke konten utama

Unggulan

Mendeteksi Gambar Duplikat dengan Python: Panduan Praktis

Panduan OverTheWire Bandit Level 20 → 21

 

Panduan OverTheWire Bandit Level 20 → 21

Login

Gunakan perintah berikut untuk masuk:

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

Kata Sandi: GbKksEFF4yrVs6il55v6gwY5aVje5f0j


Tugas

Ada binary setuid di direktori rumah yang melakukan hal berikut: ia membuat koneksi ke localhost pada port yang Anda tentukan sebagai argumen baris perintah. Kemudian, binary ini membaca satu baris teks dari koneksi dan membandingkannya dengan kata sandi di level sebelumnya (bandit20). Jika kata sandi benar, ia akan mengirimkan kata sandi untuk level berikutnya (bandit21).


Teori Singkat

Netcat (atau nc) diperkenalkan di level 15. Untuk membuat server di localhost, Anda perlu menggunakan flag -l (untuk mendengarkan) dan flag -p untuk menentukan port. Untuk membuat server yang hanya mengirimkan satu pesan dan kemudian terputus, Anda bisa menggunakan pipe (|) dan echo untuk memasukkan pesan.

Jika Anda ingin menjalankan perintah tanpa berinteraksi dan tetap menggunakan terminal untuk perintah lain, Anda bisa menggunakan & untuk menjalankan perintah di latar belakang. Ini adalah bagian dari manajemen proses di Linux.


Solusi

Untuk menjalankan solusi, kita akan menggunakan netcat untuk membuat koneksi dalam mode server yang mendengarkan pada port yang kita tentukan. Kemudian, kita akan menggunakan echo untuk mengirimkan kata sandi dan menghubungkannya dengan netcat. Flag -n digunakan untuk mencegah karakter baris baru dalam input. Terakhir, kita menjalankan proses ini di latar belakang menggunakan &.

  1. Jalankan netcat dengan port 1234 dan kirimkan kata sandi level sebelumnya (GbKksEFF4yrVs6il55v6gwY5aVje5f0j) melalui pipe:

    echo -n 'GbKksEFF4yrVs6il55v6gwY5aVje5f0j' | nc -l -p 1234 &
    
  2. Jalankan binary suconnect dengan port 1234 untuk menghubungkannya ke server netcat:

    ./suconnect 1234
    
  3. Jika kata sandi yang dimasukkan benar, Anda akan mendapatkan kata sandi level berikutnya:

    Read: GbKksEFF4yrVs6il55v6gwY5aVje5f0j
    Password matches, sending next password
    gE269g2h3mw3pwgrj0Ha9Uoqen1c9DGr
    


Komentar

Postingan Populer