Nmap
Úvod a kontext
nmap je v HTB rozborech skoro všude, ale jeho hodnota neleží v tom, že “najde otevřené porty”. Prakticky důležitý je proto, že velmi rychle odpoví na tři otázky:
- jaký typ hostu mám před sebou,
- která služba pravděpodobně rozhodne celý řetězec,
- a kam už naopak nemá smysl investovat čas.
Na tomhle blogu je dobře vidět, že nmap není jen první povinný krok. Často je to nástroj, který celý další postup zjednoduší už během prvních minut. Na Forestu nebo Monteverde rovnou ukáže doménový kontroler. Na Grandpovi, Legacy nebo Lame zase silně naznačí, že nepůjde o dlouhou kreativní analýzu, ale o správnou interpretaci starých bannerů. Prakticky související kontext rozebírám i v článku Legacy infrastruktura, kde banner prakticky rozhodne exploit.
Co je na nmapu prakticky nejdůležitější
nmap je především rozhodovací filtr. V běžné praxi se hodí oddělit tři vrstvy práce:
1. Hrubý přehled portů
Nejdřív dává smysl zjistit, co je vůbec otevřené. Na blogu se opakovaně používá dvoufázový postup: nejdřív full scan portů a teprve potom cílené ověření nalezených služeb.
ports=$(nmap -p- --min-rate=1000 -T4 $IP | grep ^[0-9] | cut -d "/" -f 1 | tr "\n" "," | sed s/,$//)
nmap -p $ports -A -sC -sV -v $IP
Tenhle pattern se vrací napříč desítkami rozborů proto, že šetří čas i pozornost. Místo hádání, jestli host nemá ještě nějaký důležitý netypický port, je nejdřív vidět celý povrch a teprve potom se řeší detaily.
2. Určení role hostu
Nejdůležitější hodnota nmapu často neleží v jedné konkrétní službě, ale v kombinaci několika portů.
Na Forestu, Intelligence, Monteverde nebo Resolute kombinace:
88/tcp,389/tcp,445/tcp,5985/tcp
prakticky okamžitě říká, že nejde o obyčejný windowsový server, ale o prostředí, kde dává smysl myslet na Kerberos, LDAP, doménové účty a WinRM. To je zásadní rozdíl proti situaci, kdy by člověk ztrácel čas hledáním webového exploitu tam, kde web ani není hlavní útoková plocha.
3. Vytvoření pracovní hypotézy
Na starších nebo výrazně špatně udržovaných hostech umí nmap zúžit prostor velmi agresivně.
Na Grandpovi kombinace Microsoft-IIS/6.0 a povolených WebDAV metod prakticky sama navádí k WebDAV exploitu. Na Legacy je zase Windows XP + SMB téměř diagnóza historického problému. Na Lame Samba 3.0.20 ukazuje výhodnější směr než ostatní otevřené služby. Tohle je přesně bod, kdy nmap přestává být jen inventura a stává se analytickým nástrojem.
Nejčastější scénáře využití v tomto projektu
Rozpoznání infrastruktury a typu cíle
Na AD strojích nmap typicky rozhoduje o tom, zda má další práce směřovat na:
- kandidátní uživatele,
- SMB a RPC,
- Kerberos,
- WinRM,
- nebo delegovaná oprávnění v doméně.
To je dobře vidět na Forestu, Sauně a Intelligence. Všechny tři případy by šlo číst jako “otevřený web a nějaké další porty”, ale teprve nmap dá jejich kombinaci význam.
Hledání netypické, ale rozhodující služby
Někdy nejde o roli hostu, ale o to, že jeden neobvyklý port změní celý řetězec.
Na Fatty je vedle anonymního FTP vidět trojice TLS portů 1337 až 1339, což okamžitě naznačuje vlastní aplikační protokol. Na Nestu zaujme vedle SMB služba Reporting Service V1.2 na 4386/tcp. Na Luanne je důležité, že kromě webu na 80 existuje ještě další HTTP služba na 9001/tcp. Tady nmap neposkytne rovnou exploit, ale vyznačí místo, kde je největší návratnost další analýzy.
Čtení vedlejších indicií, ne jen seznamu portů
Prakticky cenné nejsou jen porty a bannery. Často pomohou i detaily kolem služby.
Na Laboratory je zásadní informace v TLS certifikátu a jeho SAN, který prozradí git.laboratory.htb. Na ForwardSlash nebo Forestu je důležité spíš to, co kombinace služeb znamená, než jeden konkrétní exploit. nmap tak často dává první vodítko k:
- novému hostname,
- interní roli hostu,
- očekávanému typu autentizace,
- nebo k tomu, že je potřeba přepnout z webové enumerace na síťovou.
Druhý, cílenější scan
Jakmile je jasné, kam mířit, dává smysl druhý scan zúžit.
Někde jde o -sC -sV, jinde o UDP scan jako na Shibboleth, jinde o konkrétní NSE skripty. Prakticky ale platí jednoduché pravidlo: cílený druhý scan má smysl až tehdy, když už existuje hypotéza, co vlastně ověřuje.
Co nmap neumí vyřešit za vás
nmap sám o sobě neříká, která cesta je skutečně nejlepší. Jen zlevňuje výběr.
Typické chyby vypadají takto:
- čtení banneru bez kontextu, jako by šlo o definitivní pravdu,
- automatické pouštění
vulnskriptů na vše, co odpoví, - ignorování netypických portů jen proto, že na nich neběží HTTP,
- mechanické přepínání na exploit bez ověření, co banner skutečně znamená.
Na moderních systémech je navíc potřeba počítat s tím, že verze služby nemusí přímo odpovídat stavu záplat. Naopak u starých strojů, jako jsou Grandpa, Legacy nebo Lame, může být kombinace technologie a chování služby skoro dostatečná sama o sobě.
Nejčastější praktické scénáře
Kdy je nmap nejlepší první volba
- když ještě není jasné, zda řeším web, AD, storage nebo vlastní službu,
- když potřebuji poznat roli hostu před volbou dalšího toolingu,
- když hledám netypický port, druhou HTTP službu nebo vhost indikaci,
- když potřebuji zkrátit prostor pro další enumeraci.
Kdy naopak nestačí
- když už je hlavní problém uvnitř aplikace a síťová stopa je známá,
- když rozhoduje autentizace, business logika nebo obsah dat,
- když host používá interní routování a skutečné služby jsou skryté za reverzní proxy nebo tunelem.
Právě v tom je jeho praktická role: nmap málokdy uzavírá útok, ale velmi často rozhodne, která další práce bude dávat smysl.
Související články v projektu
- Rozbory: Forest, Grandpa, Legacy, Lame, Laboratory, Nest, Fatty, Luanne
- Techniky: Legacy infrastruktura, kde banner prakticky rozhodne exploit, IPv6 jako opomíjená attack surface, Kerberos útoky z nulového přístupu
Co si odnést do praxe
nmapmá největší hodnotu tehdy, když z výstupu nečtete jen porty, ale roli hostu a pravděpodobné směry útoku.- Dvoufázový scan je v praxi použitelnější než jeden přetížený příkaz nad celým rozsahem portů.
- Nejdůležitější není počet přepínačů, ale schopnost rozhodnout, co z nalezených služeb skutečně stojí za další čas.
Další Související Články V Projektu
HTB Stroje
Techniky
- Konfigurace síťových zařízení jako zdroj reuse hesel
- Síťová topologie jako leak: WPAD, Squid, FXP a interní mapování
- IPv6 jako opomíjená attack surface