NMAP je silný nástroj, který překročil stín běžného síťového skeneru a jeho funkcionality se běžně používají při bezpečnostních auditech. V dnešním příspěvku se budeme věnovat volbám, které nesouvisí s vlastním skenováním, ale mohou se vám v praxi hodit.

Interaktivní příkazy

Jistě jste si všimli, že NMAP během skenu při stisku některých kláves, např. enter, vypisuje statistiky o stavu skenu.

Stiskneme-li během skenu otazník (?), dostaneme nápovědu o interaktivních příkazech, které ovlivňují další výpisy.

Například stiskem klávesy „p“ se aktivuje volba sledování paketů (packet trace). NMAP následně začne vypisovat informace o vyslaných a přijmutých paketech. Chceme-li tento výpis deaktivovat, stiskneme velké „P“.

Obdobně fungují interaktivní příkazy pro debugging a upovídanost výpisů (d/D a v/V).

Ohodnocení stavů portů

Stav portu je ohodnocení z pohledu nástroje NMAP a to na základě analýzy odpovědí zaslaných paketů na port. Někdy nemusí být jasné, jak NMAP k určitému ohodnocení stavu portu došel. Pro tyto případy se nám bude hodit volba  --reason, která do výsledků skenu zařadí nový popisný sloupec REASON.

Příklad – ohodnocení stavu portů

Z výpisu vidíme, že NMAP na základě zachycené odpovědí TCP SYN/ACK došel k závěru, že TCP porty 80 a 443 jsou otevřené.

Přerušený sken

Přerušení skenu je nepříjemná věc, zvláště pokud jsme skenovali několik hodin či dní. NMAP umožňuje pokračovat v přerušeném skenu pomocí volby --resume, ale tato funkce nefunguje tak, jak byste očekávali.

Máte šanci jen v případě, že jste zapnuli logování výstupu ve standardním textovém (.nmap) nebo grep  (.gnmap) formátu a doběhl alespoň sken jednoho stroje. Jinak řečeno, NMAP si na základě textového výstupu neporadí s rozdělaným skenem pro jeden stroj a opakuje jej znovu.

V situaci, kdy skenujeme dlouho jeden stroj UDP skenem, je nám tato funkcionalita k ničemu. Naopak skenujeme-li celou síť, pak tato možnost přijde vhod. Navazující sken pak přirozeně pokračuje a doplňuje zápisy v daném výstupním souboru.

Příklad – Přerušený sken

Ukážeme si toto chování na příkladě skenu segmentu sítě, kde doběhl sken pro jeden stroj. Následně jsme sken přerušili. Všiměte si, že přidáváme také volbu -oA pro zápis výsledků ve všech základních výstupních formátech. Jednotlivé soubory pak budou mít prefix „aborted-scan“.

V pracovním adresáři nalezneme pozůstatky aktivity skeneru.

Nyní se pokusíme navázat na přerušený sken pomocí volby --resume , hodnotou tohoto parametru je cesta k výstupnímu souboru přerušeného skenu „aborted-scan.nmap“.

Pokud by se nám nepodařilo na předchozí sken navázat, uvidíme následující hlášení.

Závěr

V příspěvku jsme prošli nepříliš známé funkce nástroje NMAP: interaktivní příkazy, volbu „reason“ vysvětlující ohodnocení stavu portů a volbu „resume“ pro pokračování přerušeného skenu. Z posledního příkladu je také vidět, že logování výstupů skeneru se vyplatí a má smysl generovat základní výstupní formáty. Nikdy nevíte, jak budete chtít s výstupy pracovat.

Pokud Vás láká představa vyzkoušet si nástroj NMAP u nás v labech na hacking kurzech.