Nmap - Referencna prirucka (Man Page,Slovak translation)nmap1NmapNmap - Referencna priruckanmapNastroj na skumanie siete a scanner bezpecnosti/portovnmapTyp scanuMoznostiSpecifikacia cielovej staniceOpis
Tento dokument popisuje Nmap verzia 3.95. je k dispozícii v angličtine Najnovšie dokumentácie na
.Nmap (Network Mapper) je open-source nastrojom na skumanie siete a kontrolu bezpecnosti.
Bol vyvinuty s ohladom na rychle scanovanie velkych sieti, hoci funguje vyborne aj pri nasadeni proti jednotlivym hostitelom.
Nmap neobvyklymi sposobmi pouziva neupravene IP pakety na urcenie hostitelskych stanic v sieti,
sluzieb, ktore (aplikacia
Nmap neobvyklym sposobom pouziva neupravene IP pakety na urcenie cisla a verzie) tieto hostitelske stanice ponukaju,
na akom operacnom systeme
(a verziach OS) bezia, aky typ paketovych filtrov alebo firewallu je pouzity,
a mnoho dalsich charakteristickych veci. Hoci sa Nmap bezne pouziva na vykonavanie kontrol bezpecnosti,
mnoho systemovych a sietovych administratorov ho vyuzije aj pri obvyklych ulohach ako napriklad
obsah siete, sprava casovych rozvrhnuti upgradeovania sluzby ci
monitorovanie uptimu hostitelskej stanice alebo sluzby.
Vystup aplikacie Nmap je tvoreny zoznamom scanovanych cielovych stanic s dodatocnymi informaciami o kazdom
z nich v zavislosti na pouzitych moznostiach.
Klucovou medzi tymito informaciami je tabulka zaujimavych portov
. Tato tabulka obsahuje zoznam cisla portu a protokolu, nazov sluzby
a stav. Stav moze byt bud
otvoreny, filtrovany,
zatvoreny, alebo nefiltrovany. Otvoreny
Open znamena, ze aplikacia na cielovom pocitaci nacuva spojeniam alebo paketom na tomto porte.
Filtrovany znamena, ze nejaky firewall, filter alebo sietova prekazka
blokuje port takym sposobom, ze Nmap nedokaze urcit, ci je port
otvoreny alebo zatvoreny.
Zatvorene porty neobsahuju ziadne na nich nacuvajuce aplikaciu,
aj ked by sa mohli kedykolvek otvorit. Porty su oznacovane ako nefiltrovane
ak reaguju na testovanie Nmapom, no Nmap nedokaze urcit, ci su otvorene alebo zatvorene.
Nmap ohlasi kombinaciu stavov
otvoreny|filtrovany a
zatvoreny|filtrovany ak nedokaze urcit, ktory z dvoch stavov zodpoveda portu.
. Ak bola vyzadovana detekcia verzie, tabulka portov moze takisto obsahovat podrobnosti o verzii softwaru.
Ak je vyzadovany scan protokolu IP
(), Nmap poskytne informacie namiesto nacuvajucich portov
informacie o podporovanych protokoloch IP.Okrem tabulky zaujimavych portov dokaze Nmap poskytnut dalsie
informacie o cielovych staniciach, vratane reverznych nazvov DNS, odhadov operacneho systemu,
typoch zariadeni a MAC adries.Typicky Nmap scan je zobrazeny na tomto mieste..
Jedinymi parametrami Nmapu pouzitymi v tomto priklade su , na povolenie
detekcie OS a verzie, kvoli rychlejsiemu behu programu, a dva hostitelske nazvy
cielovych stanic.Ukazkovy Nmap scan
# nmap -A -T4 scanme.nmap.org playground
Starting nmap ( https://nmap.org/ )
Interesting ports on scanme.nmap.org (205.217.153.62):
(The 1663 ports scanned but not shown below are in state: filtered)
PORT STATE SERVICE VERSION
22/tcp open ssh OpenSSH 3.9p1 (protocol 1.99)
53/tcp open domain
70/tcp closed gopher
80/tcp open http Apache httpd 2.0.52 ((Fedora))
113/tcp closed auth
Device type: general purpose
Running: Linux 2.4.X|2.5.X|2.6.X
OS details: Linux 2.4.7 - 2.6.11, Linux 2.6.0 - 2.6.11
Uptime 33.908 days (since Thu Jul 21 03:38:03 2005)
Interesting ports on playground.nmap.org (192.168.0.40):
(The 1659 ports scanned but not shown below are in state: closed)
PORT STATE SERVICE VERSION
135/tcp open msrpc Microsoft Windows RPC
139/tcp open netbios-ssn
389/tcp open ldap?
445/tcp open microsoft-ds Microsoft Windows XP microsoft-ds
1002/tcp open windows-icfw?
1025/tcp open msrpc Microsoft Windows RPC
1720/tcp open H.323/Q.931 CompTek AquaGateKeeper
5800/tcp open vnc-http RealVNC 4.0 (Resolution 400x250; VNC TCP port: 5900)
5900/tcp open vnc VNC (protocol 3.8)
MAC Address: 00:A0:CC:63:85:4B (Lite-on Communications)
Device type: general purpose
Running: Microsoft Windows NT/2K/XP
OS details: Microsoft Windows XP Pro RC1+ through final release
Service Info: OSs: Windows, Windows XP
Nmap finished: 2 IP addresses (2 hosts up) scanned in 88.392 seconds
Najnovsia verzia Nmapu sa nachadza na adrese .
Najnovsia verzia manualu je k dispozicii na adrese .Poznamky o prekladeTato slovenska verzia referencnej prirucky Nmapu bola prelozena z verzie
2991 povodnej anglickej verzie
Stanislavom Sivakom. Dufam sice, ze tento preklad viac spristupni Nmap slovensky hovoriacim
ludom na celom svete, ale nemozem zarucit, ze preklad je taky uplny alebo aktualny ako
oficialna anglicka verzia.
Toto dielo moze byt modifikovane a siritelne podla podmienok licencie Creative
Commons Attribution License.Zoznam moznostiTento zoznam moznosti sa zobrazi, ak je Nmap spusteny bez parametrov a
jeho najnovsia verzia je k dispozii na adrese
.
Pomaha ludom zapamatat si najbeznejsie moznosti, ale nie je nahradou za podrobnu
dokumentaciu v zostavajucej casti tohoto manualu. Na tomto mieste nie su dokonca uvedene niektore
malo zname, nejasne moznosti.
Pouzitie: nmap [Typ(y) scanu] [Moznosti] {specifikacia cielovej stanice}
SPECIFIKACIE CIELOVEJ STANICE:
Je mozne zadat hostitelsky nazov stanice, IP adresy, siete atd.
Priklad: scanme.nmap.org, microsoft.com/24, 192.168.0.1; 10.0.0-255.1-254
-iL <inputfilename>: Pouzit ako vstup zoznam hostistelskych stanic alebo sieti
-iR <num hosts>: Zvolit nahodne cielove stanice
--exclude <host1[,host2][,host3],...>: Vynechat hostitelske stanice alebo siete
--excludefile <exclude_file>: Vynechat zoznam zo suboru
ZISTOVANIE HOSTITELSKEJ STANICE:
-sL: List Scan - zobrazit zoznam cielovych stanic, ktore sa maju scanovat
-sP: Ping Scan - nevykonat nic ine okrem zistenia, ci je hostitelska stanice online
-P0: Treat all hosts as online -- preskocit zistovanie hostitelskych stanic
-PS/PA/PU [portlist]: pre zadane porty vykonat zistenie protokolov TCP SYN/ACK alebo UDP
-PE/PP/PM: vyskusat ICMP echo, parameter timestamp a poziadavku na sietovu masku
-n/-R: Nikdy nevykonavat DNS preklad/Vzdy vykonavat preklad DNS [povodne nastavenie: niekedy]
--dns-servers <serv1[,serv2],...>: Zadat vlastne servery DNS
--system-dns: Pouzit prekladac DNS operacneho systemu
SPOSOBY SCANOVANIA:
-sS/sT/sA/sW/sM: Scan typu TCP SYN/Connect()/ACK/Window/Maimon
-sN/sF/sX: Scany typu TCP Null, FIN a Xmas
--scanflags <flags>: Nastavit vlastne flagy scanu TCP scan
-sI <zombie host[:probeport]>: Scan typu Idlescan
-sO: Scan protokolu IP
-b <ftp relay host>: Scan vyuzivajuci FTP bounce
SPECIFIKACIA PORTOV A PORADIE SCANOVANIA:
-p <port ranges>: Len specifikovane porty
Priklad: -p22; -p1-65535; -p U:53,111,137,T:21-25,80,139,8080
-F: Fast - Vykonat scan len na portoch zahrnutych v subore nmap-services
-r: Scanovat porty postupne a nie nahodne
DETEKCIA SLUZBY/VERZIE:
-sV: Testovat otvorene porty na urcenie informacii o sluzbe/verzii
--version-light: Kvoli rychlejsej identifikacii sluzby/verzie vykonat len tie
najpravdepodobnejsie testy
--version-all: Vykonat vsetky mozne testy
--version-trace: Zobrazit podrobnosti o priebehu scanovanie verzie (pre ucely debugovania)
DETEKCIA OS:
-O: Povolit detekciu OS
--osscan-limit: Zuzit detekciu OS len na slubne vyzerajuce cielove stanice
--osscan-guess: Pouzit agresivnejsiu detekciu OS
CASOVANIE A VYKON:
-T[0-5]: Nastavit casovaciu sablonu (vyssie cislo zodpoveda rychlejsej sablone)
--min-hostgroup/max-hostgroup <size>: Velkosti skupin paralelnych scanov
--min-parallelism/max-parallelism <numprobes>: Paralelizacia testu
--min-rtt-timeout/max-rtt-timeout/initial-rtt-timeout <msec>: Udava
velkost hodnoty RTT testu
--max-retries <tries>: Udava pocet retransmisii testu scanovania portov.
--host-timeout <msec>: Po uplynuti tohoto casoveho limitu ukoncit test cielovej stanice
--scan-delay/--max-scan-delay <msec>: Prisposobit oneskorenie medzi testami
OBIDENIE FIREWALLU/IDS A FALSOVANIE:
-f; --mtu <val>: Fragmentovat pakety ( s pridanou moznostou fragmentovania podla velkosti MTU)
-D <decoy1,decoy2[,ME],...>: Ukryt scan pouzitim trikov
-S <IP_Address>: Sfalsovat zdrojovu adresu
-e <iface>: Pouzit zadane rozhranie
-g/--source-port <portnum>: Pouzit dane cislo portu
--data-length <num>: Do odosielanych paketov vlozit nahodne data
--ttl <val>: Nastavit velkost polozky time-to-live protokolu IP
--spoof-mac <mac address/prefix/vendor name>: Sfalsovat MAC adresu aktualneho pocitaca
--badsum: Odoslat pakety s falosnym kontrolnym suctom TCP/UDP
VYSTUP:
-oN/-oX/-oS/-oG <file>: Vystup scanu zadaneho suboru vo formate obycajnom, XML, s|<rIpt kIddi3,
a Grep.
-oA <basename>: Vystup sucasne vo vsetkych troch hlavnych formatoch
-v: Zvysit uroven priebezneho vystupu (pre vacsi ucinok pouzit dvakrat)
-d[level]: Nastavit alebo zvysit uroven debugovania (Zmysel maju hodnoty do 9)
--packet-trace: Zobrazit vsetky odoslane a prijate pakety
--iflist: Vytlacit rozhrania hostitelskej stanice a trasy (pre ucely debugovania)
--append-output: Namiesto vymazania dat suborov pridat vystup k datam zadanych vystupnych suborov
--resume <filename>: Pokracovat v prerusenom scane
--stylesheet <path/URL>: Na prenesenie vystupu vo formate XML do formatu HTML pouzit stylesheet XSL
--webxml: Na ziskanie prenositelnejsieho formatu XML pouzit referencny stylesheet zo stranky Insecure.Org
--no-stylesheet: Nepouzivat stylesheet pre vystup v XML
ROZNE:
-6: Povolit scan pre protokol IPv6
-A: Povolit detekciu OS a verzie
--datadir <dirname>: Zadat vlastne umiestnenie datoveho suboru pre Nmap
--send-eth/--send-ip: Odoslat pouzitim neupravenych ethernetovych ramcov alebo IP paketov
--privileged: Usudzovat, ze uzivatel ma plne opravnenia
-V: zobrazit cislo verzie
-h: zobrazit suhrn tejto stranky napovedy.
PRIKLADY:
nmap -v -A scanme.nmap.org
nmap -v -sP 192.168.0.0/16 10.0.0.0/8
nmap -v -iR 10000 -P0 -p 80
Specifikacia cielovej staniceVsetko v prikazovom riadku Nmapu co nie je parametrom (alebo argumentom parametra) sa povazuje
za specifikaciu cielovej stanice. Najjednoduchsim pripadom je specifikovat cielovu IP adresu alebo
hostitelsky nazov stanice, ktora sa ma scanovat.
Niekedy je potrebne scanovat celu siet susednych hostitelskych stanic.
Pre tento ucel podporuje Nmap adresovanie typu CIDR. K IP adrese alebo hostitelskemu nazvu je mozne pripojit
/numbits a
Nmap vykona scan kazdej IP adresy, u ktorej sa zhoduju prve
numbits s referencnou IP adresou alebo hostitelskym nazvom.
Napriklad po zadani adresy v tvare 192.168.10.0/24 by sa scanovalo 256 hostitelskych stanic medzi
192.168.10.0 (v binarnom tvare: 11000000 10101000
00001010 00000000) a 192.168.10.255 (v binarnom tvare: 11000000 10101000
00001010 11111111), vratane.
Zadanie adresy 192.168.10.40/24 by sposobilo presne to iste. Za predpokladu, ze
nazov scanme.nmap.org je na IP adrese 205.217.153.62, specifikacia
scanme.nmap.org/16 sposobi, ze by sa scanovalo 65,536 IP adries medzi adresami
205.217.0.0 a 205.217.255.255. Najmensia povolena hodnota je /1,
co sposobi scanovanie polovice internetu. Najvacsia hodnota je 32, co ma za nasledok scanovanie
len spomenutej hostitelskej stanice, pretoze vsetky bity IP adresy su pevne.Zapis typu CIDR je sice kratky, no nie vzdy dostatocne flexibilny. Napriklad, ak je
potrebne scanovat adresy v rozsahu 192.168.0.0/16, ale pritom preskocit vsetky adresy zakoncene
.0 alebo .255, pretoze bezne su to broadcastove adresy. Nmap to podporuje pomocou
pouzitia specifikacie jednotlivych oktetov adresy. Namiesto zadania obycajnej
IP adresy je mozne specifikovat zoznam cisel alebo rozsah pre kazdy oktet, oddeleny ciarkou.
Rozsah 192.168.0-255.1-254 napriklad preskoci vsetky adresy v zadanom rozsahu, ktore obsahuju
na konci .0 alebo .255. Rozsahy sa nemusia viazat len na posledne oktety: specifikacia
0-255.0-255.13.37 vykona scan vsetkych adries na internete konciace oktetmi 13.37.
Tento druh specifikacie sa moze hodit pri skumani internetu a vyskume.Adresy protokolu IPv6 mozu byt specifikovane len plne urcenou IPv6 adresou
alebo hostitelskym nazvom. Zapisy typu CIDR a rozsahy oktetov nie su podporovane pre IPv6,
pretoze su zriedkavo uzitocne.Nmap akceptuje viacnasobne specifikacie hostitelskych stanic v prikazovom riadku,
ktore pritom nemusia byt rovnakeho typu. Prikaznmap
scanme.nmap.org 192.168.0.0/8 10.0.0,1,3-7.0-255 funguje podla ocakavania. Zatial co su cielove stanice obvykle specifikovane v prikazovom riadku, je mozne tiez
specifikovat nasledujuce moznosti, a tym riadit vyber cielovych stanic:
(Vstup zo zoznamu)
Nacita specifikacie cielovych stanic z
inputfilename. Zadavanie velkeho zoznamu hostitelskych stanic
do prikazoveho riadku je casto tazkopadne avsak casto ziadane.
Napriklad vas DHCP server moze exportovat zoznam momentalnych 10000 pridelenych adries, ktore sa maju
scanovat, alebo je mozne scanovat vsetky IP adresy
okrem tychto na zistenie hostitelskych stanic pouzivajucich neopravnene
staticke adresy. Vytvorite zoznam hostitelskych stanic, ktore sa maju scanovat
a nazov suboru zadate ako argument k parametru. Polozky v subore mozu
byt v lubovolnom formate, ktory je akceptovany Nmapom v prikazovom riadku
(IP adresa, hostitelsky nazov, IP adresa typu CIDR, IPv6, alebo rozsahy oktetov). Kazda polozka musi
musi byt oddelena aspon jednou medzerou, tabulatormi alebo novym riadkom.
Ak sa maju hostitelske stanice nacitavat zo standardneho vstupu
a nie aktualneho suboru, je mozne pouzit spojitko (-)
(Vybrat nahodne cielove stanice)
Pre rozsiahle internetove prieskumy a dalsi vyskum je mozne zvolit nahodne
cielove stanice. Argument num hosts udava, kolko IP adries ma Nmap
generovat. Automaticky sa preskocia adresy privatne, multicastove alebo nealokovane.
Argument 0
udava scan, ktory sa nikdy neskonci. Je potrebne uvedomit si, ze niektori sietovi administratori
s nevolou sleduju neopravnene scanovania sieti a mozu sa stazovat. Pouzitie tejto moznosti
je na vlastne nebezpecie! Ak sa budete v jedno dazdive odpoludnie naozaj nudit,
pokuste sa prikazom nmap -sS -PS80 -iR 0 -p
80 najst nahodne webove servery.
(Vynechat hostitelske stanice alebo siete)
Specifikuje zoznam cielovych stanic oddelenych ciarkou, ktore sa
maju vynechat zo scanu, aj ked su castou celkoveho specifikovaneho sietoveho rozsahu.
Zoznam pouziva obvyklu syntax Nmapu, to znamena hostitelske nazvy, bloky adries podla CIDR,
rozsahy oktetov, atd. Tato moznost je uzitocna, ak sa v scanovanych sietach vyskytuju
nedotknutelne kriticke servery, systemy s nepriaznivou reakciou na scanovanie portov,
ci systemy spravovane dalsimi ludmi.
(Vynechat subor zo zoznamu)
Ponuka podobnu funkcionalitu ako moznost
s tym rozdielom, ze vynechane cielove stanice su namiesto prikazoveho riadku ulozene v
exclude_file s polozkami oddelenymi novym riadkom, medzerou alebo tabulatorom.
Zistovanie hostitelskych stanic Jednym z uplne prvych krokov pri prieskume siete
je zuzit niekedy obrovsku mnozinu rozsahov IP adries na zoznam aktivnych alebo zaujimavych hostitelskych stanic.
Scanovanie kazdeho portu kazdej jednej adresy nie je obycajne nevyhnutne. Samozrejme, ze ciel scanovania
zavisi od typu scanu. Sietovych administratorov mozu zaujimat
len hostitelske stanice, na ktorych bezi urcita sluzba, kym spravcov bezpecnosti mozu dbat o kazde zariadenie
s IP adresou. Administratorovi moze stacit ICMP ping, aby nasiel hostitelske stanice vo vnutornej sieti,
kym tester moznosti vonkajsieho preniknutia do siete moze pouzit mnozinu testov pri pokuse vyhnut sa obmedzeniam
firewallu.
Pretoze potreby pri zistovanie hostitelskych stanic su rozmanite, Nmap ponuka
siroku paletu moznosti prisposobenia pouzitych technik. Zistovanie hostitelskej stanice
sa niekedy nazyva ping scan, zachadza vsak daleko za jednoduchym ICMP echo request
spojenou so vsadepritomnym
ping nastrojom. Pouzivatelia mozu krok pingovania
vynechat uplne pouzitim parametra () alebo
zakazanim pingu parametrom (), ci pouzit v sieti nahodne kombinacie multi-portovych testov
TCP SYN/ACK, UDP, a
ICMP. Cielom tychto testov je pokusit sa ziskat odpovede, ktore ukazuju, ze
IP adresa je vlastne aktivna (je pouzivana hostitelskou stanicou alebo sietovym zariadenim).
Vo viacerych sietach je aktivne len male percento IP adries v rovnakom momente, co je obvykle hlavne pre
rozsah privatnych adries, napr. 10.0.0.0/8 podla standardu RFC1918.
Tato siet obsahuje 16 milionov IP adries, ale videl som, ze ich pouzivali spolocnosti s menej ako tisic pocitacmi.
Zistovanie hostitelskych stanic dokaze najst tieto pocitace v riedko alokovanom oceane
IP adries.Ak nie su zadane ziadne parametre pre zistovanie hostitelskych stanic, Nmap
odosle kazdej cielovej stanici TCP ACK
paket urceny pre port 80 a poziadavku ICMP Echo Request.
Vynimkou je je ARP scan pouzivany pre vsetky cielove stanice v lokalnej ethernetovej sieti.
Pri neprivelegovanych pouzivateloch UNIXoveho shellu sa namiesto typu ACK odosle paket typu
SYN pouzitim systemoveho volaniaconnect()
Tieto predvolene nastavenia odpovedaju parametrom
. Taketo zistovanie hostitelskych stanic je sice
casto postacujuce pri scanovani lokalnych sieti, ale pri testovani bezpecnosti
sa odporuca pouzit rozsiahlejsiu mnozinu testov na zistovanie.Parametre (vyberajuce typy pingu) sa mozu kombinovat.
Vyhliadky preniknutia nekompromisnymi firewallmi sa mozu zvysit odoslanim viacerych typov testov
vyuzivajuc rozlicne typy portov a priznakov TCP a ICMP sprav.
Je dolezite vsimnut si, ze zistovanie ARP () sa normalne vykonava na
cielovych staniciach v lokalnej ethernetovej sieti, aj pri zadani dalsich parametrov
, pretoze je to takmer vzdy rychlejsie a efektivnejsie.Nasledujuce parametre sluzia na ovladanie zistovania hostitelskych stanic.
(List scan) List scan je neupravena podoba zistovania hostitelskych stanic,
ktora jednoducho zobrazi zoznam kazdej hostitelskej stanice specifikovanej sieti
bez odoslania paketov cielovym staniciam. V predvolenom nastaveni vykonava Nmap
reverzny preklad DNS hostitelskych stanic kvoli ziskaniu nazvov.
Je casto prekvapujuce, kolko uzitocnych informacii vydaju jednoduche hostitelske nazvy. Napriklad nazov
fw.chi.playboy.com je firewallom spolocnosti
Playboy Enterprises kancelarie v Chicagu. Nmap na konci takisto oznami celkovy pocet
IP adries. Zoznam scanovania je dobrou kontrolou spravnosti, ze su vybrate
nalezite IP adresy. Ak hostitelske stanice vykazuju nazvy domen, ktore nerozponavate,
je ich vhodne preskumat hlbsie, aby sa predislo scanovaniu siete nespravnej spolocnosti. Kedze myslienkou je len jednoduchy vypis zoznamu
hostitelskych stanic, parametre funkcionality vyssieho stupna ako scanovanie portov,
detekcia OS alebo scanovanie pouzitim pingu nemoze byt kombinovane.
Ak chcete zakazat vykonat tieto vyssie funkcie a zakazat scanovanie pouzitim pingu,
dalsie informacie su uvedene pri parametri
.
(Ping scan)Tento parameter zabezpeci, ze sa vykona len
ping scan (zistovanie hostitelskych stanic) a potom sa zobrazia
dostupne hostitelske stanice, ktore odpovedali na scan. Ziadne dalsie testovanie
ako scan portov alebo detekcia OS, sa nevykona. Je to o krok dotieravejsie ako list scan
a casto sa moze pouzit pre rovnake ucely. Dovoluje jemne preskumanie cielovej siete bez vzbudenia
velkej pozornosti. Poznatok o pocte aktivnych hostitelskych stanic je pre utocnikov cennejsi
ako zoznam poskytnuty list scanom kazdej IP adresy a nazvu host. stanice.Systemovi administratori tiez casto ocenia tento parameter.
Moze sa pouzit jednoducho na zistenie poctu dostupnych pocitacov
v sieti alebo monitorovanie dostupnosti servera. Casto sa to nazyva
ping sweep a je spolahlivejsie ako vysielanie pingu broadcastovej adrese,
pretoze mnoho hostitelskych stanic neodpoveda na broadcastove poziadavky.
Parameter normalne vysle ICMP echo
request a TCP paket na port 80. Ak je prikaz spusteny neprivilegovanym pouzivatelom,
vysle sa na port 80 cielovej stanice SYN paket
(pouzitim volania funkcie connect()).
Ak sa privilegovany pouzivatel pokusa scanovat cielove stanice na lokalnej ethernetovej sieti,
pouzivaju sa spravy ARP request () , ak nie je explicitne zadany parameter
.
Parameter sa moze kombinovat s akymkolvek
z testov zistovania ( parametre ,
s vynimkou ) kvoli vacsej flexibilite.
Ak sa pouziju nejake z tychto typov testov a parametrov cisel portov, prepisu sa tym
predvolene testy (ACK a echo request). Ak sa medzi zdrojovou host. stanicou so spustenym Nmapom
a cielovou sietou nachadza nekompromisny firewall, odporuca sa pouzitie tychto pokrocilych
technik, inac by mohli hostitelske stanice chybat v pripade, ze firewall vyluci spusteny test alebo
odpovede hostitelskych stanic.
(Bez pingu)
Tento parameter kompletne preskoci fazu zistovania.
Nmap obvykle pouziva tuto fazu na zistenie aktivnych
pocitacov pred rozsiahlejsim scanovanim.
V predvolenom nastaveni vykonava Nmap len intenzivne testovanie ako
scanovania portov, detekciu verzie alebo detekciu OS pri zistenych aktivnych hostitelskych staniciach.
Zakazanie zistovania hostitelskych stanic parametrom
sposobi, ze Nmap vykona pozadovanie funkcie scanovania na
kazdej specifikovanej IP adrese. Takze ak je v prikazovom riadku zadany
adresovy priestor triedy B (/16), bude sa scanovat vsetkych 65 536 IP adries.
Druhy znak v parametri je nula a nie pismeno O.
Riadne zistovanie hostitelskych stanic sa vynecha ako pri list scane, ale namiesto zastavenia a
zobrazenia cieloveho zoznamu, Nmap pokracuje vo vykonavani pozadovanych funkcii ako keby bola kazda cielova
IP adresa aktivna.
(Ping TCP SYN )Tento parameter vysiela prazdny TCP paket s nastavenym flagom SYN. Predvoleny cielovy port
je 80 (konfigurovatelny v case kompilacie zmenou hodnoty premennej DEFAULT_TCP_PROBE_PORT v subore
nmap.h), no alternativny port moze byt
specifikovany ako parameter. Zoznam portov oddeleny ciarkou moze byt
dokonca specifikovany za parametrom
(napriklad ), a v tomto pripade sa testy budu vykonavat
paralelne pre kazdy port.SYN flag vyjadruje pre vzdialeny system pokus o nadviazanie spojenia.
Za normalnych podmienok by bol cielovy port zatvoreny a spat by bol odoslany RST(reset) paket. Ak sa port zda
byt otvoreny, ciel vysle druhy stupen mechanizmu TCP 3-way handshake, a teda odpovie SYN/ACK TCP paketom. Pocitac
so spustenym Nmapom potom zrusi vznikajuce spojenie odpovedanim RST paketom namiesto ACK paketom, ktory by
dokoncil uplny mechanizmus 3-way-handshake a nadviazal plne spojenie. RST paket nie je odoslany Nmapom, ale
kernelom pocitaca, na ktorom je spusteny Nmap, ako odpoved na neocakavany paket SYN/ACK.
Nmap sa nestara o to, ci je port otvoreny alebo zatvoreny.
Odpoved s flagom RST alebo SYN/ACK opisana vyssie prezradi Nmapu, ci je hostitelska stanica dostupna a
ci odpoveda. Na pocitacoch s UNIXom moze vseobecne len privilegovany pouzivatel
root posielat a prijimat neupravene TCP pakety.
Pri neprivilegovanych pouzivateloch sa automaticky pouzije systemove volanie funkcie connect() na kazdy cielovy port.
Ma to za efekt odoslanie SYN paketu cielovej stanici ako pokusu o nadviazanie spojenia.
Ak funkcia connect() vrati rychlo uspesny vysledok alebo chybu ECONNREFUSED, zakladny TCP stack musel
prijat SYN/ACK alebo RST paket a hostitelska stanica je oznacena ako dostupna. Ak je pokus o spojenie
neukonceny az do dosiahnutia casoveho limitu, hostitelska stanica je oznacena ako nedostupna.
To sa pouziva aj pre spojenia pre protokol IPv6, kedze podpora neupravenych IPv6 paketov v Nmape este
nie je dostupna.
(Ping TCP ACK)Ping TCP ACK je dost podoba na prave rozobraty SYN ping.
Rozdiel je v tom, ze namiesto SYN flagu je nastaveny ACK flag.
Takyto ACK paket znaci potvrdenie dat nad vybudovanym TCP spojenim, ale pritom
ziadne taketo spojenie neexistuje, takze vzdialene hostitelske stanice by mali vzdy odpovedat
RST paketom, cim v tomto procese prezradia svoju existenciu.
Parameter pouziva rovnaky predvoleny port ako test SYN (80)
a takisto moze spracovat zoznam cielovych portov v rovnakom formate. Ak sa o to pokusa
neprivilegovany pouzivatel alebo je specifikovany cielova stanica s protokolom IPv6,
pouzije sa obvykle systemove volanie funkcie connect(), co nie je bezchybne,
pretoze connect() vysiela SYN paket a nie ACK paket.
Pricinou moznosti zvolenia medzi testami SYN a ACK ping je
maximalizovat sancu obidenia firewallov. Vela administratorov nastavi
router a dalsie jednoduche firewally tak, ze blokuju prichadzajuce SYN pakety okrem
tych, ktore su urcene pre verejne sluzby ako napr. webova stranka spolocnosti alebo postovy server.
Toto brani pred dalsimi prichodzimi spojeniami k organizacii, zatial co
pouzivatelia mozu nadvazovat neobmedzene vychadzajuce spojenia na internet.
Tento bezstavovy pristup zabera malo systemovych prostriedkov na firewalle alebo routeri
a je siroko podporovany v hardwarovych a softwarovych filtroch.
Linuxovsky firewallovy software Netfilter/iptables ponuka
parameter
na realizaciu tejto bezstavovej metody.
Ak su zavedene taketo bezstavove pravidla, je mozne, ze testy SYN ping
() pri zatvorenych cielovych portoch budu blokovane.
V takychto pripadoch sa velmi zide test ACK, pretoze je schopny prejst tymito pravidlami.
Dalsi bezny typ firewallu pouziva stavove pravidla, ktore odhadzuju neocakavane
pakety. Tato funkcia bola spociatku implementovana hlavne na high-endovych firewalloch,
hoci sa v poslednych rokoch stala beznejsou.
Linuxovsky system Netfilter/iptables podporuje tuto funkciu cez parameter
, ktory triedi pakety na zaklade stavu spojenia.
Test SYN bude v takychto podmienkach pravdepodobne fungovat,
zatial co ACK pakety budu vseobecne povazovane za falosne a budu zahodene.
Riesenim tohoto problemu je vykonat oba testy SYN a ACK zadanim parametrov.
a .
(Ping UDP) Dalsou moznostou zistenia hostitelskych stanic je UDP ping, ktory vysiela
prazdny UDP paket
(v pripade, ze nie je specifikovany parameter )
na dane cielove porty. Zoznam portov ma rovnaky format ako pri predtym
rozoberanych parametroch
a . Ak nie je specifikovane inac,
predvoleny port je 31338, co je mozne zmenit v case kompilacie zmenou premennej
DEFAULT_UDP_PROBE_PORT v suborenmap.h.
V predvolenom nastaveni sa pouziva velmi neobvykly port, pretoze odosielanie na otvorene porty
je casto nevyziadane v tomto specialnom type scanovania.
Po zisteni zatvoreneho portu na cielovej stanici
by mal UDP test vratit spravu ICMP Port unreachable.
To indikuje Nmapu, ze pocitac je aktivny a dostupny.
Mnoho dalsich chybovych sprav ICMP ako host/network unreachable alebo TTL exceeeded
indikuje neaktivnu alebo nedosiahnutelnu hostitelsku stanicu.
Touto cestou sa interpretuje aj neobdrzanie ziadnej odpovede.
Ak sa dosiahne otvoreny port, vacsina sluzieb jednoducho
ignoruje prazdny paket a nevratia ziadnu odpoved.
To je dovod, preco je predvolenym portom testu port 31338, u ktoreho je vysoka pravdepodobnost, ze
sa nebude pouzivat.
Niekolko sluzieb, napr. sluzba chargen, odpovie na prazdny UDP paket a takto
prezradi Nmapu, ze pocitac je dostupny.
Hlavna vyhoda tohoto typu scanu je, ze obchadza
tie firewally a filtre, ktore presetruju len TCP protokol.
Niekedy som napriklad vlastnil bezdratovy broadbandovy router
Linksys BEFW11S4. Externe rozhranie tohoto zariadenia filtrovalo vsetky TCP porty v predvolenom nastaveni.
ale UDP testy stale dokazali zistit spravy port unreachable a takto prezradit zariadenie.
;
;
(Typy ICMP Pingu ) Okrem neobvyklych, predtym rozoberanych typov
TCP a UDP testov, Nmap dokaze odoslat normalne pakety
odoslane vsade sa vyskytujucim programom
ping. Nmap odosiela
paket typu 8(echo request) na cielove IP adresy stanic,
ocakavajuc, ze dostupne hostitelske stanice odpovedia spravou typu 0 (Echo Reply).
Nanestastie pre sietovych badatelov, mnoho hostitelskych stanic a firewallov v
sucasnosti blokuje tieto pakety namiesto odpovede podla normy
RFC
1122. Z tohoto dovodu su samotne ICMP scany
zriedkavo spolahlive pri nasadeni proti neznamym cielovym staniciam na internete, no
pre systemovych administratorov monitorujucich vnutornu siet mozu byt praktickou
a efektivnou metodou.
Tato moznost sa povoli zadanim parametra . Aj ked echo request je standardnou poziadavkou ICMP pingu,
Nmap pokracuje dalej. Standard ICMP (RFC
792) takisto specifikuje poziadavky timestamp request, information
request a address mask request ako spravy s kodmi 13, 15,
a 17. Aj ked zdanlivy ucel pre tieto dotazy moze byt ziskanie informacii
ako napr. masky adresy alebo momentalny cas, mozu byt lahko pouzite
na zistovanie hostitelskych stanic. System, ktory odpovie, je aktivny a dostupny.
Nmap v sucanosti neimplementuje poziadavky information request, pretoze nie su siroko
podporovane. RFC 1122 trva na tom, ze
hostitelska stanica by NEMALA implementovat tieto spravy.
Dotazy na casove razitko a masku adresy mozu byt odoslane parametrami
a .
Odpoved timestamp reply (ICMP kod 14) alebo odpoved
mask reply (kod 18) prezradi to, ze hostitelska stanica je dostupna.
Tieto dve dotazy mozu byt cenne, ked administrator specificky
zablokuje pakety poziadavky echo request a zabudne pritom, ze na tento
ucel sa daju pouzit dalsie ICMP dotazy.
(Ping ARP ) Jeden z najbeznejsich pouzivatelskych scenarov pouzitia Nmapu je scanovanie lokalnej ethernetovej
siete. Vo vacsine takychto sieti, hlavne tych pouzivajucich privatne adresove rozsahy podla
RFC1918, je vacsina IP adries nepouzivana v lubovolnom casovom okamihu.
Ak sa Nmap pokusi o odoslanie neupraveneho IP paketu ako napr. ICMP echo request, operacny system
musi urcit adresu cieloveho zariadenia
(ARP) oodpovedajucu cielovej IP adrese, aby sa mohol
odoslat ethernetovy ramec s prislusnou adresou. Tento proces je casto pomaly
a problematicky, pretoze operacne systemy neboli vytvorene s ocakavanim,
ze budu musiet v kratkom casovom intervale vykonat miliony ARP dotazov na nedostupne hostitelske stanice. ARP scan prenechava zodpovednost pri poziadavkach ARP request na
Nmap a jeho optimalizovane algoritmy a ak je ziskana spiatocna odpoved,
Nmap sa nezaujima o IP ping pakety, pretoze uz vie, ze prislusna hostitelska
stanica je aktivna. Preto je ARP scan omnoho rychlejsi a spolahlivejsi ako scany zalozene na IP.
Takto sa to aj bezne vykonava, ked sa scanuju ethernetove
hostitelske stanice, ktore Nmap detekuje v lokalnej ethernetovej sieti, a to aj ked su pouzite
odlisne typy pingov(napriklad alebo
). Ak sa chcete predsa vyhnut ARP scanu, pouzite parameter
.
(Bez prekladu DNS)
Indikuje Nmapu, aby
nikdy nevykonaval reverzny preklad DNS
aktivnych IP adries, ktore najde. Kedze DNS je casto pomale, proces sa urychli.
(DNS preklad pre vsetky cielove stanice)
Indikuje Nmapu, aby
vzdy vykonaval reverzny preklad cielovych IP adries.
Za normalnych podmienok sa to vykonava len ak je pocitac povazovany
za aktivny.
(Pouzit systemovy prekladac DNS)
V predvolenom nastaveni preklada Nmap IP adresy tak, ze
odosiela dotazy priamo DNS serverom nastavenym v lokalnej host. stanici
a potom caka na odpovede. Vela dotazov (casto tucty) sa vykonava paralelne kvoli
vykonu. Specifikovanim toho parametra sa namiesto toho pouzije systemovy prekladac.
(jedna IP adresa sucasne prostrednictvom volania getnameinfo()). Je to pomalsie a malokedy
pouzivane -- v pripade, ze sa v DNS kode Nmapu vyskytuje chyba, kontaktujte nas prosim.
Systemovy prekladac sa vzdy pouziva pre scany IPv6 protokolu.
(Servery, ktore sa maju pouzit pre reverzne DNS dotazy)
Za normalnych okolnosti sa Nmap pokusi
urcit DNS servery z konfiguracneho suboru (UNIX) alebo registrov (Win32)
lokalneho pocitaca, avsak alternativne je mozne pouzit tuto moznost na zadanie vlastnych serverov.
Tento parameter sa nedodrzuje, pri pouziti parametra
alebo scanu protokolu IPv6. Pouzitie viacerych DNS serverov
je casto rychlejsie ako odoslanie dotazov na jeden server.Zaklady scanovania portov Aj ked Nmap ziskal rokmi vacsiu funkcionalitu,
zacinal ako efektivny scanovac portov a to aj zostava jeho hlavnou funkciou.
Jednoduchy prikaz nmap
target scanuje viac ako 1660 TCP portov cielovej stanice
target. Zatial co mnoho scanovacov portov tradicne deli
vsetky porty na otvorene alebo zatvorene, Nmap pouziva granularnejsi pristup.
Deli porty do 6 stavov: otvoreny,
zatvoreny, filtrovany,
nefiltrovany,
otvoreny|filtrovany, alebo
zatvoreny|filtrovany.Tieto stavy nie su pravymi vlastnostami samotneho portu, ale opisuju, ako ich vidi Nmap.
Napriklad ak scan z tej istej siete, v akej sa nachadza cielova stanica moze odhalit port 135/tcp ako otvoreny,
kym scan v rovnakom case a parametrami z internetu mozu odhalit, ze port je filtrovany.Sest stavov portov rozpoznavanych NmapomotvorenyAplikacia na tomto porte aktivne prijima TCP spojenia alebo UDP pakety.
Zistenie tohoto faktu je casto hlavnym cielom scanovania portov. Ludia s bezpecnostou
v mysli vedia, ze kazdy otvoreny port je pristupom pre utok. Utocnici a testeri preniknutia
chcu vyuzivat otvorene porty, zatial co administratori sa pokusaju
zatvorit ich alebo chranit ich firewallmi bez limitovania opravnenych pouzivatelov.
Otvorene porty su zaujimave aj pre nebezpecnostne scany, pretoze ukazuju sluzby dostupne v sieti.
zatvoreny Zatvoreny port je pristupny (prijima a odpoveda na pakety testu vykonavaneho Nmapom),
ale ziadna aplikacia na nom nepocuva. Mozu sa zist pri zistovani ci je hostitelska stanica
aktivna na IP adrese (zistenie hostitelskej stanice alebo ping scan) a ako cast detekcie OS.
Pretoze zatvorene porty su dosiahnutelne, moze byt uzitocne vykonat neskorsi scan a niektore mozu byt
neskor otvorene. Administratori mozu uvazovat o blokovani takychto portov prostrednictvom firewallu.
Tie by sa potom objavili vo filtrovanom stave, ktory je rozobrany nizsie.
filtrovanyNmap nedokaze urcite, ci je port otvoreny, pretoze filtrovanie paketov zabranuje testom
dosiahnut tento port.
Filtrovanie moze pochadzat z osobitneho firewalloveho zariadenia, pravidiel routera alebo
hostitelskeho softwaroveho firewallu.
Tieto porty frustruju utocnikov, pretoze poskytuju malo informacii.
Niekedy odpovedia chybovou spravou ICMP ako napriklad typ 3, kod 13
(destination unreachable: communication administratively
prohibited), ale filtre, ktore jednoducho zahodia test bez odpovede su ovela beznejsie.
Tento jav prinuti Nmap zopakovat pokus niekolkokrat kvoli moznemu pripadu, ze test bol zahodeny
kvoli zahlteniu siete. Toto dramaticky spomaluje scan.nefiltrovanyNefiltrovany stav znamena, ze port je pristupny, ale
Nmap nedokaze urcite, ci je otvoreny alebo zatvoreny. Len ACK scan, pouzivany na
zmapovanie pravidiel firewallu, klasifikuje porty do tohoto stavu.
Scanovanie nefiltrovanych portov inymi typmi scanu ako napr. Window scan, SYN scan alebo FIN scan, moze pomoct
rozlustit, ci je port otvoreny.
otvoreny|filtrovanyNmap charakterizuje porty tymto stavom, ak nedokaze urcit,
ci je port otvoreny alebo filtrovany. K tomu dochadza pri typoch scanov portov, kde
otvorene porty neposkytuju odpoved, co moze tiez znamenat, ze paketovy filter
zahodil test alebo vyvolanu odpoved, takze Nmap nedokaze naisto urcit,
ci je port otvoreny alebo filtrovany. Protokoly UDP,IP a scany FIN, Null a Xmas vykonavaju
takuto klasifikaciu portov.zatvoreny|filtrovanyTento stav je pouzity, ked Nmap nedokaze urcit ci je
port zatvoreny alebo filtrovany. Pouziva sa len pri scane typu IPID Idle.Sposoby scanovania portovAko novacik pokusajuci sa opravit auto, mozem sa trapit dlhe hodiny, aby som nasiel
vhodne zakladne naradie (kladivo, lepiaca paska, kluc, atd) na danu ulohu.
Ked sa uz citim utrapene a odtiahnem svoj vrak ku naozajstnemu mechanikovi, ten stale obchadza
auto s velkou debnou naradia, az kym nevylovi tu vecicku co z prace urobi hracku.
Podobne je aj umenie scanovania. Experti ovladaju kopu metod scanovania a zvolia prislusnu
(alebo kombinaciu) pre danu ulohu. Na druhej strane neskuseni pouzivatelia a rychlokvaseni
majstri v praci so skriptom budu riesit kazdy problem predvolenym SYN scanom. Kedze Nmap je zadarmo,
jedinou barierou pred majstrovstvom v scanovani portov je vedomost, co urcite poraza svet automobilov,
kde zistenie potreby pruzinoveho kompresora stale vyzadujuce zaplatit zan tisice dolarov, moze vyzadovat velke
zrucnosti.Vacsina typov scanov je dostupna len pre privilegovanych pouzivatelov, z toho dovodu,
ze posielaju a prijimaju neupravene pakety, co si na UNIXovych systemoch vyzaduje pristup roota.
Na platforme Windows sa odporuca administratorsky ucet, hoci po nahrati kniznice WinPcap do OS
funguje niekedy Nmap aj pre neprivilegovanych pouzivatelov.
V roku 1997 po vydani Nmapu bola otazka privilegii roota dost vaznym obmedzenim, kedze mnohi pouzivatelia
mali pristup len ku shared shell uctu. Svet sa vsak zmenil.
Pocitace su lacnejsie, ovela viac ludi ma teraz neprestajny priamy pristup na internet a UNIXove
systemy pre desktop (vratane Linuxu a MAC OS X) su rozsirene. Dostupna je aj verzia Nmapu pre Windows,
co dovoluje spustit program na este viac desktopoch. Z tychto vsetkych dovodov nemaju pouzivatelia
taku potrebu spustat Nmap z obmedzenych shared shell uctov.
To je stastne, pretoze parametre vyzadajuce privilegia robia z Nmapu ovela mocnejsi a flexibilnejsi
nastroj.
Nmap sa sice pokusa produkovat presne vysledky, ale je dolezite si uvedomovat,
ze vsetko jeho chapania problemu su zalozene na paketoch odoslanych cielovymi pocitacmi
alebo firewallmi pred nimi. Taketo hostitelske stanice mozu byt nedoveryhodne a posielat
zamerne matuce odpovede a uviest Nmap do omylu.
Ovela beznejsie su vsak hostitelske stanice nevyhovujuce standardu RFC, ktore neodpovedaju na testy
Nmapom tak ako by mali. Specialne nachylne na tento problem su scany typu FIN, Null a Xmas.
Taketo potiaze su specificke pre iste typy scanov a su rozobrate v zaznamoch
o jednotlivych typoch scanov.
Tento cast dokumentuje asi tucet metod scanovania portov podporovanych Nmapom.
Len jedna metoda moze byt pouzita sucasne, s vynimkou UDP scanu
(), ktory moze byt kombinovany s lubovolnym dalsim TCP scanom.
Ako pomocka pre pamat, parametre typu scanovania portov su vo formate
, kde
C predstavuje hlavny znak v nazve scanu, obycajne ten prvy.
Vynimkou je uz odmietnuty FTP bounce scan (). V predvolenom nastaveni
vykonava Nmap SYN scan, hoci ak pouzivatel nema dostatocne privilegia alebo ciele IPv6 neboli
specifikovane, nahradzuje
ho volanim Connect(), aby sa mohli odoslat neupravene pakety (to vyzaduje pristup roota na
UNIXovych pocitacoch). Zo vsetkych spomenutych scanov mozu pouzivatelia bez
privilegii spustit len scany connect() a ftp bounce.
(Scan TCP SYN ) SYN scan je predvolenym a najoblubenejsim typom scanu a to z dobrych dovodov.
Dokaze byt vykonany rychlo, scanujuc tisicky portov za sekundu tam, kde je rychla siet bez
obmedzeni dotieravych firewallov. SYN scan je relativne nenapadny a tajny, pretoze
nikdy nedokonci fazu nadvazovania TCP spojeni. Funguje aj proti akymkolvek TCP stackom
a nezavisi teda na svojraznostiach konkretnych platform ako dalsie Nmapovske scany
Fin, Null, Xmas, Maimon a Idle.
Umoznuje takisto ciste a spolahlive rozlisenie medzi
otvorenymi,
zatvorenymi a filtrovanymi
stavmi.Na tuto metodu sa casto odkazuje ako na polootvorene scanovanie,pretoze
nie je potrebne otvarat plne TCP spojenie. Odosle sa SYN paket ako keby sa nadvazovalo
skutocne spojenie a potom sa caka na spojenie. Prichodzi SYN/ACK paket indikuje,
ze port nacuva (je otvoreny), kym RST (reset) naznacuje, ze port nenacuva.
Ak sa neodosle ziadna odpoved ani po niekolkych retransmisiach, port sa oznaci
ako filtrovany. Taketo oznacenie sa pouzije, aj ked pride
chybova sprava ICMP unreachable error (typ 3, kody 1,2, 3, 9, 10, alebo 13).
(Scan TCP connect())Scan TCP Connect() je predvolenym typom TCP scanu, ak SYN scan nepatri medzi
moznosti. K tomu dochadza, ak pouzivatel nema privilegia na odosielanie neupravenych
paketov, alebo pri scanovani sieti s protokolom IPv6. Nmap namiesto vytvorenia neupravenych
paketov, ako pri vacsine dalsich scanov, poziada operacny system o vytvorenie spojenia s cielovou
stanicou a portom pomocou systemoveho volania connect().
Je to presne to iste volanie na vyssej urovni k vytvoreniu spojenia, ktore vyuzivaju webove prehliadace,
klienti P2P a vacsina dalsich aplikacii vyuzivajucich siet a tvori cast programoveho rozhrania
znameneho pod menom Berkeley Sockets
API. Namiesto prijimania a spracovavania neupravenych odpovedi po sieti, Nmap pri kazdom pokuse o spojenie
pouziva toto rozhranie API na ziskanie informacii o stave.
Ak je dostupny SYN scan, je obycajne lepsou volbou. Nmap ma mensiu kontrolu nad
vysokourovnovym volanim connect() ako
nad neupravenymi paketmi, co sposobuje horsiu efektivnost.Systemove volanie
dokoncuje nadvazovanie spojeni k otvorenym portom cieloveho hostitela namiesto
vykonania polootvoreneho resetu, ktory vykonava SYN scan. Tento postup nielenze
trva dlhsie, ale takisto vyzaduje viac paketov na ziskanie tych istych informacii a cielove
pocitace budu spojenie pravdepodobne zaznamenavat do logu.
Poriadny IDS to sice tiez zachyti, ale vacsina pocitacov nema takyto system.
Ked sa Nmap pripoji a potom zavrie spojenia bez odoslania dat,
vacsina sluzieb na priemernom UNIXovom system prida poznamku do syslogu.
Niektore fakt ubohe sluzby mozu pritom spadnut, ale to je nezvycajne.
Administrator, ktory vidi v logu niekolko pokusov o spojenie od jedneho systemu by mal vediet,
ze bol scannovany s ohladom na nadviazanie spojenia.
(UDP scany)Zatial co vacsina oblubenych sluzieb na internete funguje na TCP protokole,
UDP sluzby
su tiez siroko nasadzovane. Tri najbeznejsie z nich su DNS, SNMP a DHCP
(registrovane porty 53, 161/162 a 67/68). Pretoze scanovanie UDP je vseobecne pomalsie
a narocnejsie ako TCP, niektori spravcovia bezpecnosti si nevsimaju tieto porty a to je chyba, lebo
zneuzitelne UDP sluzby su celkom bezne a utocnici iste nebudu ignorovat cely protokol.
Nastastie, Nmap dokaze pomoct urobit supis tychto UDP portov.UDP scan je mozne spustit parametrom .
Moze sa kombinovat s TCP scanom ako napr. SYN scan
() a tak sa mozu skontrolovat oba protokoly pocas jedneho spustenia.UDP scan funguje tak, ze odosle kazdemu cielovemu portu prazdnu hlavicku UDP header bez dat.
Ak sa vrati chybova sprava ICMP port unreachable error (typ 3, kod 3) port je zatvoreny.
Ostatne chybove spravy ICMP (typ 3,
kody 1, 2, 9, 10 alebo 13) oznacuju port ako filtrovany. Prilezitostne moze
sluzba odpovedat UDP paketom a tym dokaze, ze port je otvoreny. Ak sa po
opakovanych retransmisiach neobjavi ziadna odpoved, port je oznaceny ako
otvoreny|filtrovany.
To znamena, ze port by mohol byt otvoreny alebo mozno paketove filtre blokuju komunikaciu.
Na pomoc pri odliseni otvorenych a filtrovanych portov sa moze pouzit parameter
(). Velkou vyzvou pre scanovanie UDP je rychlost. Otvorene a filtrovane porty malokedy
posielaju odpoved a tak pre vyprsi casovy limit, co vyusti v dalsie retransmisie pre pripad,
ze sa test alebo odpoved mohli v sieti stratit. Zatvorene porty su casto vacsim problemom.
Obycajne odosielaju spat chybovu spravu ICMP port unreachable error, no na rozdiel od
RST paketov odosielanych zatvorenymi TCP portmi ako odpoved na SYN alebo Connect scan,
, mnoho hostitelskych stanic standardne pouziva limit takychto odoslanych chybovych sprav.
Specialne prisne na tento fakt su Linux a Solaris.
Napriklad linuxove jadro 2.4.20 dava obmedzenie na spravy typu destination unreachable v pocte
jedna sprava za sekundu (v subore net/ipv4/icmp.c).Nmap detekuje obmedzenie v pocte a podla toho sa spomali, aby sa vyhol zaplaveniu siete nepotrebnymi
paketmi, ktore by cielova stanica zahodila. Linuxovske obmedzenie 1 paket za sekundu nanestastie sposobuje,
ze by scan 65536 portov trval 18 hodin. Napady ako tento proces urychlit su napr.scanovanie viacerych hostov sucasne
, vykonat najprv rychly scan popularnych portov, scanovat spoza firewallu alebo pouzitie parametru
na preskocenie pomalych hostitelskych stanic.
; ; (TCP Null, FIN a Xmas scany)Tieto tri typy scanov (dalsie sa daju vykonat pouzitim parametra
su opisane v dalsej casti)
vyuzivaju malu dieru v standarde TCP RFC, aby rozlisili
medziotvorenymi a
zatvorenymi portmi. Na strane sa 65 hovori, ze ak je
[cielovy] port zatvoreny.... prichadzajuci segment, ktory neobsahuje flag RST sposobi, ze sa ako
odpoved odosle RST segment. Dalsia strana potom rozobera pakety odosielane na otvorene porty
bez nastavenych bitov SYN, RST ani ACK a tvrdi: je nepravdepodobne, ze sa dostanete
do tejto situacie, ale ak k nej dojde, zahodte segment a vratte sa.Ak sa scanuju systemy zodpovedajuce tomuto textu RFC, lubovolny paket
neobsahujuci nastavene bity SYN, RST ani ACK vyvola odpoved s RST bitom, ak bol port
zatvoreny a ziadnu odpoved, ak je port zatvoreny. Pokial nie su zahrnute ziadne z tychto troch bitov,
je v poriadku lubovolna kombinacia flagov (FIN, PSH a URG). Nmap ich vyuziva pomocou
tychto troch typov scanov:Null scan ()Nenastavuje ziadne bity(tcp flag header je nastaveny na 0)FIN scan ()Nastavi len bit TCP FIN.Xmas scan ()Nastavi flagy FIN, PSH a URG, cim sa paket "rozsvieti" ako
Vianocny stromcek.Tieto tri typy scanov maju rovnake spravanie az na to nastavenie
TCP flagov. Ak dojde ako odpoved RST paket, port sa povazuje za zatvoreny,
kym ziadna odpoved znaci otvoreny|filtrovany. Port sa oznaci ako
filtrovany ak dorazi chybova sprava ICMP unreachable (typ 3, kod
1, 2, 3, 9, 10 alebo 13).Klucovou vyhodou tychto typov scanov je, ze sa dokazu pretlacit cez
iste bezstavove firewally a routre s filtrovanim paketov. Okrem toho su este viac tajnejsie
ako SYN scan, no neda sa na to spoliehat -- vacsina modernych IDS sa da nastavit tak, aby ich detekovala.
Velkou nevyhodou je, ze cely rad systemov sa nedrzi do pismena standardu RFC 793, posielaju odpovede
RST bez ohladu na to, ci je port otvoreny alebo zatvoreny.
Preto su vsetky taketo porty oznacovane ako closed.
Hlavne operacne systemy s takymto spravanim su Microsoft Windows, mnohe zariadenia Cisco ,
BSDI a IBM OS/400.
Tento scan vsak funguje na mnohe UNIXovske systemy.
Dalsim hacikom tychto scanov je, ze nedokazu rozlisit otvorene porty od
istychfiltrovanych, takze vyvolaju odpoved
otvoreny|filtrovany.
(Scan TCP ACK)Tento scan sa lisi od ostatnych doposial rozoberanych v tom,
ze nikdy neurcuje porty v stave otvoreny (dokonca ani
otvoreny|filtrovany). Pouziva sa na zmapovanie
sad pravidiel firewallu, ci su stavove alebo bezstavove a ktore porty su filtrovane.Testovaci ACK Paket ma nastaveny len ACK flag (ak nie je pouzity parameter ).
Ak sa scanuju nefiltrovane systemy, stavy portov
otvoreny a zatvoreny vratia zhodny
RST paket. Nmap ich potom oznaci ako
nefiltrovane, co znamena, ze su dostupne pomocou ACK paketu
, ale nie je rozpoznane, ci su otvorene alebo
zatvorene. Porty, ktore neodpovedia ci odoslu spat nejaku chybovu spravu
ICMP (typ 3, kod 1,2,3,9,10 alebo 13) su oznacene ako filtrovane.
(Scan TCP Window)Window scan je presne taky isty ako ACK scan az na to, ze vyuziva
implementacne detaily istych systemov na rozlisenie otvorenych a zatvorenych
portov, namiesto prosteho vypisu
nefiltrovany po navrate RST paketu. Realizuje sa to
preskumanim polozky RST paketu s nazvom TCP Window. Na niektorych systemoch pouzivaju
otvorene porty kladnu velkost okienka, dokonca aj pre RST pakety, kym, zatvorene porty maju
nulovu velkost okienka, takze namiesto vypisu stavu portu ako nefiltrovany
Window scan zobrazi port v staveotvoreny alebo
zatvoreny podla velkosti okienka (kladna resp. nulova).Tento typ scanu sa spolieha na implementacny detail
mensiny systemov na internete, takze mu nie je mozne vzdy doverovat.
Systemy ktore to nepodporuju obycajne vratia vsetky porty v stave
zatvoreny. Je samozrejme mozne, ze pocitac
nema ziadne otvorene porty. Ak je vacsina scanovanych portov
zatvorena, ale niekolko beznych
portov (napr. 22,
25, 53) je v stave filtrovany system je pravdepodobne
nachylny na tento scan. Zriedkavo mozu systemy vykazat
presne opacne spravanie. Ak je scan ukaze, ze je 1000 otvorenych portov a 3 zatvorene alebo filtrovane
, tieto tri porty mozu byt pokojne tie otvorene.
(Scan TCP Maimon)Maimon scan je pomenovany po svojom objavitelovi, Urielovi Maimonovi. Tuto techniku
opisal v casopise Phrack, vydanie #49 (November 1996)
Nmap s touto metodou bol vydany o dve vydania neskor.
Metoda funguje presne ako scany Null, FIN a Xmas, ale test je typu FIN/ACK. Podla standardu
RFC 793 (TCP), RST paket by mal byt generovany ako odpoved na tento test bez ohladu na otvoreny alebo
zatvoreny port. Uriel vsak spozoroval, ze mnohe systemy odvodene od BSD jednoducho zahodia paket, ak je port
otvoreny.
(Vlastny TCP scan)Naozaj pokrocili pouzivatelia Nmapu sa nemusia obmedzovat len na
vopred ponuknute type scanov. Parameter vzdy umozni zadanim lubovolnych TCP
flagov vytvorit vlastny scan. Neobmedzujte svoju kreativitu pri vyhybani sa systemom IDS, ktorych
vyrobcovia jednoducho prelisovali manual k Nmapu a pridali specificke pravidla.
Argumentom parametru moze byt hodnota cisla flagu ako napr.
9 (PSH a FIN), no je jednoduchsie pouzivat nazvy, staci zlepit dokopy lubovolnu kombinaciu flagov
URG,
ACK, PSH,
RST, SYN a
FIN. Napriklad nastavi vsetko, hoci to nie je prilis uzitocne pre scanovanie. Poradie nazvov nie
je dolezite.Okrem specifikovanie ziadanych flagov je mozne
zadat typ TCP scanu (napriklad alebo ), co
Nmapu napovie ako interpretovat odpovede. Napriklad SYN scan povazuje
absenciu odpovede za port so stavom
filtrovany, kym FIN scan odpovie na rovnaku situaciu
otvoreny|filtrovany. Nmap bude postupovat
presne tak ako pri zakladnych typoch scanu, no pouzije TCP flagy, ktore budu
zadane. Ak nie je zadany zakladny typ scanu, pouzije sa SYN scan.
(Scan naprazdno - Idlescan)Tato pokrocila metoda umoznuje naozaj
slepy scan portov cielovej stanice s tym, ze z lokalnej skutocnej
IP adresy nie su odosielane ziadne pakety. Namiesto toho sa pouzije
utok po bocnom kanale, ktory vyuziva
delenie na IP fragmenty a predpovedatelne tvorenie sekvencie ID cisel na zombie hostitelovi.
Tym sa zhromazduju informacie o otvorenych portoch na cielovom pocitaci.
IDS systemy zobrazia, ze scan pochadza z pocitaca zombie, ktory bol specifikovany, musi
byt samozrejme aktivny a splnat urcite kriteria.
Tento fascinujuci typ scanu je prilis zlozity na plny popis v tejto prirucke,
takze som uplne detaily popisal neformalnym sposobom a ulozil na adresu
.Okrem toho, ze tento scan je vynimocne nenapadny (kvoli svojej slepej povahe),
umoznuje zmapovat doveryhodne vztahy medzi pocitacmi zalozene na IP adrese.
Zoznam portov zobrazuje otvorene porty
z pohladu zombie hostitela. Takze je mozne
pokusit sa o scan cielovej stanice pouzitim roznych zombie pocitacov, o ktorych
si myslite, ze su doveryhodne (pomocou pravidiel routra alebo paketoveho filtra).Ak sa ma na strane zombie pocitaca testovat specificky port kvoli zmenam hodnoty IPID,
pridajte dvojbodku nasledovanu cislom portu. Inak Nmap pouzije povodny port urceny na
tcp pingovanie - 80.
(Scan protokolu IP)Scan protokolu IP umoznuje urcite, ktore protokoly IP (TCP, ICMP, IGMP, atd.)
su podporovane cielovymi pocitacmi. Technicky to nie je scan portov, pretoze prebieha
roznymi cislami protokolov IP a nie cislami portov protokolov TCP a UDP. Aj napriek tomu
pouziva parameter na vyber scanovanych cisel protokolov, oznamuje
vysledky v normalnom formate tabulky portov a dokonca pouziva ten isty mechanizmus scanu
ako prave metody scanovania portov, takze je dost blizko scanovaniu portov, a preto patri sem.
Okrem toho, ze je uzitocny vo vlastnom zmysle,
scan protokolov demonstruje silu open-source softwaru.
Zatial co zakladna myslienka je dost jednoducha, nerozmyslal som nad jej pridanim ani
som nedostal poziadavky o takuto funkcionalitu.
Potom vsak v lete roku 2000 dostal Gerhard Rieger tento napad, napisal excelentny
patch, ktory to implementoval a poslal ho do mailing listu skupiny hackerov nmapu.
Tento patch som vlozil do stromu Nmapu a na dalsi den vydal novu verziu.
Len malo zastupcov komercneho softwaru ma nadsenych uzivatelov, ktori vytvaraju a prispievaju
svojimi vylepseniami. Scan protokolu funguje podobne ako UDP scan.
Namiesto iterovania cez cisla portov v policku UDP paketu vysiela Nmap hlavicky
IP paketu a iteruje cez 8-bitove policko IP protokolu. Hlavicky su zvycajne prazdne, neobsahuju
data a ani patricnu hlavicku pre vyhlaseny protokol.
Troma vynimkami su protokoly TCP,
UDP a ICMP. Tu je patricna hlavicka protokolu zahrnuta, pretoze
niektore systemy ich inak neodoslu a pretoze uz Nmap obsahuje funkcie na ich
vytvorenie.
Namiesto pozorovania sprav ICMP port
unreachable protocol sa scan zaujima o spravy ICMP
protocol unreachable. Ak Nmap prijme od cieloveho hostitela akukolvek odpoved akehokolvek
protokolu, Nmap oznaci protokol ako otvoreny.
Chybova sprava ICMP protocol unreachable(typ 3, kod 2) sposobi,
ze sa protokol oznaci ako
zatvoreny Dalsie chybove spravy ICMP unreachable (typ 3, kod
1, 3, 9, 10 alebo 13) sposobia stav protokolu ako
filtrovany (hoci v rovnakom momente dokazuju, ze je
otvoreny).
Ak sa neobdrzi ziadna odpoved po retransmisiach, protokol sa oznaci ako
otvoreny|filtrovany.
(FTP bounce scan) Zaujimavou funkciou protokolu FTP (RFC 959) je
podpora takzvanych proxy ftp spojeni, co umoznuje pouzivatelovi pripojit sa
k jednemu FTP serveru a potom ziadat o to, aby sa subory posielali serveru tretej strany.
Tato vlastnost je priam idealna pre zneuzitie na mnohych urovniach
, takze mnohe servery ju prestali podporovat.
Jednym z tychto zneuziti tejto funkcie je vyvolanie situacie, kde FTP server scanuje
porty dalsich hostitelskych stanic. Je mozne zaradom jednoducho poziadat FTP server o zaslatie
subor na kazdy zaujimavy port cieloveho hostitela. Chybova sprava opise, ci
je port otvoreny alebo nie. To je dobry sposob ako obist firewally, pretoze FTP servery
organizacii su casto umiestnovane tam, kde maju vacsi pristup k vnutornym hostitelskym staniciam ako kazda
ina stanica na internete. Nmap podporuje ftp bounce scan pomocou parametra .
Ako argumenty pouziva
pouzivatelske meno:heslo@server:port.
Server je nazvom IP adresy zranitelneho FTP servera.
Tak ako aj pri normalnej URL adrese, aj tu sa moze vynechat
pouzivatelske meno:heslo,
pricom sa pouziju anonymne prihlasovacie udaje (pouzivatel:
anonymous heslo:-wwwuser@).
Cislo portu (a predchadzajuca dvojbodka ) mozu byt vynechane tiez, pricom sa vtedy pouzije povodny
FTP port (21) na
serveri.Tato zranitelnost bola siroko rozsirena v roku 1997,
ked bol Nmap vydany, no bola do velkej miery opravena. Zranitelne servery su stale
naokolo, takze stoji to za to vyskusat ich. Ak je cielom obist firewall, je mozne
scanovat cielovu siet s cielovym portom 21 (alebo aj akekolvek ftp sluzby ak sa scanuju
vsetky porty s detekciou verzie) a potom vyskusat spustit scan bounce scan ftp.
Nmap prezradi, ci je hostitelska stanica zranitelna alebo nie.
Ak sa pokusate len zakryt svoje stopy, nie je nevyhnutne (a v skutocnosti by sa ani nemalo) obmedzovat
sa na hostitelske stanice v cielovej sieti. Pred scanovanim nahodnych internetovych adries
na zistenie zranitelnych FTP serverov zoberte do uvahy, ze systemovym administratorom
sa nemusi pacit zneuzitie ich serverov takymto sposobom.Specifikacia portu a poradie scanovOkrem vyssie rozoberanych scanov ponuka Nmap moznosti na
specifikaciu scanovanych portov a ci ma byt poradie scanov nahodne alebo
sekvencne. V predvolenom nastaveni scanuje Nmap
vsetky porty do a vratane 1024 tak ako aj vyssie cisla portov zobrazenych pre scanovane
protokoly v subore nmap-services.
(Scanovat len specifikovane porty)
Tento parameter specifikuje, ktore porty sa maju scanovat a prepise povodne nastavenie.
Mozu byt pouzite jednotlive cisla portov, ako aj rozsahy oddelene spojovnikom, napr. 1-1023.
Zaciatocne a konecne hodnoty rozsahu mozu byt vynechane, cim budu Nmapom pouzite hodnoty
1 resp. 65535. Je teda mozne specifikovat parameter
cim sa budu scanovat porty od 1 po
65535. Po explicitnom specifikovani je mozne scanovat aj port 0.
Pri scanovani protokolu IP ,(), tento parameter specifikuje cisla protokolov,
ktore sa maju scanovat
(0-255).Ak sa scanuju TCP aj UDP porty, mozete prislusny protokol charakterizovat
pismenami T:
alebo U: predchadzajucimi cislo portu.
Toto pismeno plati az kym nespecifikujete dalsie pismeno.
Napriklad argument bude scanovat UDP
porty 53,111 a 137 a takisto spomenute TCP porty. Na to, aby sa scanovali TCP aj UDP, je
potrebne zadat parameter
a aspon jeden typ TCP scanu (napriklad
, alebo
). Ak nie je zadane ziadne urcujuce pismeno, cisla portov su pridane
do zoznamu vsetkych protokolov.
(Rychly scan s limitovanym poctom portov)
Udava, ze je nutne scanovat len porty uvedene v subore nmap-services
ktory je dodavany spolu s Nmapom(alebo subor s protokolmi pomocou parametra
). Tento sposob je ovela rychlejsi ako
scannovanie vsetkych 655535 portov na hostitelskej stanici.
Pretoze tento zoznam obsahuje viac ako TCP portov, nie je tu vyrazny rozdiel
oproti povodnemu TCP scanu s okolo 1650 portmi. Rozdiel je dramaticky, ak specifikujete svoj vlastny
maly subor
nmap-services pouzitim parametru
.
(Nevyberat porty nahodne)
V predvolenom nastaveni vybera Nmap poradie scanovanych portov nahodne
(okrem toho, ze iste vseobecne pristupne porty su z
dovodov efektivnosti na zaciatok). Tento proces randomizacie je za normalnych okolnosti
ziadany, ale parametrom
je mozne specifikovat sekvencne scanovanie portov.Detekcia sluzby a verziePouzite Nmap na vzdialeny pocitac a ten potom moze prezradit,
ze porty 25/tcp, 80/tcp a 53/udp su otvorene. Pouzitim svojej databazy
nmap-services s obsahom okolo 2,200 znamych sluzieb,
by dokazal Nmap oznamit, ze tieto porty pravdepodobne patria postovemu serveru (SMTP)
webovemu serveru (HTTP) a DNS serveru (DNS). Toto vyhladanie je obycajne
presne - drviva vacsina daemonov nacuvajucich na TCP porte 25 su v skutocnosti
postove servery, no urcite sa na tomto neda stavit bezpecnost, ludia mozu mat
spustene sluzby na zvlastnych portoch.Aj ked ma Nmap pravdu a hypoteticky server ma spustene
servery SMTP, HTTP a DNS, neznamena to vela informacii. Ked vykonavate odhady zranitelnosti alebo
hoci aj jednoduche supisy siete vasich firiem alebo klientov, chcete naozaj vediet aj to,
ake mailove a DNS servery a ich verzie su spustene. Ziskanie presneho cisla verzie
pomaha dramaticky urcit, pred akymi zneuzitim je server zranitelny. Detekcia verzie pomaha zistit tuto
informaciu. Po zisteni TCP alebo UDP portov pomocou jednej z metod scanu,
detekcia verzie skuma tieto porty, aby zistila, co na nich bezi.Subor s databazou
nmap-service-probes obsahuje testy na
dotazovanie rozlicnych sluzieb a zodpovedajucih vyrazov na rozpoznanie a vykonanie
rozboru odpovedi. Nmap sa pokusa urcit protokol sluzby (napriklad ftp, ssh, telnet, http), nazov aplikacie
(napriklad ISC
Bind, Apache httpd, Solaris telnetd), cislo verzie,
hostitelsky nazov, typ zariadenia(napr. tlaciaren, router), skupinu OS
(napr. Windows, Linux) a niekedy rozlicne podrobnosti ako napr. ci je X server otvoreny spojeniam
verziu SSH protokolu alebo pouzivatelske meno v programe KaZaA). Samozrejme, ze vacsina sluzieb
neposkytuje tieto informacie. Ak bol Nmap kompilovany s podporou OpenSSL ,
pripoji sa k SSL serverom, aby urcil sluzbu nacuvajucu za zasifrovanou vrstvou.
Ked su objavene RPC sluzby, automaticky sa pouzije Nmap RPC grinder ()
na urcenie RPC programu a cisla verzie. Po tom, co scan UDP portov nie je
schopny urcit, ci je port otvoreny alebo zatvoreny, niektore UDP porty su oznacene v stave
otvoreny|filtrovany. Detekcia verzie sa
bude snazit vyvolat odpoved tychto portov (presne tak ako aj pri otvorenych portoch)
a stav sa moze zmenit na otvoreny, ak tato detekcia uspeje. Pri
otvorenych|filtrovanych TCP portoch sa postupuje
tou istou cestou. Je potrebne si vsimnut, ze parameter Nmapu
medzi inym ponuka detekciu verzie. Dokument opisujuci priebeh, pouzitie a vlastne prisposobenie
detekcie verzie je dostupny na adrese .Ak Nmap dostane odpovede od sluzby, ale nevie ju
priradit ziadnej polozke v databaze, zobrazi specialny fingerprint a takisto
adresu URL, kde mozete odoslat odpoved, ak ju poznate.
Venujte prosim tejto operacii niekolko minut, aby bola na prospech
kazdemu. Vdaka tymto odpovediem ma Nmap okolo 3,000 zodpovedajucich vzorov pre viac
ako 350 protokolov napr. smtp, ftp, http, atd. Detekcia verzie sa povoli a da sa ovladat nasledujucimi parametrami:
(Detekcia verzie)Umoznuje detekciu verziu ako bolo spomenute vyssie.
Je mozne pouzit namiesto toho parameter , ktorym sa povoli aj
detekcia OS.
(Pri detekcii verzie nevynechavat ziadne porty)
V predvolenom nastaveni Nmap pri detekcii verzie vynechava
TCP port 9100, pretoze niektore tlaciarne tlacia vsetko co pride na tento port a vedie
to k hromade vytlacenych stran poziadaviek HTTP get request, poziadaviek
SSL session request, atd..
Toto spravanie sa da zmenit upravenim alebo odstranenim direktivy Exclude
v suborenmap-service-probes alebo mozete zadat
parameter, aby sa scanovali vsetky porty nehladiac na direktivu
Exclude.
(Nastavit intenzitu scanovania verzie)
Ak sa vykonava scan verzie (), Nmap odosiela seriu testov
, pricom kazdemu z nich je priradena vynimocna hodnota medzi
1 az 9. Kym testy z nizsou hodnotou su ucinne na testovanie sirokej skalu
beznych sluzieb, vyssie cisla su len zriedkavo uzitocne. Stupen intenzity udava, ktore
testy sa maju pouzit. Cim vyssie je cislo, tym vacsia je pravdepodobnost, ze sluzba
bude spravne indentifikovana, taketo scany vsak trvaju dlhsie. Predvolena hodnota je 7.
Ak je test registrovany na cielovy port v subore
nmap-service-probes pomocou direktivy ports,
tento test sa vykona bez ohladu na stupen intenzity. Zaistuje to to, ze DNS testy sa budu vzdy
robit vhladom na lubovolny otvoreny port 53, SSL skuska vzhladom na port 443, atd..
(Povolit light mod )
Je to pohodlny alias pre parameter
. Tento light mod znacne urychluje
scanovanie verzie, no znizuje sa pravdepodobnost spravnej identifikacie sluzieb.
(Vyskusat kazdy test)
Alias pre parameter ,
cim sa zaisti vykonanie kazdeho testu voci kazdemu portu.
(Sledovat cinnost scanovania verzie)
Nmap zobrazi rozsiahle debugovacie
informacie cinnosti scanovania verzie. Je to podmnozina vystupu pri zadani
parametra .
(RPC scan) Tato metoda funguje v spojeni s rozlicnymi scanmi portov
Nmapu, vsetky zistene otvorene TCP/UDP porty
zahlti NULL prikazmi programu SunRPC za ucelom zistenia, ci su to
porty sluzby RPC a ak ano, ktoremu programu a cisle verzii sluzia.
Rovnake informacie sa daju efektivne ziskat pomocou parametru
rpcinfo -p aj ked je mapovac portov cielovej
stanice za firewallom alebo chraneny TCP wrappermi.
Decoye momentalne nefunguju s RPC scanom.
Toto je automaticky povolene ako cast scanu verzie pri zadani parametra
(). Kedze detekcie verzie obsahuje okrem tohoto este
ovela viac veci, parameter
sa pouziva zriedka.Detekcia OSJedna z najznamejsich funkcii Nmapu je vzdialena
detekcia OS pomocu fingerprintingu stacku TCP/IP. Nmap odosiela vzdialenej hostitelskej stanici
rad TCP a UDP paketov a potom skuma kazdy bit odpovedi.
Po vykonani serie testov ako napr. sampling TCP
ISN, poradie a podpora moznosti TCP, sampling IPID a
pociatocna kontrola velkosti okienka porovnava Nmap vysledky so databazou
nmap-os-fingerprints skladajucej sa z viac ako 1500 znamych
odtlackov OS a pri zhode zobrazi podrobnosti o OS.
Kazdy fingerprint zahrna textovy popis OS vo volnom formate a klasifikaciu poskytujucu
nazov vyrobcu OS (napr. Sun), zakladny typ OS
Each fingerprint includes a freeform textual description of the
(napr. Solaris), generacia OS (napr. 10) a typ zariadenia (bez specialneho ucelu, router, switch, herna konzola,
atd).Ak Nmap nedokaze odhadnut OS pocitaca a podmienky su pritom dobre
(napr. zistilo sa, ze aspon 1 port je otvoreny a aspon 1 zatvoreny),
Nmap poskytne adresu URL, na ktorej mozete zadat fingerprint, ak ste si isty OS beziacom na vasom pocitaci.
Tymto prispievate do mnoziny operacnych systemov znamych Nmapu a proces sa spresnuje pre kazdeho dalsieho.
Detekcia OS umoznuje vykonanie niekolko dalsich testov, ktore vyuzivaju informacie vzdy nadobudnute
tymto procesom. Jednym z nich je merania uptimu, ktore na odhadnutie casu od posledneho
restartovania pocitaca vyuziva moznost TCP timestamp
(RFC 1323). Parameter sa oznamuje len pre pocitace, ktore poskytuju tuto informaciu. Dalsim z nich je
TCP Sequence Predictability Classification - Klasifikacia predvidatelnosti TCP sekvencie.
Toto meranie zistuje, ake je narocne nadviazat falosne TCP spojenie so vzdialenou hostitelskou
stanicou a je uzitocne na zistovanie slabin relacii, ktore stavaju doveru na
zdrojovej IP adrese (rlogin, firewall, filtre, atd.) alebo takisto je uzitocne kvoli moznosti
ukryvania zdroja utoku. Tento typ falsovania sa dnes vykonava zriedkavo, no mnohe
pocitace su na to stale zranitelne. Vlastne cislo obtiaznosti je zalozene ne statistickom vzorkovani
a moze sa menit. Vseobecne je lepsie pouzit anglicku klasifikaciu, napr.
worthy challenge - hodne vyzvy alebo trivial joke - jednoduchy zabava.
Normalne sa to oznamuje len v mode verbose ().
Ak sa povoli verbose mod sucasne z parametrom , oznamuje sa aj Vytvaranie
sekvencie IPID. Vacsina pocitacov sa nachadza
inkrementalnej triede, co znamena, ze zvysuju
cislo policka ID v IP hlavicke kazdeho odoslaneho paketu, co z nich robi zranitelne ciele pre niektore pokrocile utoky,
ktore su zalozene na zbere informacii a falsovani. Dokument popisujuci cinnost, pouzitie a priposobenie
detekcie verzie je dostupny vo viacerych jazykoch na adrese..Detekcia OS je povolovana a ovladana nasledujucimi moznostami parametrov:
(Povolit detekciu OS)
Umozni detekciu OS podla vyssie opisaneho rozboru. Alternativne sa pouzitim parametra
umozni detekciu OS aj verzie.
(Obmedzit detekciu OS len na slubne cielove stanice)
Detekcia OS je ovela efektivnejsie, ak je zisteny aspon
1 port otvoreny a 1 port zatvoreny. Po nastaveni tohoto parametra sa nebude vykonavat
detekcia OS na pocitacoch, ktore nesplnaju tieto kriteria, cim sa da usetrit
podstatny cas, hlavne pri scanoch s parametrom aplikovanych na
mnohych hostitelskych staniciach, no je to dolezite len ak sa pre detekciu OS zada parameter alebo .
; (Odhadnut vysledky
detekcie OS)
Ak je Nmap nedokaze detekovat uplnu zhodu s OS,
niekedy navrhne dalsie co najblizsie zhody ako moznosti. Nmap to normalne vykonava,
len ak je zhoda velmi podobna. Kazda z tychto dvoch ekvivalentnych moznosti sposobi agresivnejsi
odhad Nmapu.
Casovanie a vykonJednou z mojich najvyssich priorit pri vyvoji Nmapu
bol vzdy vykon. Predvoleny scan (nmap
hostname) hostitelskej stanice v mojej lokalnej
sieti trva patinu sekundy. Trva to sice menej ako zmrknutie oka, ale pridava to na vyzname,
ak sa scanuju stovky alebo tisice hostitelskych stanic. Navyse urcite moznosti scanov
ako UDP scanovanie a detekcia verzie mozu podstatne zvysit cas vykonanavania scanu, tak ako aj
urcite nastavenia firewallu, zvlast obmedzenie poctu odpovedi.
Nmap sice na zrychlenie scanov vyuziva paralelizmus a mnohe pokrocile algoritmy,
je to pouzivatel, kto ma absolutnu kontrolu nad tym, ako Nmap pracuje.
Ak je cas obmedzenim, pouzivatelia na urovni expertov sikovne produkuju prikazu, aby ziskali len informacie,
o ktore maju zaujem. Metody zlepsujuce casy scanov zahrnuju
vynechanie nekritickych testov a prechadzanie na poslednu verziu Nmapu
(zdokonolanie vykonu sa vykonava casto). Optimalizovanie casovych parametrov
dokaze takisto sposobit markantny rozdiel. Tieto parametre su spomenute nizsie:
;
(Prisposobit velkosti paralelnych skupin pri scanovani)Nmap ma schopnost sucasne scanovat porty alebo verzie viacerych hostitelskych stanic a to takym, sposobom,
ze sa cielovy rozsah IP adries rozdeli do skupin a potom sa scanuje jedna skupina sucasne. Vo vseobecnosti
su efektivnejsie vacsie skupiny, no nevyhodou je, ze vysledky nemozu byt poskytnute, kym nie je ukoncene cela skupina.
cize ak Nmap zacne so skupinou velkosti 50, pouzivatel nedostane ziadnu spravu (okrem updatov v mode verbose) az kym
nie je ukoncenych vsetkych 50 hostitelskych stanic.
V predvolenom nastaveni riesi Nmap tento konflikt
kompromisom. Zacne skupinou o pocte 5, takze prve vysledky sa dostavia rychlo
a potom sa velkost skupiny zvysi na 1024. Presne predvolene cisla
zavisia od zadanych parametroch. Z dovodov efektivity pouziva Nmap rozsiahle skupiny pre UDP scany alebo malo
portove TCP scany. Po zadani maximalnej velkosti skupiny pomocou parametra
Nmap nikdy neprokroci tuto hodnotu.
Po zadani minimalnej velkosti skupiny parametrom nebude Nmap pouzivat mensie skupiny
ako bolo zadane. Ak vsak nie je dostatok hostitelskych stanic, Nmap moze pracovat s mensimi skupinami ako specifikovane
parametrom. Aj ked je to zriedkavo vyuzivane, oba parametre mozu byt pouzite sucasne na specifikovanie rozsahu skupiny.
Hlavne pouzitie tychto parametrov je specifikacia
vacsieho minima velkosti skupiny, takze plny scan pobezi rychlejsie.
Vseobecna volba velkosti minima na scan porcii siete triedy C je cislo 256.
Nie je obvykle prilis uzitocne zvysovat toto cislo, ak sa jedna o scan s mnohymi portmi.
Pri scanoch s par cislami portov je velkost skupiny hostitelskych pocitacov rovna 2048 alebo viac prospesna.
;
(Upravit paralelizaciu testov)Tieto parametre ovladaju absolutny pocet testov, co
moze byt nedokoncene pre skupinu hostitelskych pocitacov.
Pouzivaju sa pri scanovani portov a zistovenie hostitelskych pocitacov.
V povodnom nastaveni pocita vzdy sa meniaci idealny
stav paralelizmu v zavislosti na vykone siete. Ak su pakety zahadzovane,
Nmap spomali a povoli menej neukoncenych scanov. Idealny pocet
testov pri dobrych podmienkach v sieti pomaly stupa. Tieto parametre
urcuju na tuto premennu minimalnu a maximalnu hranicu. V predvolenom nastaveni
sa idealny paralelizmus moze znizit az na 1, ak sa sietove testy javia ako nespolahlive
a na druhej strane idealizmus stupa pri vybornych podmienkach.Najcastejsim pouzitim je nastavenie parametra
na vyssiu hodnotu ako je 1 kvoli
urychleniu scanovania pomalych hostitelskych stanic alebo sieti. Je to riskantny
parameter na zabavu, pretoze prilis vysoka hodnota moze ovplyvnit presnost
a takisto schopnost Nmapu ovladat paralelizmus dynamicky podla sietovych podmienok.
Hodnota desat moze byt rozumna, hoci tuto hodnotu nastavujem len ako poslednu moznost.
Parameter je niekedy nastaveny na 1, aby sa predislo
odosielaniu viac ako jedneho testu sucasne. Moze sa to hodit v kombinacii s parametrom
(rozoberanom nizsie), hoci tento druhy parameter je dostatocne silny, aby sam sluzil svojmu ucelu.
,
,
(Nastavit casovy interval testu)Nmap si uchovava hodnotu casoveho intervalu kvoli urceniu, ako dlho bude cakat na odpoved
testu predtym ako to vzda alebo vykona retransmisiu testu. Pocita sa to
na zaklade casov odpovedi predchadzajucich testov. Ak je latencia siete vyznamnym faktorom
a meni sa, tento casovy interval narastie na niekolko sekund.
Takisto zacina na opatrnej(vysokej) urovni a ak Nmap scanuje neodpovedajuce
hostitelske stanice, moze to na nej aj chvilu ostat.Tieto parametre maju hodnotu v milisekundach alebo je mozne pridat argument jednotky
s, maleboh to
a takto sa cas specifuje v sekundach, minutach alebo hodinach.
Specifikovanie nizsich hodnot parametrov a
ako predvolene hodnoty moze
vyznamne skratit casy scanov, co plati hlavne pre scany bez pingu
() a dalej pre velmi filtrovane siete, nie je vsak dobre
zadavat prilis kratke hodnoty, pretoze potom moze scan pozadovat viac casu ako je specifikovane
a pre vela testov vyprsi casovy interval, zatial co odpoved je stale na ceste.
Ak su vsetky hostitelske stanice v lokalnej sieti, rozumna hodnota intervalu je
100 milisekund . Ak je zahrnute routovanie, je potrebne
najprv vykonat ping hosta bud pomocnym programom ICMP ping alebo prisposobenym
programom pre tvorenie paketov ako napr. hping2, ktory sa pravdepodobnejsie dostane
cez firewall. Vsimnite si maximalny cas hodnoty RTT (Maximum Round Trip) asi 10 paketov.
Tuto hodnotu mozete zdvojnasobit pre
a stroj- alebo stvornasobit pre parameter.
Vseobecne nenastavujem tento parameter
maximum rtt pod 100ms, bez ohladu na hodnoty pingov, a ani ich nezvysujem nad 1000ms.Parameter je malokedy pouzivany. Moze sa zist,
ked je siet taka nespolahliva, ze aj predvolena hodnota Nmapu je prilis agresivna.
Kedze vsak Nmap pri spolahlivej sieti znizuje casovy interval na minimum, tento
parameter nie je potrebny a jeho pouzitie by sa malo nahlasit ako bug do mailingu listu nmap-dev.
(Specifikovat maximalny pocet
retransmisii testov scanovania portov)
Ak Nmap nedostane odpoved na test scanu portov, moze to znamenat
, ze port je filtrovany alebo ze bol test alebo odpoved jednoducho stratena po sieti. Je mozne tiez,
ze cielova stanica obmedzenie poctu odpovedi a to docasne zablokovalo odpoved, takze
sa Nmap opatovna pokusi poslat pociatocny test. Ak Nmap detekuje slabu sietovu
spolahlivost, moze sa pokusit o retransmissiu viackrat pred ukoncenim snahy.
Na jednej strane to zvysuje presnost, no takisto aj cas scanov.
Ak je kriticky vykon, scany mozu byt urychlenie limitovanim povoleneho poctu retransmisii.
Retransmisiam sa zabrani parametrom
, no zriedkakedy sa to odporuca.
Predvolena hodnota (bez parametru) je 10
ten retransmisii. Ak sa siet zda byt spolahliva a cielove stanice
neobmedzuju pocet odpovedi, Nmap obycajne vykona len jednu retransmisiu,
takze vacsina scanov ani nie je ovplyvnena, ak sa parameter
znizi na 3. Tieto hodnoty dokazy podstatne zrychlit
scany pomalych (s obmedzenim poctu odpovedi) hostitelskych stanic. Ak Nmap prilis skoro zanechava
testy portov, obycajne sa stracaju nejake informacie, hoci moze to stale moze byt uprednostnovane pred
situaciou, kde uplynie interval parametru
a stratia sa vsetky informacie o cielovej stanici.
(Zanechat pomale cielove stanice)
Niektore hostitelske stanice jednoducho potrebuju dlhy cas na to, aby boli prescanovane,
co moze byt dosledkom zleho vykonu alebo nespolahliveho sietoveho hardwaru/softwaru, obmedzeniu poctu paketov
alebo obmedzujuceho firewallu. Najpomalsich malo percent scanovanych hostitelskych stanic moze
zabrat podstatu casu scanu. Niekedy je lepsie orezat tieto straty casu a preskocit taketo stanice uz na zaciatku.
Da sa to dosiahnut zadanim parametra
s pozadovanym poctom milisekund cakania.
Alternativne je mozne pripojit argument jednotky
s, m aleboh to
, cim sa casovy interval specifikuje v sekundach, minutach alebo hodinach. Ja casto specifikujem
hodnotu
30m, aby Nmap neplytval viac ako polhodinou
na 1 stanicu. Vsimnite si, ze Nmap moze sucasne scanovat dalsie hostitelske stanice, takze to nie je
uplna strata casu. Hostitelska stanica, ktorej casovy interval vyprsi sa vynecha a nezobrazi sa pre nu
tabulka portov, detekcia OS, ani detekcia verzie.
;
(Nastavit oneskorenie medzi testami)Tento parameter sposobi, ze Nmap bude cakat aspon
zadany hodnotu v milisekundach medzi odoslanim dalsieho testu hostitelskej stanice.
Tak ako aj pri inych parametroch casu, aj tu je mozne pripojit s,
maleboh ako argument na specifikovanie
oneskorenia v sekundach, minutach alebo hodinach namiesto ms.
Hodi sa to hlavne v pripade obmedzenia poctu odpovedi. Pocitace so systemom Solaris ako aj niektore ine
obycajne na test UDP scanu odpovedia jednou ICMP spravou za sekundu.
Vsetko co sa odosle Nmapom navyse, bude stratene.
Parameter nastaveny na
1s udrzi Nmap na takejto pomalej rychlosti.
Nmap sa pokusi detekovat obmedzenie a priposobit oneskorenie scanu podla toho,
ale nie je na skodu specifikovat to explicitne, ak uz viete, aka rychlost je najvhodnejsia.Ak Nmap prisposobuje oneskorenie scanu smerom nahor
pri obmedzeni rychlosti odpovedi, scan sa dramaticky spomali.
Parameter specifikuje najvacsie oneskorenie,
ktore povoli Nmap. Nastavenie prilis nizkej hodnoty moze pri zavedenej obmedzenej rychlosti
odpovedi viest
k zbytocnym retransmisiam paketov a moznym vynechanym portom.Dalsie pouzitie parametra je vyhnut sa systemom detekcie
(IDS) a narusenia (IPS) zalozenych na prahovej hodnote.
(Nastavit casovu sablonu)
Je sice pravda, ze vyssie rozoberane jemne casove ovladanie scanov je mocne a ucinne,
no niektori ludia to povazuju za dezorientujuce.
Niekedy dokonca moze volenie primeranych hodnot zabrat viac casu
ako scan, ktory sa pokusat optimalizovat, a tak Nmap ponuka jednoduchsi pristup so siestimi
sablonami. Je ich mozne specifikovat parametrom
a ich cislami(0 - 5) ci menami.
Nazvy sablon tu paranoid (0), sneaky (1), polite (2), normal
(3), aggressive (4) a insane (5). Prve dve su urcene
pre obidenie systemov IDS. Mod Polite sa spomali, ked scan pouziva mensiu
sirky pasma a prostriedkov cieloveho pocitaca. Mod Normal je predvolenym a teda
neurobi ziadnu zmenu. Mod Aggressive urychli scan predpokladom,
ze ste na rozumne rychlej a spolahlivej sieti. Konecne mod Instane predpoklada, ze ste na vynimocne
rychlej sieti alebo chcete obetovat presnost za rychlost.Tieto sablony dovoluju pouzivatelovi specifikovat agresivitu, zatial co, Nmap sam vyberie
presne hodnoty casovania. Sablony takisto vykonavaju male prisposobenia rychlosti, na ktore momentalne
neexistuju jemne ovladacie parametre. Napriklad moznost
zakazuje, aby dynamicke oneskorenie scanu
prekrocilo
10ms pre TCP porty a ohranici tuto hodnotu 5 milisekundami.
Pokial sa sablona specifikuje ako prva, moze byt pouzita v kombinacii s jemnym ovladanim, inak
sa povodne hodnoty pre sablony prepisat vami specifikovanymi hodnotami.
Odporucam pouzitie parametra ak sa scanuju moderne a spolahlive
siete. Aj ked zadate dalsie jemne ovladanie kvoli dodatocnym malym povolenym optimalizaciam, zachovajte
tento parameter (na zaciatok prikazoveho riadku).Ak ste na poriadnej sieti s broadbandovym alebo ethernetovym pripojenim,
vzdy by som odporucal pouzitie parametra.
Niektori ludia preferuju moznost
, hoci pre mna je prilis agresivna.
Ini zasa niekedy zadaju , pretoze si myslia, ze tymto je
mensia pravdepodobnost sposobenia spadnutia pocitaca alebo pretoze sa sami
vo vseobecnosti povazuju za zdvorilych. Casto si pritom neuvedomuju, za moznost je skutocne velmi pomala. Takyto scan moze trvat desatkrat viac
ako povodny scan.
Spadnutia pocitacov a problemy so sirkou pasma su zriedkave pri pouziti predvoleneho parametra casovania
() a tak ho normalne odporucam pre pozornych scannerov.
Vynechanie detekcie verzie je vsak casovo ovela ucinnejsie ako hranie sa s hodnotami casovania.Zatial co moznosti a mozu byt uzitocne
pre vyhnutie sa upozorneni systemov IDS, scanovanie tisicov portov pocitacov bude trvat vynimocne dlho.
Pri takomto dlhom scane je mozno lepsie nastaveni presnych hodnot casovania
namiesto spolahnutia sa na vopred pripravene moznostia
.Hlavnymi nasledkami pouzitia parametru je serializacia scanovania portov,
takze sa sucasne scanuje len jeden port, a pred vyslanim dalsieho testu sa caka 5 minut.
Moznosti a
su podobne, ale medzi jednotlivymi testami cakaju len 15 resp. 0.4
sekund. Moznost je predvolenou pre Nmap a zahrna paralelizaciu.
Moznost
je ekvivalentna zadaniu a nastavuje maximalne oneskorenie
TCP scanu na 10 ms. Moznost je ekvivalentna zadaniu
a takisto nastavenia
maximalneho oneskorenia TCP scanu na 5ms.Vyhnutie sa firewallu/ Systemu IDS a falsovanieMnohi priekopnici internetu si predstavovalo globalnu
otvorenu siet s univerzalnym priestorom IP adries umoznujucim
vykonavat virtualne spojenia medzi lubovolnymi dvoma uzlami. To
umoznuje hostitelskym staniciam posobit ako ozajstni peers, poskytujuc a ziskavajuc informacie
od kazdeho jedneho. Ludia mohli pristupovat na vsetky domace systemy z prac a tak zmenit nastavenie
ovladania klimy alebo otvorenia dveru pre skorych hosti. Tato vizia univerzalnej
konektivity je vsak potlacena nedostatkom priestoru IP adries a obavami z bezpecnosti.
Na zaciatku 90.rokov zacali organizacie nasadzovat firewally na rychly ucel obmedzenia
konektivity.
Obrovske siete boli uzavrete pred nefiltrovanym intenernetom pomocou aplikacnych proxy serverov,
prekladu NAT a paketovych filtrov. Neobmedzeny tok informacii dal zelenu uzkej regulacii
odsuhlasenych komunikacnych kanalov a obsahu, ktory cez ne prechadza. Sietove prekazky ako firewally vedia velmi stazit zmapovanie siete. Nezjednodusi sa to,
pretoze potlacenie neplanovaneho skumania siete ja casto klucovym cielom implementovania
tychto zariadeni. Napriek tomu obsahuje Nmap mnohe funkcie, ktore pomahaju
pochopit tieto zlozite siete a overit, ze filtre funguju podla ocakavania, dokonca podporuje aj
mechanizmy obidenia pre slabo implementovane obrany. Jednou z najlepsich metod pochopenia situacie
vasej sietovej bezpecnosti je pokusit sa ju prelomit.
Predstavte si seba ako utocnika a nasadte proti vasim sietam metody z tejto sekcie.
Spustite scan FTP bounce ftp, Idle scan, utok pomocou fragmentacie alebo sa pokuste pretunelovat
cez jeden z vasich proxy serverov.
Okrem obmedzovania sietovej aktivity spolocnosti stale viac
monitoruju traffic v sieti pomocou systemov na detekciu preniknutia (IDS).
Vsetky hlavne systemy IDS sa dodavaju s pravidlami vytvorenymi na detekciu scanov Nmapu,
pretoze tieto scany su niekedy pociatkom pre utoky. Vela tychto produktov sa casom
vyvinulo do systemov s
prevenciou preniknutia (IPS), ktore aktivne blokuju
traffic, ktory sa zda byt skodlivy. Spolahlive detekovanie zlych umyslov pomocou analyzy
dat v paketoch je nanestastie pre sietovych
administratorov a vyrobcov systemov IDS tazky problem. Utocnici s trpezlivostou,
zrucnostou a pomocou urcitych parametrov Nmapu mozu obycajne zabranit detekcii systemu IDS.
Na druhej strane sa administratori musia popasovat s velkym mnozstvom falosnych
pozitivnych vysledkov, kde sa nespravne diagnizuje nevinna aktivita a je v stave pohotovosti
alebo je blokovana.
Niekedy ludia navrhuju, ze by Nmap nemal ponukat
funkcie na vyhnutie sa pravidlam firewallu alebo prejdenia cez systemy IDS.
Zdovodnuju, ze tieto funkcie mozu byt tak vyuzite administratormi na zvysenie bezpecnosti
ako aj utocnikmi. Problemom toho je, ze tieto metody by sa stale vyuzivali utocnikmi,
ktori by si namiesto toho nasli dalsie nastroje alebo patche, ktore by fungovali
s Nmapom.
Na druhej strane, pre administratorov by bolo ovela tazsie vykonavat si svoju pracu.
Nasadzovanie len modernych, opravenych FTP serverov
je ovela mocnejsia obrana, ako snaha predist rozsireniu nastrojov implementujucich utok FTP bounce.
Neexistuje ziadne specialne magicke kuzlo(alebo parameter Nmapu) na detekciu a
podkopanie firewallov a systemov IDS. Vyzaduje si to zrucnost a skusenost.
Tutorial je za mimo rozsahu tejto referencnej prirucky, ktora len podava zoznam
relevantnych parametrov a opisuje, co robia.
(fragmentovat pakety);
(pouzitim specifikovanej velkosti jednotky MTU)
Parameter sposobi, ze pozadovany scan(vratane
scanov pingu) pouzije male fragmentovane IP pakety.
Myslienka je rozdelit hlavicku TCP na niekolko paketov, cim sa stazi detekcia aktivity
pre paketove filtre, systemy IDS a ine.
Je nutne byt pri tomto opatrny. Niektore programy
nedokazu korektne prijat male pakety. Sniffer zo starej skoly s nazvom
Sniffit po prijati prveho segmetu okamzite zahlasil chybu "segmentation fault".
Po jednom zadani tohoto parametra Nmap rozdeli pakety po hlavicke IP na maximalne 8 bajtov
dlhe, takze 20-bajtova hlavicka TCP sa rozdeli na 3 pakety, dva s velkostou hlavicky TCP
osem bajtov a posledny o velkosti styri. Samozrejme, ze kazdy fragment
ma takisto hlavicku IP.
Po opatovnom zadani moznosti sa na jeden fragment pouzije 16 bajtov, cim sa znizi
pocet fragmentov.
Dalej je mozne specifikovat vlastnu velkost offsetu zadanim parametra .
Nezadavajte sucasne parametre a .
Offset musi byt nasobkom cisla 8. Zatial co fragmentovane pakety
neprejdu cez paketove filtre a firewally, ktore zhromazduju vsetky IP fragmenty v rade,
ako napriklad parameter CONFIG_IP_ALWAYS_DEFRAG v jadre Linuxu,
niektore siete si nemozu dovolit takyto zasah do vykonu siete a preto
nechavaju parameter zakazany. Ine to zase neumoznuju,
pretoze fragmenty mozu putovat do siete roznymi cestami.
Niektore zdrojove systemy defragmentuju vychadzajuce pakety v jadre, jednym z nich
Linux s modulom ip tables. Pocas vykonavania scanu je mozne pouzit
sniffer napr. Ethereal a tym sa da sledovat, ci su odosielane pakety fragmentovane.
Ak sa v lokalnom OS na lokalnom pocitaci vyskytnu problemy, skuste zadat parameter cim sa to obide
vrstva IP a odoslu sa neupravene ethernetove ramce.
(Zakryt scan pomocou decoys)
Spusti sa scan pomocou obetnych stanic(decoys), cim sa pre vzdialenu hostitelsku stanicu
bude specifikovana scanovacia hostitelska stanica/stanice javit ako decoy, ktora takisto ako ozajstna stanica scanuje
cielovu siet. Ich system IDS preto moze zahlasit 5-10 scanov portov z roznych IP adries, no nebude
vediet, ktore scany boli prave, a z ktorej IP adresy sa naozaj scanovalo.
Zatial co sa tato metoda porazit pouzitim mechanizmov sledovania drah routerov, zahodenia odpovedi a dalsich aktivnych mechanizmov,
je to stale ucinny sposob ako zakryt pravu IP adresu.
Adresu kazdej decoy je potrebne oddelit ciarkami a je mozne pouzit parameter
ME urcujuci, ktora z decoys
reprezentuje vasu realnu IP adresu. Ak sa ME
ME vlozi na vzdialenejsiu ako 6.poziciu,
niektore bezne detektory scanov portov (napr. vyborny scanlogd spolocnosti Solar Designer)
by nemali byt vobec dokazat zobrazit vasu IP adresu. Ak pouzijete ME
, nmap vlozi vasu IP adresu na nahodnu poziciu.Vsimnite si, ze hostitelske stanice pouzite ako falosne scannery teda decoys by mali byt aktivne, inak
mozete nahodne zahltit cielove stanice SYN paketmi. Ak bude aktivna len jedna hostitelska stanica,
bude velmi jednoduche zistit, ktora z decoys vykonala scan. Namiesto DNS nazvov moze byt uzitocne pouzit
IP adresy (takze vas siete pocitacov decoys nebudu vidiet v logu nameserveru.)
Decoys su pouzivane pri pociatocnom ping scane (pouzijuc ICMP, SYN, ACK alebo ine) tak ako
aj pocas samotnej fazy scanovania, a pouzivaju sa aj pri detekcii vzdialeneho OS ().
Decoys nefunguju pri detekcii verzie alebo scane typu TCP connect(). Prilis mnoho decoys moze spomalit scan a potencialne
ho znepresnit. Niektori internetovi provideri mozu filtrovat falosne
pakety, no mnohi ich vobec neobmedzuju.
(Falosna zdrojova IP adresa)
Pri niektorych okolnostiach nedokaze Nmap urcit lokalnu zdrojovu IP adresu (
ak je s tym problen, Nmap to oznami). V tejto situacii je nutne pouzit parameter
s IP adresou, cez ktoru sa maju odosielat pakety.Dalsim moznym sposobom pouzitia tohoto flagu je falsovanie scanu, cim sa cielove stanice budu
domnievat, ze ich scanuje niekto iny. Predstavte si firmu, ktora
je opakovane scanovana konkurencnou firmou. Parameter
bude pre tento typ pouzitia vsobecne vyzadovany a
parameter je tiez vhodny.
(Pouzit specifikovane rozhranie)
Povie Nmapu, cez ktore rozhranie sa maju odosielat a prijimat pakety.
Nmap by to mal vediet detekovat automaticky, ale v opacnom pripade to oznami.
(Falsovat zdrojove cislo portu)
Jednou z bezne nespravnej konfiguracie je ak sa doveruje trafficu zalozenom na zdrojovom cisle portu.
Nie je tazke pochopit ako k tomu dochadza. Administrator nastavi nablyskany novy firewall a bude zahlteny
staznostami nevdacnych pouzivatelov, ktorych aplikacie prestali fungovat. Specialnym pripadom moze byt
pokazeny DNS server, pretoze odpovede na DNS request z vonkajsich serverov uz nemozu vstupovat do siete.
Dalsim castym prikladom je FTP. Pri aktivnych prenosoch FTP sa vzdialeny server pokusa o spatne spojenie
ku klientovi, aby dodal pozadovany subor.
Bezpecnymi rieseniami na tieto problemy su casto vo forme proxy serverov na aplikacnej urovni alebo
firewallove moduly skumajuce protokoly. Existuju nanestastie aj jednoduchsie a nebezpecne riesenia.
Vediac, ze DNS odpovede prichadzaju z portu 53 a aktivne ftp z portu 20, vela administratorov sa chytilo do pasce
a jednoducho povolilo prichadzajuci traffic z tychto portov, pricom castu beru do uvahy, ze to ziadny
utocnik nespozoruje a ani nezneuzije tuto dieru vo firewalle. V inych pripadoch to administrator povazuje
za kratkodobe opatrenie az kym sa neimplementuje bezpecnejsie riesenie, a potom na tento upgrade zabudnu.
Prepracovani sietovi administratori vsak nie su jedinymi, kto sa chyti do tejto pasce. Mnohe produkty
sa dodavaju s tymito nebezpecnymi pravidlami, dokonca aj Microsoft bol vinny. Filtre protokolu IPsec dodavane so
systemami Windows 2000 a Windows XO obsahuju implicitne pravidlo, ktore povoluje cely neobmedzeny TCP a UDP traffic
z portu 88 (Kerberos). Dalsim dobre znamym pripadom povolovali verzie osobneho firewallu Zone Alarm az do verzie
2.1.25 vsetky prichadzajuce UDP pakety so zdrojovym portom 53(DNS) alebo 67 (DHCP).
Nmap ponuka na objavenie tychto zranitelnosti ekvivalentne parametere a
. Jednoducho zadate cislo portu a Nmap z neho odosle pakety.
Pri niektorych testoch detekcie OS kvoli ich spravnej funkcii musi Nmap pouzivat odlisne cisla portov
a DNS poziadavky ignoruju parameter
, pretoze Nmap ich nechava na pleciach systemovych kniznic.
Vacsina TCP scanov vratane SYN scanu ako aj UDP scan podporuju tento parameter uplne.
(Do odosielanych paketov pripojit nahodne data)
Za normalnych okolnosti odosiela Nmap minimalne pakety obsahujuce len hlavicku, takze
TCP pakety maju obycajne 40 bajtov a ICMP echo poziadavky len 28. Tento parameter napoveda Nmapu, aby
pripojil nahodne bajty nahodnej dlzky do odosielanych paketov.
Pakety detekcie OS() nie su ovplyvnene na rozdiel od vacsiny ping a portscan paketov.
Spomaluje to proces, ale trochu znenapadnuje scan.
(Nastavit pole IP time-to-live)
Nastavi hodnotu pola IPv4 time-to-live odosielanych paketov na udanu hodnotu.
(Nahodne vybrat poradie cielovych pocitacov)
Nmap premiesa kazdu skupinu o velkosti az do 8096 hostitelskych stanic pred ich scanovanim, co
moze znenapadnit scany pre rozne sietove moniturujuce systemy, hlavne ked sa skombinuju s parametrami
pomaleho casovania. Ak chcete nahodne premiesat vacsie velkosti skupin, zvyste hodnotu premennej
PING_GROUP_SZ v subore nmap.h a znovu skompilujte.
Dalsim riesenim je vytvorit zoznam cielovych stanic pomocou list scanu
An alternative solution is to generate the target IP list
(), premiesat ho nahodne pomocoou scriptu napisaneho
v Perli a potom tento zoznam predat Nmapu parametrom
.
(Vytvorit falosnu MAC adresu)
Nmap pouzije zadanu MAC adresu pre
vsetky odosielane neupravene ethernetove ramce. Zahrna to v sebe parameter
, cim sa zaisti, ze Nmap vlastne odosle
pakety na urovni ethernetu. Zadana MAC adresa moze byt v roznych formatoch. Ak je to jednoducho znak
0, Nmap zvoli uplne nahodnu mac adresu. Ak je zadanym retazcom parny pocet hexadecimalnych
cislic (s parmi dvoch nepovinne oddelenymi ciarkami), Nmap ich pouzije ako MAC adresu. Ak je zadanych menej
ako 12 hexadec. cisel, Nmap vyplni zbytok zvyskom 6 byteov nahodnych hodnot. Ak sa nepouzije ani jedna
z tycho moznosti, Nmap prehlada subor
nmap-mac-prefixes pri pokuse najst nazov vyrobcu obsahujuci dany retazec (nezavisi na velkosti
velkych a malych pismen). Ak je najdena zhoda, Nmap pouzije OUI vyrobcu (3-bajtova predpona) a nahodne vyplne 3
zostavajuce bajty. Spravne zadanymi prikladmi pre parameter su Apple, 0,
01:02:03:04:05:06, deadbeefcafe, 0020F2 ci Cisco.
(Odoslat pakety s falosnym kontrolnym suctom TCP/UDP)
Nmap pouzije neplatny kontrolny sucet TCP alebo UDP na odoslanie paketov cielovej stanici.
Kedze prakticky vsetky hostitelske IP stacky dokladne zahadzuju taketo pakety, ak pride odpoved,
pochadza pravdepodobne od firewallu alebo systemu IDS, ktory neoveroval kontrolny sucet.
Viac podrobnosti o tejto metode najdete na adrese VystupKazdy 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
. 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 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. ) a nazvom suboru alebo spojovnikom je povinna.
Ak vynechate flagy a zadate argumenty ako napr.
alebo 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
(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.
(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
.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 alebo
vytvorite prenosne XML
subory, ktore sa na kazdom pocitaci s webovym prehliadacom zobrazia v HTML formate.
(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.
(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
.
(Vystup vo vsetkych formatoch)
Pre ucel pohodlnosti je mozne zadat , 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
(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.
(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,
(), debugovanie sa povoli riadkovym parametrom()
a jeho stupen sa da zvysit jeho niekolkonasobnym zadanim. Alternativne je mozne nastavit
stupen debugovania dosadenim argumentu za parameter , napriklad
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.
(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..
Ak vas zaujima len priebeh detekcie verzie, zadajte
.
(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
(Pripojit vystup namiesto vymazania predchadzajucich dat)
Pri specifikacii nazvu suboru za parametrom formatu vystupu napr.
alebo sa v predvolenom nastaveni subor prepise.
Ak chcete zachovat obsah suboru a pripojit nove vysledky, zadajte parameter
a vsetky zadane nazvy suborov sa namiesto prepisovania budu rozsirovat o nove data. Nefunguje to pre data scanu
pre format XML(), pretoze sa vysledny subor nespracuje spravne, az kym
ho neopravite rucne.
(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
() alebo grep ()
, pouzivatel moze pokracovat v scanovani s tymi istymi cielovymi
stanicami ako predtym pred prerusenim scanu. Docieli sa to zadanim parametra
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.
(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
. Je nutne zadat plnu cestu alebo adresu URL.
Jednym z beznych prikladov je
, co sposobi, ze browser nahra najnovsiu
verziu stylesheetu z adresy Insecure.Org. Parameter
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.
(Nahrat stylesheet z adresy Insecure.Org)
Tento pohodlny parameter je jednoducho alternativou k zadaniu
.
(Vynechat zadanie XSL stylesheetu z XML)
Tento parameter zabrani Nmapu spajat XSL stylesheet s XML vystupom. Vynecha sa direktiva
xml-stylesheet.Rozne moznostiTato cast opisuje niektore dolezite a menej dolezite moznosti, ktore
nikam inam nezapadaju.
(Povolit scanovanie IPv6)
Od roku 2002 ponuka Nmap podporu protokolu IPv6 pre svoje najpopularnejsie
funkcie, specialne pre ping scan (len pri TCP), scanovani typu connect() a detekcii verzie.
Syntax prikazov je rovnaka, len sa este prida parameter
. Pri zadavani IP adresy je samozrejme nutne
pouzit syntax IPv6.
Adresa moze byt napr. v tvare
3ffe:7501:4819:2000:210:f3ff:fe03:14d0,
a preto je odporucane pouzit hostitelske nazvy. Vystup vyzera podobne
ako zvycajne, s adresou v tvare IPv6 v riadku interesting
ports, ktory IPv6 prezradza ako jediny.Aj ked sa IPv6 stale nerozsiril poriadne, pouziva sa vyznamne v niektorych krajinach, zvycajne
azijskych, a vacsina modernych operacnych systemov ho podporuju. Ak chcete pouzit
Nmap s protokolom IPv6, musia byt zdrojovy aj cielovy pocitac scanu nastavene na tento
protokol. Ak vam vas ISP, ako vacsina, nepriradi IPv6 adresy, su zdarma dostupne
tunelovacie programy pre IPv6 a dobre spolupracuju s Nmapom. Jeden z tych lepsich
je BT Exact. Pouzil
som aj jeden poskytovany spolocnostou na adrese.
Dalsou metodou zdarma su tunely IPv6 na IPv4.
(Parametre agresivneho scanu)
Tento parameter umoznuje dalsie pokrocile a agresivne moznosti. Este som sa
nerozhodol presne, co vsetko to predstavuje. V sucasnosti umoznuje
detekciu OS
() a scan verzie(). Viac funkcii
sa moze pridat v buducnosti. Dovodom je umoznit rozsiahlu
mnozinu moznosti scanu bez toho, aby si ludia museli pamatat mnozstvo flagov.
Tento parameter povoluje len funkcie, no nie casovacie moznosti (napr.)
alebo parametre miery vystupu (), ktore by tiez mohli
byt potrebne.
(Specifikovat vlastne datoveho suboru Nmapu)
Nmap ziskava specialne data pocas behu zo suborovnmap-service-probes,
nmap-services,
nmap-protocols,
nmap-rpc,
nmap-mac-prefixes a
nmap-os-fingerprints. Najprv ich hlada
v adresari zadanom volitelne parametrom
. Ak tam nie su najdene vsetky subory,
chybajuce su hladane v adresari specifikovanom premennou NMAPDIR.
Dalsim v poradi je adresar ~/.nmap, kde sa hladaju
pre systemy POSIX realne a efektivne UID a pre systemy Win32 umiestnenia spustitelneho suboru Nmapu.
Potom sa hlada nakompilovane umiestnenie napr.
/usr/local/share/nmap
ci /usr/share/nmap
. Ako posledna moznost pri hladani sa pouzije aktualny adresar.
(Posielat neupravene pakety na ethernetovej vrstve)
Nmap bude odosielat pakety na neupravenej druhej, ethernetovej vrstve
(vrstva data link) namiesto vyssej sietovej vrstvy. V predvolenom nastaveni
zvoli Nmap sposob, ktory sa lepsie hodi pre danu platformu. Neupravene sockety
(sietova vrstva) su efektivnejsie pre UNIXovske pocitace, kym ethernetovske
ramce sa vyzaduju pre operacie na platforme Windows, pretoze Microsoft
nepodporuje neupravene sockety. Nmap pouziva na UNIXoch vzdy neupravene IP pakety,
napriek tejto moznosti, aj ked neexistuje ina volba.
(Posielat neupravene pakety na vrstve IP)
Nmap bude odosielat pakety prostrednictvom
neupravenych IP socketov a nebude odosielat
nizkourovnove ethernetove ramce. Je to doplnkom parametra
rozoberaneho predtym.
(Predpokladat, ze pouzivatel je plne privilegovany)
Nmap bude predpokladat, ze ma dost privilegii,
aby mohol odosielat neupravene sockety, vykonavat sniffing paketov a
podobne operacie, ktore obycajne na UNIXovych systemoch vyzaduju privilegia roota.
Za normalnych okolnosti Nmap skonci, ak su taketo operacie pozadovane,
no funkcia geteuid() nevrati nulu.
Parameter sa hodi pri schopnostiach
kernelu Linuxu a pri podobnych systemoch, ktore mozu byt konfigurovane,
aby umoznili neprivilegovanym pouzivatelom vykonavat scany pouzitim neupravenych
paketov. Tento parameter je potrebne zadat pred vsetkymi
parametrami, ktore vyzaduju privilegia (SYN scan, detekcia OS, atd.).
Premenna NMAP_PRIVILEGED moze byt nastavena ako ekvivalentna
alternativa k parametru
.
; (Zobrazit cislo verzie)
Zobrazi cislo verzie Nmapu a ukonci sa.
; (Zobrazi obsah napovedy)
Zobrazi kratku obrazovku napovedy s najbeznejsimi prikazmi. To iste sa dosiahne
pri spusteni Nmapu bez argumentov.
Interakcia s behom programuFunkcia interakcie s behom programu este na systemoch Windows nie je plne
podporovana.
Pocas behu Nmapu sa zachytavaju
vsetky stlacenie klucovych klavesov, co dovoluje komunikovat s programom
bez jeho zastavenia a restartovania. Iste specialne klavesy
zmenia parametre, zatial co ine klavesy zobrazia stavovu spravu informujucu
o scane. Konvencia je taka, ze
male pismena zvysuju mnozstvo zobrazovanych udajov a
velke pismena ho znizuju.
/
Zvysit / Znizit mieru zobrazovania
/
Zvysit / Znizit stupen debugovania
/
Zapnut/ Vypnut sledovanie paketov
Cokolvek ine
Zobrazi stavovu spravu, napr.:Stats: 0:00:08 elapsed; 111 hosts completed (5 up),
5 undergoing Service ScanService scan Timing: About 28.00% done; ETC: 16:18
(0:00:15 remaining)PrikladyNa tomto mieste je niekolko prikladov pouzitia Nmapu, od jednoduchych a rutinnych
az po zlozitejsie a tajuplne. Pouzite su niektore vlastne IP adresy a nazvy domen, aby bol
proces konkretny, no namiesto nich by sme mali pouzit nahrady
vasej vlastnej siete.. Aj ked si nemyslim, ze scanovanie portov
dalsich sieti je alebo by malo byt nelegalne, administratori niektorych
sieti nijak neocenuju nevyziadane scanovanie svojich sieti a mozu sa stazovat.
Najlepsie je najprv ziskat opravnenie.Pre testovacie ucely mate opravnenie scanovat pocitac na adrese
scanme.nmap.org. Toto opravnenie vsak obsahuje
len scanovanie pomocou Nmapu a nie testovanie exploitov alebo utokov typu Denial of service.
Aby sa nevycerpala sirka pasma, nespustajte viac ako 12 scanov na tento pocitac za jeden den.
Ak je tato sluzba volneho scanovania cieloveho pocitaca zneuzita, zrusi sa a Nmap oznami
Failed to resolve given hostname/IP:
scanme.nmap.org. Tieto opravnenia sa tiez vztahuju
na hostitelske pocitace scanme2.nmap.org,
scanme3.nmap.org atd., hoci tieto stanice
momentalne neexistuju.nmap -v scanme.nmap.orgTento parameter spusti scan vsetkych rezervovanych TCP portov
na pocitaci
scanme.nmap.org . Parameter
umoznuje tzv. verbose mode.nmap -sS -O scanme.nmap.org/24Spusti SYN scan proti kazdemu aktivnemu pocitacu v sieti triedy
class C s nazvom
Scanme. Takisto sa pokusi urcit spustene operacne systemy aktivnych pocitacov. K tymto parametrom
sa vyzaduju privilegia roota.
nmap -sV -p 22,53,110,143,4564
198.116.0-255.1-127 Spusti vypocet hostitelskych stanic a TCP scan na prvu polovicu z 255 moznych 8-bitovych
subnetov v adresnom priestore 198.116 triedy B.
Zaroven sa testuje, ci na systemoch bezia sluzby sshd, DNS,
pop3d, imapd alebo port 4564. Pre kazdy z najdenych otvorenych portov sa pouzije
detekcia verzia na urcenie spustenych aplikacii.
nmap -v -iR 100000 -P0 -p 80Nmap zvoli nahodne 100 000 hostitelskych pocitacov a scanuje ich port 80.
Vypocet hostitelskych stanic je zakazany parametrom
, pretoze je zbytocne najprv
posielat test na zistenie, ci je hostitelska stanica aktivna, ak sa
bude aj tak testovat len jeden port.
nmap -P0 -p80 -oX logs/pb-port80scan.xml -oG
logs/pb-port80scan.gnmap 216.163.128.20/20Scanuje 4096 IP adries kvoli najdeniu webserverov (bez ich pingnutia)
a vystup ulozi vo formatoch grep a XML.host -l company.com | cut -d -f 4 | nmap -v -iL
-Vykona preklad domeny DNS, cim sa najdu hostitelske pocitace na adrese company.com
a potom Nmap pouzije tieto IP adresy. Tieto prikazy sa mozu pouzit pre
pocitac so systemom GNU/Linux - dalsie systemy maju odlisne prikazy na vykonavanie
prekladu domeny.BugyTak ako autor, ani Nmap nie
je dokonaly, no mate moznost pomoct pri jeho vylepsovani tym, ze zaslete spravu o bugoch alebo
dokonca napisete patch. Ak sa Nmap nechova podla ocakavania, vykonajte najprv
upgrade na najnovsiu verziu dostupnu z adresy
. Ak problem pretrvava,
preskumajte, ci uz nebol objaveny a adresovany. Vyskusajte pouzit google
s vyrazom chybovej spravy alebo prehladajte archivy Nmap-dev na adrese
. Precitajte si aj tento plny manual.
Ak nenajdete nic podobne, poslite mail o bugu na adresu
dev@nmap.org. Zahrnte vsetko, co ste sa dozvedeli
o probleme spolu s verziou Nmapu a operacnym systemom. Spravy o problemoch
a otazky na pouzivanie Nmapu budu ovela pravdepodobnejsie zodpovedane, ak budu odoslane
na dev@nmap.org namiesto odosielania priamo Fyodorovi.Patche s kodom na opravu bugov su este lepsie ako samotne spravy o bugoch. Zakladne
instrukcie na tvorbu suborov patchov s vasimi zmenami su dostupne na
.
Patche mozu byt odoslane prednostne na nmap-dev alebo priamo Fyodorovi.AutorFyodor
fyodor@nmap.org
()
Za posledne roky stovky ludi vyznamne prispeli pre Nmap. Podrobnosti o nich
su obsiahnute v suboreCHANGELOG, ktory
sa dodava s Nmapom a je dostupny z adresy.Pravne prehlaseniaUnofficial Translation Disclaimer/ Zrieknutie sa zaruky nad neoficialnym prekladomThis is an unnofficial translation of the Nmap
license details into Slovak. It was not written by
Insecure.Com LLC, and does not legally state the distribution terms
for Nmap -- only the original English text does that. However, we
hope that this translation helps Slovak speakers understand the
Nmap license better.Toto je len neoficialny prekladlicencnych
podrobnosti Nmapu do slovenciny. Nebol vytvoreny spolocnostou
Insecure.Com LLC a ani legalne nevyjadruje podmienky distribucie pre Nmap; to ma za ulohu
len povodny anglicky text. Aj tak vsak dufame, ze tento preklad pomoze slovensky hovoriacim
ludom lepsie pochopit licenciu pre Nmap.
Copyright a licencia NmapuProgram Nmap Security
Scanner je produktom (C) 1996-2005 Insecure.Com LLC. Nmap je tiez registrovana obchodna znacka
spolocnosti Insecure.Com LLC. Tento program je free softwarom; je mozne ho
redistribuovat alebo modifikovat podla podmienok licencie GNU General
Public License 2 uverejnenou zdruzenim Free Software Foundation.
Zarucuje pravo na pouzivanie, modifikaciu a redistribuciu tohoto softwaru za istych podmienok.
Ak mate zaujem o zaclenenie technologie Nmapu do proprietarneho softwaru, mozeme predat
alternativne licencie (kontakt sales@insecure.com). Vela vyrobcov bezpecnostnych
scannerov uz licencuju technologiu Nmapu, napr. zistovanie hostitelskych stanic,
scanovanie portov, detekcia OS a detekcia sluzby/verzie.Je nutne poznamenat, ze GPL uvaluje dolezite obmedzenia na
odvodene diela, no neposkytuje podrobnu definiciu tohoto pojmu.
Aby sa predislo nedorozumeniam, za ucelom tejto licencie povazujeme aplikaciu za odvodene dielo (derivative work)
ak vykonava lubovolnu z nasledujucich veci:Zaclenuje zdrojovy kod z NmapuNacitava alebo obsahuje Nmapovske Nmap datove subory chranene copyrightom, napr.
nmap-os-fingerprints ci
nmap-service-probes.Spusta Nmap a spracuvava vysledky(oproti typickym shellovskym aplikaciam
ci aplikaciam s menu pre spustanie, ktore jednoducho zobrazia neupraveny vystup Nmapu
a nie su odvodenym dielami.)Zaclenuje, obsahuje alebo zhromazduje Nmap do proprietarneho
spustitelneho instalacneho programu, napr. tie vyrobene spolocnostou
InstallShield.Je prepojeny na kniznicu alebo spusta program, co vykonava lubovolnu hore uvedenu cinnost.
Pojem Nmap by sa mal pouzit aj pri zahrnuti akychkolvek casti alebo
diel odvodenych od Nmapu. Tento zoznam nie je vyhradny, no jeho zamerom je objasnit nasu
interpretaciu odvodenych diel pomocou niekolkych beznych prikladov. Tieto obmedzenia vlastne platia
len pri redistribucii Nmapu. Napriklad vas nic nemoze zastavit od napisania a predavania
proprietarnej celnej aplikacie k Nmapu, mozete to sami distribuovat a zverejnit pre verejnost
adresu na stiahnutie Nmapu.Nepokladame to za dodatocne restrikcie ku GPL, ale len ako
objasnenie toho ako interpretujeme odvodene
diela podla vztahu k nasmu produktu s licenciou GPL. Je to nieco podobne,
ako ked Linus Torvalds oznamil svoju interpretaciu ako sa vztahuju
odvodene diela k modulom linuxovskeho kernelu. Nasa intepretacia sa odkazuje
len na Nmap - nehovorime za ine GPL produkty.Ak mate otazky tykajuce sa obmedzeni licencii GPL ohladom pouzivania Nmapu v dielach nelicencovanych
GPL, radi pomozeme. Ako uz bolo spomenute vyssie, tiez ponukame alternativne licencie na zahrnutie
Nmapu do proprietarnych aplikacii a zariadeni. Tieto zmluvy uz boli predane
mnohym vyrobcom zaoberajucich sa bezpecnostou a vseobecne zahrnuju trvalu
licenciu tak ako aj poskytovanie prioritnej podpory a updateov a pomoc
financne podporovat pokracujuci vyvoj technologie Nmapu. Na ziskanie dalsich informacii
zaslite e-mail na adresu sales@insecure.com.Ako vynimku ku terminom licencie GPL, spolocnost Insecure.Com LLC udeluje povolenie
spajat kod tohoto programu s lubovolnou verziou kniznice OpenSSL, ktora je distribuovana
pod licenciou identickou k tej zmienenej v zahrnutom subore
Copying.OpenSSL, a distribuovat suvisiace kombinacie vratane tychto dvoch.
Musite dodrziavat GNU GPL vo vsetkych ohladoch pre kod iny ako OpenSSL. Ak pozmenite
tento subor, je mozne nezavazne rozsirit tuto vynimku na vasu verziu tohoto suboru.
Ak ste tieto subory ziskali s pisomnou licencnou zmluvou alebo sa zmluva zmienuje
o inych pojmoch ako su vyssie uvedene, ma prednost pred tymito podmienkami.
Licencia Creative Commons pre tuto prirucku NmapuTato prirucka Nmapu je chranena copyrightom spolocnosti (C) 2005 Insecure.Com LLC a je preto umiestnena
pod verziou licenciou Creative Commons
Attribution License verzie 2.5, co dovoluje redistribuovat a modifikovat dielo podla ziadosti, pricom
sa odkazete na povodny zdroj. Alternativne je mozne vybrat si, ze tento dokument sa bude povazovat,
ze spada pod tu istu licenciu ako sam Nmap (predtym rozobrata).
Dostupnost zdrojoveho kodu a prispevky komunityK tomuto softwaru je poskytovany kod, pretoze si myslime, ze pouzivatelia
maju pravo poznat pred jeho spustenim, co presne program vykona. To umoznuje aj vam
skumat software kvoli bezpecnostnym dieram, aj ked zatial neboli ziadne najdene.
Zdrojovy kod vam tiez dovoluje portovat Nmap na nove platformy, opravovat bugy,
a pridavat nove funkcie. Ste vrelo podporovani zasielat vase modifikacie pre pripadne zaclenenie
do hlavnej distribucie na adresu
fyodor@nmap.org. Zaslatim tychto zmien Fyodorovi alebo na niektory
z vyvojarskych mailing listov Insecure.Org sa predpoklada, ze poskytujete Fyodorovi
a firme Insecure.Com LLC nelimitovane, nevylucne pravo na pouzivanie, modifikaciu a opatovne
licencovanie kodu. Nmap bude vzdy dostupnym Open Source programom, ale tato zmienka je dolezita,
pretoze nemoznost prelicencovat kod uz sposobila obrovske problemy dalsim projektom Free Software (napr. KDE a NASM).
Prilezitostne relicencujeme kod tretim stranam podla hore spomenuteho. Ak si prajete specifikovat
specialne podmienky licencie vasich prispevkov, uvedte to pri ich zasielani.
Bez zarukyTento program je distribuovany s vierou, ze bude uzitocny, ale BEZ AKEJKOLVEK ZARUKY;
dokonca aj bez naznacenej zaruky PREDAJNOSTI a VHODNOSTI NA URCITY UCEL. Dalsie podrobnosti
mozete najst na adrese, alebo v subore COPYING
zahrnutym v Nmape.Je takisto dolezite poznamenat, ze Nmap je znamy tym, ze obcas sposobi zrutenie
slabo naprogramovanych aplikacii, stackov TCP/IP a dokonca aj operacnych systemov. Aj ked sa to
stava velmi zriedkave, je na to potrebne mysliet.
Nmap by sa nikdy nemal spustat na testovanie kritickych systemov
, kym nie ste pripraveny trpiet ich vypadky.
Na tomto mieste uznavame, ze Nmap moze sposobit spadnutie vasich systemov alebo sieti
a zriekame sa vsetkych zavazkov za akukolvek skodu alebo problemy pripadne zapricinene Nmapom.
Nevhodne pouzitieKvoli istemu riziku padov systemov a niekolkym trufalcom, ktori
pouzivaju Nmap na prieskum pred napadnutim systemov existuju administratori, ktori
su znepokojeni a mozu sa stazovat pri zisteni scanovania systemu. Je preto doporuceniahodne
vyziadat si povolenie pred podniknutim co i len lahkeho scanu siete.
Nmap by nikdy nemal byt z bezpecnostnych dovodov instalovany so specialnymi privilegiami (napr. suid root)
Software tretich stranTento produkt zahrnuje software vyvinuty organizaciou
Apache Software Foundation. Modifikovana verzia
kniznice Libpcap
portable packet capture library sa dofavat spolu s nmapom.
Verzia Nmapu pre Windows namiesto toho vyuziva od tejto kniznice odvodenu WinPcap library.
Podpora regularnych vyrazov je poskytovana kniznicouPCRE library,
ktora je open source softwarom a jej autorom je Philip Hazel. Niektore neupravene sietove funkcie
pouzivaju sietovu kniznicu s nazvomLibdnet
vytvorena autorom Dug Song. Jej pozmenena verzia sa dodava s Nmapom.
Nmap moze byt volitelne spojeny s toolkitomOpenSSL cryptography toolkit
na podporu detekcie verzie protokolu SSL.
Kazdy z tu spomenuteho softwaru tretich stran je volne siritelny
pod softwarovymi licenciami typu BSD.Klasifikacia riadenia exportu z USA (US Export Control Classification)Klasifikacia riadenia exportu z USA: Insecure.Com LLC sa domnieva, ze Nmap spada
pod americky ECCN (export control classification number) 5D992. Tato kategoria sa nazyva
Information Security software not controlled
by 5D002. Jedinym obmedzenim tejto klasifikacie je
AT (anti-terorizmus), ktory sa vztahuje na skoro vsetky tovary
a odmieta exportovat do par nebezpecnych krajin ako su Iran a Severna Korea, preto
exportovanie Nmapu nevyzaduje ziadnu specialnu licenciu, povolenie alebo ine splnomocnenie vladou.