
Kazdy bezpecnostny nastroj je len tak uzitocny, ako uzitocny je vytvarany vystup.
Zlozite testy a algoritmy maju malu hodnotu, ak nie su prezentovane v organizovanej a zrozumitelnej forme.
Pri pohlade na pocet sposobov, akymi je Nmap pouzivany ludmi a dalsim softwarom, neexistuje jednotlivy
format, ktory by vyhovoval kazdemu, takze preto Nmap ponuka niekolko formatov vratane interaktivneho modu citatelneho
pre ludi a XML formatu lahko spracovavaneho softwarom.
Okrem ponukania rozlicnych vystupnych formatov poskytuje Nmap parametre na ovladanie miery mnozstva vystupu
tak ako aj debugovacie spravy. Vystupne typy mozu byt odoslane na standardny vystup alebo do nazvaneho suboru,
do ktoreho moze Nmap data pripojit k existujucim alebo premazat subor a vlozit data.
Vystupne subory mozu byt tiez pouzite na pokracovanie zachytavania vystupu z prerusenych scanov. Nmap ponuka vystup v piatich moznych formatoch. Predvolenym je
interactive output a je odosielany na standardny vystup (stdout).
Existuje aj normal output podobny interactive s tou vynimkou,
ze zobrazuje menej runtimeovych informacii a upozorneni pri behu Nmapu, pretoze sa od neho ocakava, ze
bude analyzovany az po skonceni scanu a nie interaktivne. Vystup vo formate je jednym z najdolezitejsich vystupnych typov a moze byt konvertovany na HTML format,
lahko rozobraty dalsimi programami napr. grafickymi rozhraniami Nmapu, alebo importovany do databaz. Dva zostavajuce typy vystupov su jednoduchy grepable
output obsahujuci vacsinu informacii o cielovej stanici na jednom riadku
, asCRiPt KiDDi3 0utPUt pre pouzivatelov povazujucich sa za
|<-r4d. Zatial co interaktivny vystup je predvoleny a nema ziadne
suvisiace parametre prikazoveho riadku, dalsie styri formaty maju tu istu syntax.
Pouzivaju jeden argument, ktorym nazov vystupneho suboru. Mozu byt zadane aj viacere formaty, ale vzdy len raz.
Ak napriklad chcete ulozit normalny vystup pre seba a zaroven ho ulozit do XML formatu kvoli analyze programu,
mozete pouzit parametre
-oX myscan.xml -oN myscan.nmap. Tato kapitola sice pouziva kvoli strucnosti
jednoduche nazvy suborov ako myscan.xml, ale odporuca sa pouzit popisnejsie
nazvy. Zvolene nazvy su otazkou osobnych preferencii, hoci ja pouzivam dlhe nazvy zahrnujuce datum scanu a par slov
opisujucich scan, ktory je umiestneny v adresari podla scanovej spolocnosti. Kym tieto parametre ukladaju vysledky do suborov, Nmap stale zobrazuje
interaktivny vystup na stdout ako obycajne. Napriklad prikaz
nmap -oX myscan.xml target zobrazi XML vystup do suboru
myscan.xml a standardny vystup zobrazi presne tie iste interaktivne vysledky, ako keby
parameter -oX nebol vobec specifikovany. Zmenit to mozete zadanim spojovnika ako argumentu
pre jeden z typov formatov, co sposobi, ze Nmap deaktivuje interaktivny vystup a namiesto toho posle vysledky len
do zadaneho formatu, cize prikaz nmap -oX - target odosle do stdout len vystup v XML.
Vazne chyby mozu byt stale zobrazovane do normalneho chyboveho streamu s nazvom stderr. Na rozdiel od niektorych argumentov Nmapu, medzera medzi parametrom logovacieho suboru
(napr. -oX) a nazvom suboru alebo spojovnikom je povinna.
Ak vynechate flagy a zadate argumenty ako napr.
-oG- alebo -oXscan.xml funkcia spatnej kompatibility Nmapu sposobi, ze
sa vytvori vystupnych suborov v
normal format s nazvom
G-, resp. Xscan.xml
. Nmap takisto ponuka parametre na ovladanie mnozstva vystupu scanu a ci sa maju vystupne subory prepisat alebo
sa ma pokracovat v pripajani dat. Vsetky tieto parametre su opisane nizsie.
Vystupne formaty Nmapu -
-oN <filespec> (Normalny vystup) Sposobi, zenormal output sa presmeruje do suboru so zadanym nazvom.
Ako bolo rozobrate vyssie, tento vystup sa mierne lisi od interaktivneho -
interactive output. -
-oX <filespec> (XML vystup) Sposobi, ze XML output sa presmeruje do suboru
so zadanym nazvom. Nmap zahrna definiciu typu dokumentu (DTD), co umoznuje XML parserom vytvarat
korektny XML vystup Nmapu. Je to sice urcene hlavne pre programove ucely, moze takisto pomoct ludom
interpretovat XML vystup Nmapu. DTD definuje platne prvky formatu a casto vymenuva atributy
a hodnoty, ktore mozu nadobudat. Posledna verzia je dostupna z adresy
http://www.insecure.org/nmap/data/nmap.dtd. XML ponuka stabilny format lahko spracovatelny softwarom.
Volne XML parsery su dostupne vo vsetkych hlavnych programovacich jazykoch
vratane C/C++,Perl, Python a
Java. Su ponukane napojenia pre vacsinu tychto jazykov tak, ze si vedia specificky poradit
s vystupom a behom Nmapu.
Prikladmi su Nmap::Scanner
a Nmap::Parser v Perl
CPAN. Skoro vo vsetkych pripadoch rozhrania netrivialnej aplikacie
s Nmapom, XML je preferovanym formatom. XML vystup sa odkazuje na XSL stylesheet,
ktory moze byt pouzity na formatovanie vysledkov do HTML. Najjednoduchsim sposobom ako ho pouzit
je jednoducho nahrat vystup v XML do weboveho prehliadaaca akym je Firefox alebo IE.
Za normalnych okolnosti to bude fungovat len na pocitaci, na ktorom bezi
Nmap (alebo na podobne nastavenom) kvoli napevno zadanej ceste suboru nmap.xsl
suboroveho systemu. Zadanim parametrov --webxml alebo
--stylesheet vytvorite prenosne XML
subory, ktore sa na kazdom pocitaci s webovym prehliadacom zobrazia v HTML formate. -
-oS <filespec> (ScRipT KIdd|3 oUTpuT) Vystup formatu Script kiddie je podobny interaktivnemu, no dodatocne sa spracuvava,
aby vyhovoval skupine l33t HaXXorZ, ktori predtym opovrhovali Nmapom kvoli jeho doslednemu formatovaniu
velkych pismen a hlaskovaniu. Ludia s nedostatkom zmyslu pre humor by si mali uvedomit,
ze tento parameter je mysleny ako vtip pre script kiddies, predtym ako ma zacnu flamovat za to,
ze im udajne “pomaham”. -
-oG <filespec> (Vystup typu Grep) Tento format vystupu je spomenuty ako posledny, pretoze je zastaraly. Vystup vo formate XML
je ovela mocnejsi a takmer tak isto vhodny a pohodlny pre skusenych pouzivatelov. XML je standardom,
pre ktory je dostupnych mnoho excelentnych parserov, kym vystup typu grep je len moj vlastny vymysel.
XML je rozsiritelne na podporu novych vydanych funkcii Nmapu, zatial co tieto funkcie musim casto vynechat
pri vystupe formatu grep kvoli nedostatku miesta na ich umiestnenie.
Aj tak je vsak tento format stale dost oblubeny. Je to jednoduchy format, ktory
zobrazuje kazdy hostitelsku stanicu na jeden riadok a moze byt jednoducho prehladavany
a parsovany standardnymi UNIXovymi nastrojmi ako grep, awk, cut,
sed, diff ci Perl. Aj ja ho dokonca pouzivam pre jednorazove
testy na prikazovom riadku. Najst vsetky hostitelske stanice s otvorenym
portom ssh alebo s beziacim systemom Solaris si vyzaduje jednoduchy grep na identifikaciu
hostitelskych stanic, napojeny rurou - pipe na prikaz awk alebo cut, cim sa zobrazia
pozadovane polia. Vystup vo formate Grep sa sklada z komentara (riadky zacinajuce sa znakom) a riadkami cielov.
Riadok ciela zahrnuje kombinaciu 6 oznacenych poli, oddelenych tabulatorom a nasledovanym dvojbodkou,
Host, Ports,
Protocols, Ignored State,
OS, Seq Index,
IPID a Status. Najdolezitejsim z tychto poli je vo vseobecnosti
Ports, ktore poskytuje podrobnosti o kazdom
zaujimavom porte a obsahuje zoznam poloziek portov oddelenenych ciarkou,
pricom kazda polozka reprezentuje jednotlivy port a zaujima podobu siedmych mensich poli oddelenych
znakom /. Su nimi: Port
number, State, Protocol,
Owner, Service, SunRPC
info a Version info. Tak ako pri vystupe XML, ani tento manual nemoze pokryvat dokumentaciu celeho formatu. Podrobnejsi pohlad
na format typu grep Nmapu je dostupny z adresy
http://www.unspecific.com/nmap-oG-output. -
-oA <basename> (Vystup vo vsetkych formatoch)
Pre ucel pohodlnosti je mozne zadat -oA
<basename>, cim sa vysledky scanu naraz ulozia v normalnom,
XML a grep formate. Ulozia sa do suborov v tvare
are stored in <basename>.nmap,
<basename>.xml a
<basename>.gnmap.
Tak ako pri vacsine programov je aj tu mozne pridat predponu adresarovej cesty, napr.
~/nmaplogs/foocorp/ na UNIXovych systemoch alebo
c:\hacking\sco na Windows.
Miera vypisu a moznosti debugovania -
-v (Zvysit stupen miery vypisu)
Zvysi stupen miery vypisu, cim Nmap zobrazi viac informacii o vykonavanom scane. Otvorene
porty su zobrazovane hned pri ich najdeni. Ak Nmap odhaduje, ze scan zabere viac ako niekolko minut,
zobrazi tento odhad. Pri dvojnasobnom pouziti parametru sa este viac zvysi miera vypisu.
Viacnasobne pouzitie nema ziadny efekt. Vacsina zmien ovplyvnuje len interaktivny vystup a niektore tiez normalny a script kiddie format vystupu.
Ostatne typy vystupov su spracovavane pocitacmi, takze Nmap poskytuje podstatne podrobnosti predvolene
bez unavovania cloveka. Existuje vsak niekolko zmien v dalsich modoch, kde sa moze velkost vystupu podstatne
zmensit vynechanim niektorych podrobnosti. Napriklad riadok s komentarom vo formate grep poskytujuci vsetkych
scanovanych portov sa zobrazi len v mode verbose - s velkou mierou vypisu - pretoze moze byt dost dlhy.
-
-d [level] (Zvysit alebo nastavit uroven debugovania)
Ak ani mod verbose neposkytuje dostatocne udaje, je vhodne pouzit debugovanie, cim sa doda omnoho viac
informacii. Tak ako pri parametri stupna urovne vypisu,
(-v), debugovanie sa povoli riadkovym parametrom(-d)
a jeho stupen sa da zvysit jeho niekolkonasobnym zadanim. Alternativne je mozne nastavit
stupen debugovania dosadenim argumentu za parameter -d, napriklad
-d9 nastavi uroven na devat, co predstavuje najvyssi platny stupen a v pripade,
ze sa nevykonava velmi jednoduchy scan s par portmi a cielovymi stanicami vyprodukuje
tisicky riadkov. Vystup debugovania je uzitocny, ak je podozrive, ze Nmap obsahuje bug,
alebo ak ste proste zmateni, co Nmap robi a preco. Riadky debuggovania nie su prilis samo
vysvetlujuce, kedze su urcene pre vyvojarov. Je mozne dopracovat sa k niecomu takemu:
Timeout
vals: srtt: -1 rttvar: -1 to: 1000000 delta 14987 ==> srtt: 14987
rttvar: 14987 to: 100000. Ak nerozumiete ani jednemu riadku, jedinym riesenim je ignorovat
vypis alebo si ho vyhladat v zdrojovom kode, pripadne si vyziadat pomoc zo development listu (nmap-dev).
Niektore riadku su samovysvetlujuce, no zvysovanim stupna debugovania sa straca prehlad.
-
--packet_trace (Sledovat odosielane a prijimane pakety a data)
Nmap zobrazi obsah kazdeho odoslaneho alebo prijateho paketu.
Casto sa to pouziva pre debugovanie, ale zide sa tiez novacikom,
ktori su presne rozumiet, co sa deje pod pokryvkou Nmapu.
Ak chcete predist zobrazovaniu tisicov riadkov, je mozne specifikovat
obmedzeny pocet portov na scanovanie, napr.-p20-30.
Ak vas zaujima len priebeh detekcie verzie, zadajte
--version_trace. -
--iflist (Zobrazit zoznam rozhrani a ciest)
Zobrazi zoznam rozhrani a systemovych ciest tak ako boli detekovane
Nmapom, co sa hodi pre debugovanie problemov s routovanim alebo nespravnou
charakterizaciou zariadenia, napr. ak Nmap povazuje pripojenie PPP za ethernetovske.
.
Rozne moznosti vystupu -
--append_output (Pripojit vystup namiesto vymazania predchadzajucich dat)
Pri specifikacii nazvu suboru za parametrom formatu vystupu napr.
-oX alebo -oNsa v predvolenom nastaveni subor prepise.
Ak chcete zachovat obsah suboru a pripojit nove vysledky, zadajte parameter --append_output
a vsetky zadane nazvy suborov sa namiesto prepisovania budu rozsirovat o nove data. Nefunguje to pre data scanu
pre format XML(-oX), pretoze sa vysledny subor nespracuje spravne, az kym
ho neopravite rucne. -
--resume <filename> (Pokracovat v prerusenom scane)
Niektore rozsiahle scany trvaju Nmapu velmi dlho - radovo aj dni. Taketo scany
nebezia stale do konca. Mozu existovat obmedzenia, ze Nmap nesmie byt spusteny pocas
pracovneho casu, mohla by spadnut siet, pocitac so spustenym Nmapom by mohol planovane ci neplanovane
restartovat alebo by Nmap sam mohol zhavarovat.
Administrator ho moze zrusit takisto a to stlacenim kombinacie
ctrl-C. Restartovat cely scan
od zaciatku moze byt neprijatelne. Nastastie, ak sa uchovavali logovacie
zaznamy typu normal
(-oN) alebo grep (-oG)
, pouzivatel moze pokracovat v scanovani s tymi istymi cielovymi
stanicami ako predtym pred prerusenim scanu. Docieli sa to zadanim parametra
--resume a vystupneho suboru vo formate normal/grep ako argumentu.
Ziadne dalsie argumenty nie su povolene, pretoze Nmap spracuvava subor pomocou
predchadzajucich parametrov. Je teda potrebne zadat
nmap --resume
<logfilename>. Nmap pripoji nove vysledky
do suborov specifikovanych v predchadzajucom vykonavani scanu.
Taketo obnovenie scanu nepodporuje vystup v XML
formate, pretoze miesanie vysledkov dvoch spusteni scanu do jedneho
spolocneho spravneho XML suboru by bolo narocne. -
--stylesheet <path or URL> (Nastavit XSL stylesheet na prevod XML vystupu)
Nmap je dodavany s XSL stylesheetom nazvanym
nmap.xsl na prezeranie a preklad XML formatu do HTML.
Vystup XML zahrna direktivu xml-stylesheet
, ktora ukazuje na subor nmap.xml, kde bola
pocitatocne nainstalovana Nmapom (vo Windowse aktualnym pracovnym adresarom).
Nahrajete XML vystup Nmapu do moderneho weboveho prehliadaca a ten by mal zo suboroveho systemu najst subor
nmap.xsl a pouzit ho na preklad vysledkov.
Ak si zelate pouzit odlisny stylesheet, zadajte ho ako argument za parametrom
--stylesheet. Je nutne zadat plnu cestu alebo adresu URL.
Jednym z beznych prikladov je
--stylesheet
http://www.insecure.org/nmap/data/nmap.xsl, co sposobi, ze browser nahra najnovsiu
verziu stylesheetu z adresy Insecure.Org. Parameter --webxml
robi to iste bez tolkeho pisania a memorovania. Nahratie XSL stylesheetu z
Insecure.Org ulahcuje prezeranie vysledkov na pocitaci,
ktory nema Nmap (a preto ani
nmap.xsl). URL je teda casto uzitocnejsia,
ale ulozenie suboru v lokalnom suborovom systeme sa pouziva predvolene
kvoli bezpecnosti. -
--webxml (Nahrat stylesheet z adresy Insecure.Org)
Tento pohodlny parameter je jednoducho alternativou k zadaniu
--stylesheet http://www.insecure.org/nmap/data/nmap.xsl. -
--no_stylesheet (Vynechat zadanie XSL stylesheetu z XML)
Tento parameter zabrani Nmapu spajat XSL stylesheet s XML vystupom. Vynecha sa direktiva
xml-stylesheet.
|
|