Langsung ke konten utama

Unggulan

Mendeteksi Gambar Duplikat dengan Python: Panduan Praktis

Panduan Lengkap OverTheWire Bandit Level 12 → 13



Panduan OverTheWire Bandit Level 12 -> 13

Login:

  • SSH Command: ssh bandit12@bandit.labs.overthewire.org -p 2220
  • Password: 5Te8Y4drgCRfCx8ugdwuEX8KFC6k2EUu

Tugas

Password untuk level selanjutnya tersimpan di file data.txt, yang merupakan hexdump dari file yang telah dikompresi berulang kali. Dalam level ini, sangat disarankan untuk membuat direktori di /tmp menggunakan perintah mkdir untuk bekerja lebih mudah.


Teori

  1. Pembuatan Direktori
    Gunakan perintah mkdir <path> untuk membuat direktori baru.

    • cp <sumber> <tujuan>: Menyalin file.
    • mv <sumber> <tujuan>: Memindahkan atau mengganti nama file.
  2. Hexdump
    Hexdump digunakan untuk melihat data yang tidak dapat direpresentasikan dalam format teks.

    • Kolom hexdump:
      • Kolom 1: Alamat data.
      • Kolom 2: Representasi data dalam format hex.
      • Kolom 3: Data aktual dalam bentuk string (jika bisa direpresentasikan).
    • Gunakan xxd untuk membuat atau mengembalikan hexdump.
      • Contoh: xxd <input_file> atau xxd -r <input_file>.
  3. Tanda Tangan File
    Tanda tangan file dapat digunakan untuk mengidentifikasi tipe file. Misalnya:

    • gzip: 1F 8B 08
    • bzip2: 42 5A
    • Gunakan perintah file untuk membantu mengenali jenis file.
  4. Kompresi & Ekstraksi File

    • gzip: gzip untuk mengompresi, gzip -d untuk mendekompresi.
    • bzip2: bzip2 untuk mengompresi, bzip2 -d untuk mendekompresi.
    • tar:
      • Membuat arsip: tar -cf.
      • Mengekstrak arsip: tar -xf.

Solusi

1. Membuat Direktori dan Menyalin File

Langkah pertama adalah membuat direktori sementara dan menyalin file data.txt ke dalam direktori tersebut untuk bekerja lebih nyaman.

bandit12@bandit:~$ cd /tmp
bandit12@bandit:/tmp$ mktemp -d
/tmp/tmp.W5t1vua6G9
bandit12@bandit:/tmp/tmp.W5t1vua6G9$ cp ~/data.txt .
bandit12@bandit:/tmp/tmp.W5t1vua6G9$ mv data.txt hexdump_data
bandit12@bandit:/tmp/tmp.W5t1vua6G9$ ls
hexdump_data

2. Mengembalikan Hexdump ke File Asli

Hexdump harus dikembalikan ke bentuk data asli menggunakan xxd -r.

bandit12@bandit:/tmp/tmp.W5t1vua6G9$ xxd -r hexdump_data compressed_data
bandit12@bandit:/tmp/tmp.W5t1vua6G9$ ls
compressed_data  hexdump_data

3. Mendekompresi File Secara Berulang

File hasil dekompresi memiliki tanda tangan file yang berbeda, sehingga kita harus mengidentifikasi jenis file dan mendekompresinya satu per satu.


a. gzip

File diawali dengan tanda tangan 1F 8B 08 (gzip).

bandit12@bandit:/tmp/tmp.W5t1vua6G9$ mv compressed_data compressed_data.gz
bandit12@bandit:/tmp/tmp.W5t1vua6G9$ gzip -d compressed_data.gz

b. bzip2

File berikutnya memiliki tanda tangan 42 5A (bzip2).

bandit12@bandit:/tmp/tmp.W5t1vua6G9$ mv compressed_data compressed_data.bz2
bandit12@bandit:/tmp/tmp.W5t1vua6G9$ bzip2 -d compressed_data.bz2

c. gzip Lagi

Ulangi langkah sebelumnya karena file kembali memiliki tanda tangan 1F 8B 08.

bandit12@bandit:/tmp/tmp.W5t1vua6G9$ mv compressed_data compressed_data.gz
bandit12@bandit:/tmp/tmp.W5t1vua6G9$ gzip -d compressed_data.gz

d. Ekstraksi Tar

Data yang muncul mengindikasikan file tersebut adalah arsip .tar.

bandit12@bandit:/tmp/tmp.W5t1vua6G9$ mv compressed_data compressed_data.tar
bandit12@bandit:/tmp/tmp.W5t1vua6G9$ tar -xf compressed_data.tar

e. Ulangi Hingga Selesai

Lakukan langkah serupa pada file hasil ekstraksi:

  1. Ekstrak file data5.bin.
  2. Dekompres file data6.bin (bzip2).
  3. Ekstrak file data6.bin.out.
  4. Dekompres file data8.bin (gzip).

4. Mendapatkan Password

Setelah semua langkah selesai, kita dapat membaca isi file terakhir untuk mendapatkan password:

bandit12@bandit:/tmp/tmp.W5t1vua6G9$ cat data8
The password is 8ZjyCRiBWFYkneahHwxCv3wb2a1ORpYL

Kesimpulan

Password untuk level berikutnya adalah:
8ZjyCRiBWFYkneahHwxCv3wb2a1ORpYL

Komentar

Postingan Populer