PC
Writeup mesin Hack The Box PC

Reconnaissance
Reconnaissance (pencarian informasi) dalam pentesting adalah langkah awal yang dilakukan oleh seorang pentester untuk mengumpulkan informasi dan memahami lebih lanjut tentang target yang akan diserang. Tujuan utama dari tahap reconnaissance adalah memperoleh pemahaman yang komprehensif tentang sistem, aplikasi, infrastruktur, dan entitas terkait yang akan dievaluasi dalam penilaian keamanan.
Initial Port Scanning
Output
Dari initial port scan tidak ada port atau service yang dapat kita eksploitasi. Kita cuma lakukan full port scanning.
Full Port Scanning
Output:
Kita coba scan ulang di port 50051.
Output:
Jujur saja saya masih belum memiliki gambaran mengenai service apa yang berjalan di port 50051 ini.
Namun berdasarkan dua referensi berikut, ada indikasi bahwa service gRPC berjalan pada port ini.
Referensi:
Selanjutnya yang saya butuhkan adalah gRPC client. Saya sendiri akhirnya menggunakan grpcui untuk berinteraksi dengan port 50051 ini.
Referensi:
Exploitation
Jalankan grpcui untuk terhubung dengan port 50051.
Maka gRPC client dapat diakses melalui browser.

Jangan lupa untuk menghubungkan browser dengan Burp Suite agar kita lebih mudah untuk menganalisa request serta respose dari aplikasi.
Disini saya coba untuk login menggunakan default credential admin:admin ternyata berhasil.

Token yang didapat bisa digunakan untuk mengakses endpoint /invoke/SimpleApp.getInfo.

Namun karena tidak ada informasi menarik, saya langsung lempar requestnya ke sqlmap.
File sqli.req
SQL Injection


Initial Access
Dari kredensial yang didapat melalui SQL Injection, karena tidak ada service lain yang bisa dicoba, kita langsung bisa coba gunakan kredensial tersebut untuk mengakses SSH.

Post Exploitation
Untuk mendapatkan akses root, saya mencoba enumerasi service dan juga kemungkinan kesalahan konfigurasi menggunakan LinPEAS. Namun beberapa PE Vector yang terdeteksi tidak berhasil dieksploitasi.

Selanjutnya kita coba inspeksi manual. Pertama, kita jalankan perintah netstat untuk melihat service yang mungkin berjalan di internal.

Sekarang kita coba ekspos service yang berjalan di port 8000 tersebut. Kita bisa gunakan tool chisel.
Dari mesin attacker jalankan perintah
Sementara dari sisi server target, jalankan perintah:
Sekarang, service tersebut dapat kita akses dari port 8001 di mesin kita.

Dari hasil searching, ditemukan exploit untuk pyLoad yakni CVE-2023-0297.
Pertama, langsung saya coba PoC yang terdapat halaman huntr.
Ternyata berhasil. Pada direktori /tmp di server terdapat file pwnd. Menariknya, file tersebut dimiliki oleh user root.

Kita bisa gunakan kerentanan ini untuk mendapatkan akses root. Caranya, kita buat file terlebih dahulu di direktori /tmp.
File root-pwn.sh
Beri hak akses eksekusi pada file tersebut:
Lalu ubah payloadnya agar mengeksekusi script tersebut.
Final requests:
Sekarang kita login ssh ke user root menggunakan key yang sudah kita tanam.

Oke sekian sharing kali ini, semoga bermanfaat.
Last updated
Was this helpful?