HackTheBox - Escape - Writeup

  • Konbuyu başlatan Konbuyu başlatan mao7un
  • Başlangıç tarihi Başlangıç tarihi

mao7un

VM Creator
Moderatör
Katılım
22 Ocak 2024
Mesajlar
26
Tepkime puanı
40
Puanları
13
Herkese merhaba. Bu yazımda, HackTheBox platformunda emekliye ayrılmış Active Directory makinesi olan Escape'i anlatacağım. İyi okumalar.

Nmap taramasıyla başlıyorum
1.png


LDAP servisini numaralandırmak için ilk olarak o kadar kapsamlı bir numaralandırma işlemine gerek duymuyorum. Bu nedenle bir Nmap script'i kullanacağım.

$ nmap -sV --script "ldap* and not brute" 10.10.11.202


Buradan sadece domain adresini buluyorum: "sequel.htb". Kullanıcılar için ayrı bir numaralandırma yapmıyorum.

şimdi SMB numaralandırıyorum

2.png


Public adındaki paylaşım dikkatimi çekiyor. Buraya anonymous olarak bağlanmaya çalışıyorum.

Paylaşıma başarıyla bağlandım ve burada bir PDF dosyası olduğunu fark ettim. Şimdi bu dosyayı lokal makineme indiriyorum.

3.png


Dosyayi açtığımda bir kullanıcı adı ve şifre buluyorum.

4.png


Bu bulduğum bilgiler ile MSSQL server'a giriş yapıyorum.

5.png


Burada xp_cmdshell'i etkinleştirmeye çalışıyorum, ancak buna yetkim olmadığını görüyorum. Bunun yanı sıra, diğer önemli bir komut olan xp_dirtree komutunu kullanıyorum, ancak hedef makinede herhangi bir dizini listeleyemiyorum. Son olarak, lokal makinemde bir SMB Server kurarak bu paylaşımı MSSQL servisteki xp_dirtree komutu aracılığıyla listelemeyi deniyorum. Amacım SQL servisini yöneten kullanıcının hash'ini almak.

6.png


7.png


ve bu komut sonrasında sql_svc kullanıcısının hashini almayı başarıyorum.

8.png


John ile bulduğum hash'i kırıyorum ve sql_svc kullanıcısının şifresini buluyorum.

9.png


Evil-WinRM ile giriş yaptıktan sonra C: dizini altında SQLServer adında bir klasör görüyorum. Burada bir log buluyorum ve o logu okuduğumda Ryan.Cooper adlı kullanıcısına ait olabilecek bir şifre buluyorum.

10.png


evil-winrm aracıyla Ryan.Cooper olarak giriş yapıyorum

Sistemi BloodHound ile numaralandırdığımda herhangi bir şey dikkatimi çekmiyor ve sertifikaları enumerate ediyorum. Burada certipy-ad aracını kullanacağım

11.png


Burada bir sertifika şablonunun (UserAuthentication şablonu) yanlış yapılandırılması sonucu (5 değer sağlanıyorsa), template'i sömürüp administrator sertifikası isteyebiliyorduk. Bu yanlış yapılandırmalar yeşil renk ile belirtilmiştir. İzinlere baktığımızda, bu şablonu "Domain Admins", "Domain Users", "Enterprise Admins" gruplarına ait olan kullanıcılar kullanabiliyor. Ryan.Cooper kullanıcısı "Domain Users" grubunun bir üyesi olduğu için bu sertifika ile administrator sertifikasına istekte bulunabiliriz.

12.png


Aşağıdaki komut ile administrator sertifikasını alabiliyoruz.

13.png


Şimdi bu kısımdan sonra bir çok seçeneğimiz var Manager makinesinin çözümünde ESC7 açığını sömürdükten sonra direkt olarak aldığımız administrator sertifikası ile birlikte server'a login olup administrator hashini yakalamıştık. Authority makinesinde ise bu konudaki gibi bir Template'in yanlış yapılandırılması sonucu administrator sertifikasını almıştık ve aldıktan sonra bir ldap-shell ile kullanıcımızı administrator grubuna taşımıştık burada ise ben farklı bir çözüm olsun diye Pass The Certificate metodunu kullanacağım ( diğer 2 yöntem de çalışıyor hangisini yapmak isterseniz)

ilk olarak passthecert toolunu indiriyorum.

bu işlemde ilk olarak pfx dosyasini ayrıştırıp bir key ve bir crt dosyasi oluşturuyoruz

14.png


Bu dosyaları oluşturduktan sonra artık administrator kullanıcısının şifresini değiştirebilirim.

15.png


administrator kullanıcısının şifresini "Hacked_by_mao7un" olarak değiştiriyorum ve bu bilgileri kullanarak evil-winrm aracılığıyla sisteme giriş yapacağım

user flag ve root flag'i alıp makineyi kapatıyorum.

16.png


Buraya kadar okuduğunuz için teşekkür ederim.
 
Geri
Üst