Nmap skenování ze souboru. Příručka nápovědy Nmap (manuální stránka). Určení verze OS na vzdáleném počítači

Několik příkladů práce s úžasným síťovým skenerem - NMAP

Prohledejte síť a vyhledejte aktivní hostitele:

$ nmap -sn 192.168.1.0/ 24

Skenování seznamu hostitelů/sítí ze souboru:

$ nmap -iL input.txt

Formát souboru:

Záznamy mohou být v jakémkoli z formátů, se kterými Nmap pracuje z příkazového řádku (IP adresy, názvy hostitelů, CIDR, IPv6 nebo rozsahy oktetů). Položky musí být odděleny jednou nebo více mezerami, tabulátory nebo novými řádky.

$ cat input.txt server.test.com 192.168.1.0/ 24 192.168.2.1,2 ,3 192.168.3.0-200

Skenovat více IP adres:

$nmap 192.168.1.1 192.168.1.2 192.168.1.3 $nmap 192.168.1.1,2,3


5. Vyloučení IP/hostitelů/sítí ze skenování

Vyloučit cíle ze skenování Nmap:

$ nmap 192.168.1.0/ 24 --vyloučit 192.168.1.1 $ nmap 192.168.1.0/ 24 --vyloučit 192.168.1.1 192.168.1.5 $ nmap 19192/168. ,3

Vyloučit seznam hostitelů převzatých ze souboru:

$ nmap 192.168.1.0/ 24 --excludefile exclusive.txt

6. Prohledejte specifické porty

Skenovat jeden port:

$ nmap -p 80 192.168.1.1

Skenování více portů:

$ nmap -p 80 443 192.168.1.1

Rozsah skenovacích portů:

$ nmap -p 80 -1000 192.168.1.1

Prohledat všechny porty:

$ nmap -p "*" 192.168.1.1

Prohledejte otevřené porty

$ nmap -Pn 192.168.1.1

7. Určení podporovaných IP protokolů

Zjistěte, které protokoly IP (TCP, UDP, ICMP atd.) skenovaný hostitel podporuje:

$ nmap -sO 192.168.1.1

8. Skenování portů TCP/UDP

Prohledejte všechny porty TCP:

$ nmap -sT 192.168.1.1

Skenování konkrétních portů TCP:

$ nmap -p T:80 192.168.1.1

Prohledejte všechny porty UDP:

$ nmap -sU 192.168.1.1

Skenování konkrétních portů UDP:

$ nmap -p U:53 192.168.1.1

Kombinace skenování různých portů:

$ nmap -p U:53,79,113,T:21 -25,80,443,8080 192.168.1.1

9. Rychlé skenování

Aktivujte režim rychlého skenování:

$ nmap -F 192.168.1.1

Zobrazit příčinu stavu portu

Ukažte důvod, proč si Nmap myslí, že port je v určitém stavu:

$ nmap --důvod 192.168.1.1

11. Zobrazit pouze otevřené porty

Zobrazit pouze otevřené porty (nebo případně otevřené):

$ nmap --otevřít 192.168.1.1

Zobrazit pouze otevřené 22. porty:

Nmap -p22 --otevřít 192.168.1.1

12. Definice OS

Povolit detekci OS:

$ nmap -O 192.168.1.1

* Identifikuje vzdálený operační systém pomocí otisku zásobníku TCP/IP.
13. Určení verze služeb

Povolit zjišťování verze služby:

$ nmap -sV 192.168.1.1

* Určuje verze programů běžících na vzdáleném serveru.
14. Detekce brány firewall

Zjistěte, zda je váš počítač chráněn filtry paketů nebo bránou firewall:

nmap -oX output.xml 192.168.1.1

Nmap -A 192.168.1.2

Tento příkaz vám umožní spouštět všechny skripty a mnoho dalších možností, zde je popis z nabídky nápovědy: Povolit detekci OS, detekci verzí, skenování skriptů a traceroute.
Například pro službu Samba (port 445) zobrazí následující:

Výsledky hostitelského skriptu:
| smb-security-mode:
| account_used: guest
| autentizační_úroveň: uživatel
| challenge_response: podporováno
|_ podepisování zpráv: zakázáno (nebezpečné, ale výchozí)

Argumentem volby --scanflags může být číselná hodnota, například 9 (příznaky PSH a FIN), ale použití symbolických názvů je mnohem jednodušší. Použijte libovolnou kombinaci URG, ACK, PSH, RST, SYN a FIN. Například volba --scanflags URGACKPSHRSTSYNFIN nastaví všechny příznaky, i když to není pro skenování příliš užitečné. Nezáleží na pořadí, ve kterém jsou příznaky zadány.

Kromě zadání požadovaných příznaků můžete také zadat typ skenování TCP (například -sA ​​nebo -sF). To Nmapu řekne, jak interpretovat odpovědi. Například při skenování SYN žádná odpověď neoznačuje filtrovaný port, zatímco při skenování FIN označuje otevřený|filtrovaný port. Nmap provede zadaný typ skenování, ale místo výchozích příznaků TCP použije. Pokud neurčíte typ skenování, výchozí bude SYN.

-sI <зомби_хост> [: <порт> ] (líné nečinné skenování)

Kromě toho, že je tento typ skenování neviditelný (vzhledem k jeho povaze), umožňuje také detekci důvěryhodných vztahů založených na IP mezi stroji. Seznam otevřených portů zobrazuje otevřené porty z pohledu stroje zombie. Proto se můžete pokusit prohledat cíl pomocí různých zombie strojů, o kterých si myslíte, že budou pravděpodobně důvěryhodné (přes pravidla směrovače/paketového filtru).

Pokud chcete použít konkrétní port, můžete k hostiteli zombie přidat číslo portu za dvojtečku. Ve výchozím nastavení bude použit port 80.

Porty mohou být také specifikovány názvy, kterým odpovídají v souboru nmap-services. Můžete dokonce použít * a ? ve jménech.

Například pro skenování ftp a všech portů začínajících http použijte -p ftp,http* .

V takových případech je lepší uvádět argumenty -p.

Rozsahy portů jsou uzavřeny v hranatých závorkách; porty v tomto rozsahu, které se objevují ve službách nmap, budou skenovány.

Například následující volba prohledá všechny porty z nmap-services rovné nebo menší než 1024: -p [-1024] . V takových případech je lepší uvádět argumenty -p.-sO (skenování protokolu IP)

Způsob, jakým tento typ skenování funguje, je velmi podobný tomu, který je implementován při skenování UDP. Místo změny pole čísla portu v paketu UDP se odesílají hlavičky paketů IP a změní se pole 8bitového protokolu IP. Hlavičky jsou obvykle prázdné, neobsahují žádná data nebo dokonce správnou hlavičku pro požadovaný protokol. Výjimkou jsou TCP, UDP a ICMP. Zahrnutí správné hlavičky pro tyto protokoly je nezbytné, protože... v opačném případě je některé systémy nepošlou a Nmap má všechny potřebné funkce k jejich vytvoření. Namísto očekávání zprávy o nedosažitelnosti portu ICMP očekává tento typ skenování zprávu o nedosažitelnosti ICMP. protokol. Pokud Nmap obdrží jakoukoli odpověď z jakéhokoli protokolu, protokol je označen jako otevřený. Chyba nedosažitelnosti protokolu ICMP (typ 3, kód 2) označuje protokol jako uzavřený. Ostatní chyby nedostupnosti ICMP (typ 3, kód 1, 3, 9, 10 nebo 13) označují protokol jako filtrovaný (současně indikují, že protokol ICMP je otevřený). Pokud po několika požadavcích nepřijde žádná odpověď, protokol je označen jako otevřený|filtrovaný

. -b (FTP bounce scan)

Zajímavostí protokolu FTP (RFC 959) je podpora tzv. proxy FTP připojení. To umožňuje uživateli připojit se k jednomu FTP serveru a poté jej požádat o přenos souborů na jiný. Toto je vážné porušení, takže mnoho serverů přestalo tuto funkci podporovat. Pomocí této funkce můžete skenovat porty jiných hostitelů používajících tento FTP server. Stačí požádat FTP server, aby soubor poslal postupně na každý port cílového počítače, o který máte zájem. Chybová zpráva bude indikovat, zda je port otevřený nebo ne. Je to dobrý způsob, jak obejít firewally, protože... Organizační servery FTP mají obvykle větší přístup k jiným interním hostitelům než jakýkoli jiný počítač. V Nmapu je tento typ skenování specifikován volbou -b. Je předáváno jako argument <имя_пользователя> : <пароль> @ <сервер> : <порт> . <Сервер> - toto je síťový název nebo IP adresa FTP serveru. Stejně jako u běžných adres URL můžete vynechat <имя_пользователя> : <пароль> , pak budou použita anonymní data (uživatel: anonymní heslo: -wwwuser@). Číslo portu (a předchozí dvojtečku) lze také vynechat; pak se pro připojení použije výchozí port FTP (21). <серверу> .

Tato chyba zabezpečení byla rozšířena v roce 1997, kdy byl vydán Nmap, ale nyní byla opravena téměř všude. Stále existují zranitelné servery, takže pokud vše ostatní selže, stojí za to to vyzkoušet. Pokud je vaším cílem obejít firewall, prohledejte cílovou síť na otevřený port 21 (nebo dokonce na jakékoli služby FTP, pokud používáte detekci verzí) a poté vyzkoušejte tento typ skenování s každou nalezenou. Nmap vám řekne, zda je hostitel zranitelný nebo ne. Pokud se jen snažíte zakrýt stopy, pak se nemusíte (a vlastně byste neměli) omezovat pouze na hostitele v cílové síti. Než začnete skenovat náhodné internetové adresy na zranitelný FTP server, mějte na paměti, že se to nebude líbit mnoha správcům systému.

Máte obavy o bezpečnost vaší nebo jakékoli jiné sítě? Ochrana routeru před nechtěnými připojeními je klíčem k udržení vaší sítě v bezpečí. Jednou jednoduchou metodou je Nmap nebo Network Mapper. Jedná se o skenovací program, který kontroluje, které porty jsou otevřené a které zavřené, stejně jako další podrobnosti. Bezpečnostní profesionálové používají tento program k testování zabezpečení sítě. Chcete-li se naučit používat tento program, viz Krok 1.

Kroky

Pomocí Zenmap

    Stáhněte si instalační program Nmap. Instalační program můžete najít na webu vývojářů a stáhnout si jej zdarma. Doporučuje se stáhnout z webu vývojářů, abyste se vyhnuli riziku stahování virů nebo falešných souborů. Stažením Nmap také získáte Zenmap, grafické rozhraní pro Nmap, které usnadňuje použití programu pro začátečníky při provádění skenování bez znalosti příkazů.

    • Zenmap je k dispozici pro operační systémy Windows, Linux a Mac OS X Instalační programy najdete na oficiálních stránkách Nmap.
  1. Spusťte program GUI „Nmap – Zenmap“. Pokud jste během instalace nechali všechny položky nedotčené, měla by se na ploše objevit ikona programu. Pokud ne, podívejte se do nabídky Start a spusťte Zenmap.

    Zadejte účel skenování. Zenmap dělá skenování sítě velmi jednoduchým procesem. Nejprve vyberte cíl skenování. Můžete zadat doménu (example.com), IP adresu (127.0.0.1), síť (192.168.1.0/24) nebo jejich kombinaci.

    • V závislosti na vašem stažení a účelu skenování může používání Nmap porušovat uživatelské zásady vašeho ISP. Při používání Nmap při skenování mimo vaši vlastní síť vždy zkontrolujte místní uživatelská pravidla.
  2. Vyberte svůj profil. Profily jsou skupinou úprav, které mění strukturu skenování. Profily vám umožňují rychle vybrat různé typy skenování, aniž byste museli provádět úpravy na příkazovém řádku. Vyberte si ten nejlepší profil pro vaše potřeby:

    • Intenzivní skenování- rozsáhlé skenování. Zahrnuje operační systém, verzi, rozpoznávání skriptů, sledování a má agresivní dobu skenování.
    • Ping skenování- Tato kontrola určuje online stav cíle vaší kontroly a nekontroluje porty.
    • Rychlé skenování- skenuje rychleji než běžné skenování s agresivní dobou skenování a vzorkováním portů.
    • Pravidelné skenování- toto je standardní sken Nmap bez jakýchkoli úprav. Výsledek zahrnuje ping a otevřené porty.
  3. Klepnutím na Skenovat zahájíte skenování. Aktivní výsledky skenování se zobrazí na kartě Výstup Nmap. Doba skenování bude záviset na zvoleném profilu, fyzické vzdálenosti k cíli a konfiguraci sítě.

    Podívejte se na své výsledky. Po dokončení skenování uvidíte ve spodní části záložky Výstup Nmap zprávu „Nmap is done“. Nyní můžete zkontrolovat své výsledky v závislosti na typu skenování, který jste vybrali. Všechny výsledky se shromažďují na záložce Výstup, ale výběrem dalších záložek si můžete výsledný výsledek prostudovat podrobněji.

    • Porty/hostitelé- Tato karta zobrazí skenování portů, včetně služeb spuštěných na těchto portech.
    • Topologie- Zobrazuje trasování provedeného skenování. Můžete vidět, kolik „skoků“ je potřeba, aby vaše data dosáhla požadovaného cíle.
    • Podrobnosti o hostiteli- Zobrazuje úplné informace o cíli, počtu portů, IP adresách, názvech hostitelů, operačních systémech a další.
    • Skenuje- tato karta zaznamenává historii vašich předchozích skenů. Tímto způsobem můžete rychle restartovat skenování provedené v minulosti se specifickou sadou parametrů.

Pomocí příkazového řádku

  1. Nainstalujte Nmap. Nmap je malý a bezplatný program. Program si můžete stáhnout na webu vývojáře. Postupujte podle pokynů pro váš operační systém:

    Otevřete příkazový řádek. Příkazy Nmap fungují z příkazového řádku a zobrazují výsledky přímo pod příkazem. Pomocí možností můžete změnit strukturu skenování. Skenování můžete spouštět odkudkoli zadaného v příkazovém řádku.

  2. Naskenujte potřebné porty. Chcete-li zahájit jednoduché skenování, napište nmap . Tím se spustí ping na vybraný cíl a skenování portů. Toto skenování je velmi snadné rozpoznat. Výsledky budou viditelné na vaší obrazovce. Možná budete muset posunout nahoru, abyste viděli úplné výsledky.

    • V závislosti na stahování a účelu skenování může být používání Nmap v rozporu s pravidly vašeho ISP. Při používání Nmap při skenování mimo vaši vlastní síť vždy zkontrolujte místní uživatelská pravidla.
  3. Proveďte upravený sken. Proměnné příkazu můžete použít ke změně parametrů skenování, což vede k více či méně rozsáhlému skenování. Můžete přidat více proměnných tak, že mezi každou z nich necháte mezeru. Proměnné jsou umístěny před cíl: nmap

    • -sS- Toto je skrytý SYN sken. Toto skenování je obtížnější zjistit než běžné skenování, ale jeho dokončení může trvat déle. Většina novějších firewallů dokáže detekovat skenování –sS.
    • -sn- Toto je ping scan. Toto skenování nepoužívá detekci portů a pouze kontroluje online stav cíle.
    • - Tato kontrola určuje typ operačního systému cíle.
    • -A- Tato proměnná zahrnuje detekci rozsáhlejších informací: operační systém, verzi, skripty a trasování.
    • -F- umožňuje rychlé skenování a snižuje počet skenovaných portů.
    • -proti- tato proměnná zobrazuje více výsledků skenování, takže jsou čitelnější.
  4. Výstup výsledků skenování do souboru XML. Výstup výsledků skenování můžete nakonfigurovat do souboru XML a následně je snadno otevřít v libovolném webovém prohlížeči. K tomu použijte proměnnou -vůl s názvem souboru pro výstupní data. Kompletní příkaz vypadá takto: nmap –oX ScanResults.xml .

    • Váš soubor XML bude uložen v aktuálním adresáři vašeho příkazového řádku.
  • Zajímá vás, jak skenování probíhá? Stisknutím mezerníku nebo libovolného tlačítka během skenování zobrazíte postup Nmap.
  • Cíl nereaguje? Zkuste do skenu přidat proměnnou „-P0“. Výsledkem je, že skenování Nmapu začne pracovat, i když si program „myslí“, že cíl neexistuje. To může být užitečné, když je počítač chráněn firewallem.
  • Pokud skenování trvá dlouho (více než 20 minut), zkuste přidat proměnnou „-F“, aby skenování Nmap ovlivnilo pouze nedávno použité porty.

Varování

  • Ujistěte se, že máte oprávnění ke skenování cíle. Skenování vládních webů vám přinese nemálo problémů. Pokud chcete skenování otestovat, můžete použít scanme.nmap.org. Toto je testovací počítač nainstalovaný tvůrcem programu.
  • Pokud často používáte skenování Nmap, buďte připraveni odpovědět na otázky od svého ISP. Někteří poskytovatelé specificky kontrolují provoz pro skenování Nmap. Program je známý a často používaný hackery.

Přemýšleli jste někdy o tom, jak útočník ví, které porty jsou v systému otevřené? Nebo jak můžete zjistit, jaké aplikace běží na serveru, aniž byste se zeptali správce? To vše a mnohem více můžete udělat pomocí malého nástroje zvaného Nmap.


Co je Nmap? Název Nmap je zkratka pro „mapovač sítě“ samotný nmap je sada nástrojů pro skenování sítě. Lze jej použít ke kontrole zabezpečení, jednoduše k určení služeb běžících na uzlu, k identifikaci operačního systému a aplikací a k určení typu brány firewall používané na skenovaném uzlu.
Nmap je známý nástroj. Jakmile se o Nmap dozvíte více, pochopíte, co dělá v epizodách filmů jako The Matrix Reloaded, The Bourne Ultimatum, Hottabych a dalších.
Tento tutoriál pokryje základy používání Nmap a poskytne několik příkladů, které můžete použít.

Kde mohu získat Nmap?
Pokud používáte Linux, můžete najít balíčky Nmap v repozitářích pro většinu distribucí. Nmap byl naposledy vydán na začátku roku 2010, takže nejnovější verze nemusí být na aktuálních stabilních větvích. Zdroje a některá binární sestavení najdete na stránce stahování. Existuje i verze pro Windows.
Základy používání Nmap.
Syntaxe Nmap je následující:

Nmap Scan_options Scan_target.

Řekněme, že chcete prohledat uzel a zjistit, jaký operační systém na něm běží. Chcete-li to provést, postupujte takto:

Nmap -O target.host.com

Všimněte si, že Nmap vyžaduje oprávnění superuživatele ke spuštění tohoto typu skenování. Proces skenování může trvat asi minutu, takže buďte trpěliví. Po dokončení procesu uvidíte něco podobného tomuto:

Spuštění Nmap 5.21 (nmap.org) v 27.02.2010 23:52 EST
Zpráva o skenování Nmap pro 10.0.0.1
Hostitel je aktivní (latence 0,0015 s).
Nezobrazeno: 997 uzavřených portů
STÁTNÍ PŘÍSTAVNÍ SLUŽBA
53/tcp otevřená doména
5009/tcp otevřené letiště-admin
10000/tcp otevřený snet-sensor-mgmt
Adresa MAC: 00:11:24:6B:43:E2 (počítač Apple)
Typ zařízení: WAP|tiskárna
Spuštění: embedded Apple, embedded Canon, embedded Kyocera, embedded Xerox
Podrobnosti OS: VxWorks: Apple AirPort Extreme v5.7 nebo AirPort Express v6.3; tiskárna Canon imageRUNNER (5055, C3045, C3380 nebo C5185); tiskárna Kyocera FS-4020DN; nebo tiskárnu Xerox Phaser 8860MFP
Vzdálenost sítě: 1 skok

Jak vidíte, Nmap poskytuje spoustu informací. Zde se zobrazí odhad operačního systému, který byl spuštěn na uzlu. V tomto případě byl skenován router Apple Airport Extreme. Jako bonus navíc Nmap hlásil, jaké zařízení je vzdáleno jeden skok, stejně jako MAC adresu výrobce zařízení a síťové karty, otevřené porty a jak dlouho skenování trvalo.
Níže jsou uvedeny výsledky dalšího skenování na domácím počítači se systémem Ubuntu 9.10:

Spuštění Nmap 5.21 (nmap.org) v 28.02.2010 00:00 EST
Zpráva o skenování Nmap pro 10.0.0.6
Hostitel je aktivní (latence 0,0039 s).
Nezobrazeno: 999 uzavřených portů
STÁTNÍ PŘÍSTAVNÍ SLUŽBA
22/tcp otevřít ssh
Adresa MAC: 00:17:08:2A:D6:F0 (Hewlett Packard)
Typ zařízení: univerzální
Běží: Linux 2.6.X
Podrobnosti o operačním systému: Linux 2.6.19 - 2.6.31
Vzdálenost sítě: 1 skok

Provedena detekce OS. Nahlaste prosím jakékoli nesprávné výsledky na nmap.org/submit.
Nmap hotovo: 1 IP adresa (1 hostitel nahoru) naskenována za 3,40 sekundy

Zde vidíme, že systém má síťovou kartu HP, na které běží Linux mezi verzemi 2.6.19 a 2.6.31. Mimochodem, nebudete schopni jednoznačně identifikovat distribuci, pouze verzi linuxového jádra.

Skenování cizích uzlů.

Ve výše uvedených příkladech byly pro skenování vybrány místní router a jedna z pracovních stanic, protože jsme měli oprávnění je skenovat. Bylo by však špatný nápad spouštět více skenů na uzlu někoho jiného, ​​pokud je neovládáte nebo nemáte práva k jejich skenování. Pro experimentování má Nmap veřejný testovací server scanme.nmap.org, který můžete použít.
Mnoho administrátorů nemá rádo neautorizované skenování svých serverů, takže nejlepší možností je omezit skenování na hostitele ve vaší lokální síti nebo na ty, pro které máte práva ke skenování. V některých případech také můžete porušit smlouvu s vaším ISP použitím některých zvláště agresivních metod skenování Nmap, takže buďte opatrní.

Skenujte více uzlů.

Pomocí nmap můžete skenovat více než jeden uzel současně. Pokud skenujete podle IP adresy, můžete definovat rozsah 10.0.0.1-6 nebo 10.0.0.0/24 Pomocí rozsahu 10.0.0.1-6 budou skenováni hostitelé od 10.0.0.6. Pomocí definice /24 bude prohledán celý rozsah hostitelů od 10.0.0.0 do 10.0.0.255. Pokud například potřebujete skenovat uzly od 10.0.0.1 do 10.0.0.42 a zjistit, který OS pravděpodobně běží, použijte:

Nmap –O 10.0.0.1-42

Pokud máte místo IP adres nějaký seznam názvů domén, můžete je oddělit na příkazovém řádku takto:

Nmap -O host1.target.com host2.target.com

Kontrola otevřených portů

Pokud spustíte nmap bez jakýchkoli voleb a určíte hostitele, prohledá porty a zobrazí všechny nalezené otevřené porty a služby na nich běžící. Například spustit:
nmap target.hostname.com
poté by měl vypsat něco podobného tomuto:

Zajímavé porty na target.hostname.com (10.0.0.88):
Nezobrazeno: 1711 uzavřených portů
STÁTNÍ PŘÍSTAVNÍ SLUŽBA
22/tcp otevřít ssh
80/tcp otevřít http
3306/tcp otevřít mysql

Nmap hotovo: 1 IP adresa (1 hostitel nahoru) naskenována za 0,228 sekundy

Nmap poskytne více informací, pokud použijete volbu -v (podrobné).

Skenování běžících služeb

Pokud chcete zjistit, jaká služba může být spuštěna, zkuste volbu –sV. Tato možnost provede agresivnější kontrolu a pokusí se zjistit, jaká verze služeb běží na daném uzlu, a může také pomoci přesněji určit, jaký OS běží. Spusťte například nmap –sV na testovacím serveru a získejte následující odpověď:

Spuštění Nmap 5.21 (nmap.org) v 28.02.2010 00:15 EST
Zpráva o skenování Nmap pro test.host.net (XX.XXX.XXX.XX)
Hostitel je aktivní (latence 0,090 s).
Nezobrazeno: 965 uzavřených portů, 33 filtrovaných portů
VERZE SLUŽBY STÁTNÍHO PŘÍSTAVU
22/tcp open ssh OpenSSH 4.7p1 Debian 8ubuntu1.2 (protokol 2.0)
80/tcp otevřít http Apache httpd 2.2.8 ((Ubuntu) PHP/5.2.4-2ubuntu5.10 se Suhosin-Patch)
Servisní informace: OS: Linux

Provedena detekce služby. Nahlaste prosím jakékoli nesprávné výsledky na nmap.org/submit.
Nmap hotovo: 1 IP adresa (1 hostitel nahoru) naskenována za 11,43 sekund

Jak vidíte, Nmap umí analyzovat pakety a určit verzi aplikací běžících na portech SSH a HTTP. Zde můžete vidět, že dotazovaný systém je Ubuntu s Apache 2.2.8 a OpenSSH 4.7p1. Tyto informace mohou být užitečné z mnoha důvodů. Skenování Nmap může identifikovat systém se staršími službami, který může být zranitelný vůči známým exploitům.

Kdo je v mé síti?

Nevíte, kolik online uzlů je ve vaší síti? Zkuste použít nmap –sP, který spustí ping scan zadané sítě. Například nmap –sP 10.0.0.0/24 prohledá 256 uzlů od 10.0.0.0 do 10.0.0.255, zkontroluje, zda jsou dostupné, a oznámí to. Můžete také použít rozsah, například:

Nmap –sp 10.0.0.1-15

Zenmap

A konečně, pokud všechna tato radost z příkazového řádku není pro vás, nmap má GUI, které můžete použít k vytváření a spouštění příkazů. Jmenuje se Zenmap. Umožní vám vybrat cíl, spustit skenování, zobrazit výsledky a také je uložit a porovnat s ostatními.
GUI Zenmap je dobrý způsob, jak začít s Nmapem, ale pokud s ním plánujete často pracovat, je lepší vědět, jak používat Nmap na příkazovém řádku.
V budoucím průvodci se hlouběji podíváme na Nmap a konkrétní úkoly, které můžete vyřešit.

Tento příspěvek je volným překladem článku

  • Zjišťování služeb a jejich verzí
  • Definice OS
  • Možnosti řízení času a produktivity
  • Různé možnosti
  • Interakce za běhu
  • Příklady
  • Informace o skriptech Nmap (v angličtině):

    Skryto před hosty


    Nejnovější verze dokumentace Nmap (v angličtině):

    Skryto před hosty


    Oficiální kniha o Nmap od tvůrců Nmap (v angličtině):

    Skryto před hosty

    Preambule

    nmap - pomůcka pro průzkum sítě a skener portů

    Nmap („Network Mapper“) je open source nástroj pro průzkum sítě a testování zabezpečení. Byl navržen pro rychlé skenování velkých sítí, i když dobře funguje i s jednotlivými cíli. Nmap používá nezpracované IP pakety důmyslným způsobem k určení toho, kteří hostitelé jsou v síti k dispozici, jaké služby (název a verze aplikace) nabízejí, jaké operační systémy (a verze OS) používají, jaké typy paketových filtrů/firewallů používají, a desítky dalších vlastností. Zatímco Nmap se obvykle používá pro testování zabezpečení, mnoho správců sítí a systémů jej považuje za užitečné pro běžné úkoly, jako je monitorování struktury sítě, správa plánů spouštění služeb a sledování doby provozu hostitele nebo služby.

    Výstupem Nmap je seznam naskenovaných cílů s dalšími informacemi pro každý v závislosti na zadaných možnostech. Klíčovou informací je „tabulka důležitých portů“. Tato tabulka obsahuje číslo portu, protokol, název služby a stav. Stav může být otevřený, filtrovaný, uzavřený nebo nefiltrovaný. Open znamená, že aplikace na cílovém počítači je připravena navázat spojení/přijímat pakety na tomto portu. Filtrovaný znamená, že port blokuje brána firewall, síťový filtr nebo jiné síťové rušení a Nmap nemůže určit, zda je port otevřený nebo zavřený. Uzavřené porty nejsou spojeny s žádnou aplikací, takže je lze kdykoli otevřít. Porty jsou považovány za nefiltrované, když reagují na požadavky Nmap, ale Nmap nemůže určit, zda jsou otevřené nebo zavřené. Nmap vydává open|filtred a closed|filtred, když nemůže určit, který z těchto dvou stavů popisuje port. Tato tabulka může na vyžádání také poskytnout podrobnosti o verzi softwaru. Při provádění skenování IP (-sO) poskytuje Nmap informace o podporovaných protokolech IP spíše než o otevřených portech.

    Kromě tabulky důležitých portů může Nmap poskytnout další informace o cílech: vyřešená jména DNS, odhady používaného operačního systému, typy zařízení a adresy MAC.

    Typické skenování pomocí Nmap je ukázáno v příkladu 1. Jediné argumenty použité v tomto příkladu jsou -A, pro určení verze OS, skenování skriptu a trasování; -T4 pro rychlejší provádění; pak dva cílové hostitele.

    Příklad 1: Typický příklad skenování pomocí Nmap:

    # nmap -A -T4 hřiště scanme.nmap.org Spuštění Nmap (https://nmap.org/) Zajímavé porty na scanme.nmap.org (64.13.134.52): (1663 portů naskenovaných, ale nezobrazených níže, je ve stavu : filtrováno) PORT STATE SERVIS VERZE 22/tcp otevřený ssh OpenSSH 3.9p1 (protokol 1.99) 53/tcp otevřená doména 70/tcp uzavřený gopher 80/tcp otevřený http Apache httpd 2.0.52 ((Fedora)) 113/atcp uzavřený typ: univerzální Spuštění: Linux 2.4.X|2.5.X|2.6.X Podrobnosti OS: Linux 2.4.7 - 2.6.11, Linux 2.6.0 - 2.6.11 Zajímavé porty na hřišti.nmap.org (192.168.0.40 ): (1659 naskenovaných portů, které nejsou zobrazeny níže, je ve stavu: uzavřeno) STAV PORTU SERVISNÍ VERZE 135/tcp otevřený msrpc Microsoft Windows RPC 139/tcp otevřený netbios-ssn 389/tcp otevřený ldap? 445/tcp otevřít microsoft-ds Microsoft Windows XP microsoft-ds 1002/tcp otevřít windows-icfw? 1025/tcp otevřený msrpc Microsoft Windows RPC 1720/tcp otevřený H.323/Q.931 CompTek AquaGateKeeper 5800/tcp otevřený vnc-http RealVNC 4.0 (rozlišení 400x250; port VNC: 5900 MAC/Tc.nc.otevřený) 5900 VNC0nc vNC. Adresa: 00:A0:CC:63:85:4B (Lite-on Communications) Typ zařízení: obecné použití Běh: Microsoft Windows NT/2K/XP Podrobnosti OS: Microsoft Windows XP Pro RC1+ do konečné verze Servisní informace: OS: Windows , Windows XP Nmap dokončen: 2 IP adresy (2 hostitelé nahoře) naskenovány za 88,392 sekund

    Souhrn možností

    Používání:
    nmap [Typy skenování] [Možnosti] (specified_targets)

    URČENÍ CÍLE SKENOVÁNÍ:

    Může pracovat s názvy hostitelů, IP adresami, sítěmi atd.
    Například: scanme.nmap.org, microsoft.com/24, 192.168.0.1; 10,0,0-255,1-254
    -iL<ввести_имя_файла>: Import ze seznamu hostitelů/sítí
    -ir<количество хостов>: Vyberte náhodné cíle
    -vyloučit : Vyloučit hostitele/sítě
    –excludefile<файл_с_исключениями>: Vyloučit seznam ze souboru

    DETEKCE HOSTITELE:

    SL: Skenování za účelem vytvoření seznamu – jednoduše vytvořte seznam cílů ke skenování
    -sn: Ping scan - jednoduše zjistěte, zda je hostitel spuštěn
    -Pn: Zacházet se všemi hostiteli jako nahoru - přeskočit detekci hostitele
    -PS/PA/PU/PY[seznam_portů]: TCP SYN/ACK, UDP nebo SCTP ping specifikovaní hostitelé
    -PE/PP/PM: Ping pomocí ICMP požadavků na echo, časové razítko a požadavky na masku sítě
    -PO[seznam_protokolů]: Ping pomocí protokolu IP
    -n/-R: Nikdy nevyřešit DNS/Vždy vyřešit [výchozí: někdy]
    – servery DNS<сервер1[,сервер2],…>: Nastavte si vlastní servery DNS
    –system-dns: Použijte systémový DNS resolver
    –traceroute: Trasování (trasování cesty) ke každému hostiteli

    RŮZNÉ TECHNIKY SKENOVÁNÍ:

    SS/sT/sA/sW/sM: TCP SYN/pomocí systémového volání Connect()/ACK/Window/Maimon scan
    -sU: Skenování UDP
    -sN/sF/sX: skenování TCP Null, FIN a Xmas
    – skenovací příznaky<флаги>: Nastavte si vlastní příznaky TCP
    -sI<зомби_хост[:порт]>: Nečinné skenování
    -sY/sZ: SCTP INIT/COOKIE-ECHO skenování
    -sO: skenování protokolu IP
    -b : FTP skenování odrazů

    DEFINICE PORTŮ A POŘADÍ SKENOVÁNÍ:

    P<диапазон_портов>: Skenování pouze určitých portů
    Příklad: -p22; -pl-65535; -p U:53,111,137,T:21-25,80,139,8080,S:9
    -F: Rychlé skenování – Skenování omezeného počtu portů
    -r: Skenovat porty postupně - nenáhodně porty
    – horní porty<количество_портов>: Skenovat<количество_портов>nejběžnější porty
    – poměr portů<рейтинг>: Skenování portů s hodnocením vyšším než<рейтинг>

    DEFINICE SLUŽEB A JEJICH VERZE:

    SV: Prozkoumejte otevřené porty a zjistěte informace o službě/verzi
    –verze-intenzita<уровень>: Nastavte od 0 (snadné) do 9 (vyzkoušejte všechny požadavky)
    –version-light: Omezení na nejlehčí dotazy (intenzita 2)
    –version-all: Použít každý jednotlivý požadavek (intenzita 9)
    –version-trace: Vytiskne podrobné informace o procesu skenování (pro ladění)

    SKENOVÁNÍ POMOCÍ SKRIPTU:

    SC: ekvivalent k –script=výchozí volba
    –script= : toto je čárkami oddělený seznam adresářů, souborů skriptů nebo kategorií skriptů
    –script-args=<имя1=значение1,[имя2=значение2,…]>: Předávání argumentů skriptům
    –script-args-file=název souboru: Předá argumenty souboru skriptům NSE
    –script-trace: Tisk všech přijatých a odeslaných dat
    –script-updatedb: Aktualizace databáze skriptů
    –script-help= : Zobrazit nápovědu ke skriptům. Čárkami oddělený seznam skriptů nebo seznam kategorií skriptů.

    DEFINICE OS:

    O: Aktivace funkce detekce OS
    –osscan-limit: Použijte funkci detekce OS pouze pro "nadějné" hostitele
    –osscan-guess: Odhadnout výsledky detekce OS

    MOŽNOSTI ŘÍZENÍ ČASU A PRODUKTIVITY:

    Možnosti, které vyžadují argument<время>, jsou uvedeny v milisekundách, dokud k hodnotě (např. 30 m) nepřičtete „s“ (sekundy), „m“ (minuty) nebo „h“ (hodiny).
    -T<0-5>: Nastavení šablony nastavení správy času (více je rychlejší)
    –min-hostgroup/max-hostgroup<кол_хостов>: Nastavte velikost skupiny pro paralelní skenování
    –min-paralelismus/max-paralelismus<кол_хостов>: Reguluje paralelizaci požadavků
    –min-rtt-timeout/max-rtt-timeout/initial-rtt-timeout<время>: Upravuje dobu čekání na odpověď na požadavek.
    – maximální počet opakování<количество_попыток>: Nastavuje maximální počet opakovaných přenosů požadavku
    – časový limit hostitele<время>: Zastaví skenování pomalých cílů
    –scan-delay/–max-scan-delay<время>: Upravuje prodlevu mezi požadavky
    – minimální sazba<число>: Odesílejte požadavky s intenzitou ne menší než<число>za sekundu
    – maximální sazba<число>: Odesílejte požadavky s intenzitou nepřesahující<число>za sekundu

    PŘECHÁZENÍ FIREWALLŮ/IDS:

    F; –mtu<значение>: Fragmentujte pakety (volitelné se zadanou hodnotou MTU)
    -D<фикт_хост1,фикт_хост2[,ME],…>: Maskování skenů pomocí fiktivních hostitelů
    -S : Změna adresy zdroje
    -E<интерфейс>: Použijte specifické rozhraní
    -g/–zdrojový-port<номер_порта>: Použijte zadané číslo portu
    – proxy : Přenos připojení přes HTTP/SOCKS4 proxy
    – délka dat<число>: Přidat libovolná data k odeslaným paketům
    – možnosti IP<опции>: Odešle paket se zadanými možnostmi IP
    –ttl<значение>: Nastavení doby životnosti (životnosti) pole IP
    –spoof-mac : Nastavte si vlastní MAC adresu
    –badsum: Odešle pakety s falešnými kontrolními součty TCP/UDP/SCTP

    VÝSTUP VÝSLEDKŮ:

    ON/-oX/-oS/-oG Výstupní výsledky normální, XML, s| -oA<базовове_имя_файла>: Použijte tři hlavní výstupní formáty najednou
    -v: Zvyšte verbální úroveň (pro zvýšení účinku nastavte dvakrát nebo vícekrát)
    -d: Zvýšení nebo nastavení úrovně ladění (až 9)
    –reason: Zobrazí důvod, proč je port v určitém stavu
    –open: Zobrazí pouze otevřené (nebo případně otevřené) porty
    –packet-trace: Sledování přijatých a odeslaných paketů
    –iflist: Seznam rozhraní a směrovačů (pro ladění)
    –log-errors: Log chyby/varování do výstupního souboru v normálním režimu
    –append-output: Připojuje se na konec, nikoli přepisuje výstupní soubory
    -resumé<имя_файла>: Pokračovat v přerušeném skenování
    – šablona stylů<путь/URL>: Nastaví šablonu stylů XSL pro převod výstupu XML do HTML
    –webxml: Načte šablonu stylů z Nmap.Org
    –no-stylesheet: Odstraňte deklaraci šablony stylů XSL z XML

    RŮZNÉ MOŽNOSTI:

    6: Povolte skenování IPv6
    -A: Povolte detekci OS a verzí, skriptované skenování a funkce sledování
    – datadir<имя_директории>: Určuje umístění souborů Nmap
    –send-eth/–send-ip: Použít nezpracovanou vrstvu ethernet/IP
    –privileged: Předpokládejme, že uživatel má všechna oprávnění
    –unprivileged: Naznačuje, že uživatel nemá oprávnění používat raw sockety
    -V: Číslo verze tisku
    -h: Zobrazí tuto stránku nápovědy

    INTERAKTIVNÍ PŘÍKAZY:

    NÁPOVĚDA: Nebude fungovat s „sudo nmap“, takže použijte „sudo –i“
    Při spuštění můžete dotazovat nmap pomocí následujících kláves:
    ? Ukažte tyto informace
    v/V zvýšení/snížení verbality
    d/D zvýšení/snížení ladění
    p/P povolit/zakázat trasování paketů
    a další klíče, které budou vytištěny ve stavu

    PŘÍKLADY:
    Definování cíle skenování

    Na příkazovém řádku Nmap je vše, co není volbou (nebo argumentem možnosti), považováno za cíl kontroly. V nejjednodušším případě se pro skenování použije IP adresa nebo název sítě cílového stroje.

    Někdy je nutné skenovat celou síť. Aby toho dosáhl, Nmap podporuje CIDR adresování. Můžete přidat /<кол-во бит>na IP adresu nebo název sítě a Nmap prohledá každou IP adresu, pro kterou je první<кол-во бит>stejné jako u zadaného hostitele. Například 192.168.10.0/24 prohledá 256 hostitelů mezi 192.168.10.0 (binární: 11000000 10101000 00001010 00000000) a 192.168.10.251 0.00 001010 11111111) včetně. 192.168.10.40/24 udělá přesně to samé. S vědomím, že IP adresa scanme.nmap.org je 64.13.134.52, záznam jako scanme.nmap.org/16 naskenuje 65 536 IP adres mezi 64.13.0.0 a 64.13.255.255. Nejmenší přijatelná hodnota je /0, při které bude skenován celý internet. Nejvyšší hodnota je /32, při které bude skenován pouze zadaný hostitel nebo IP adresa, protože všechny bity adresy jsou zakázány.

    Notace CIDR je krátká, ale ne vždy dostatečně flexibilní. Chcete například skenovat 192.168.0.0/16, ale přeskočit všechny adresy IP končící na .0 nebo .255, protože Obvykle se jedná o adresy vysílání. Nmap může toto skenování provést zadáním rozsahů v oktetech. Namísto zadání běžné IP adresy můžete pro každý oktet definovat buď seznam čísel oddělených čárkami, nebo rozsah. Například 192.168.0-255.1-254 předá všechny adresy v rozsahu končícím na .0 a .255. Rozsahy nemusí být zadávány pouze v posledních oktetech: zápis 0-255.0-255.13.37 prohledá všechny internetové adresy končící na 13,37. Tento typ skenování může být užitečný pro brouzdání po internetu a různé studie.

    Adresy IPv6 lze zadat pouze ve formě, která plně odpovídá správné formě zápisu adres IPv6. CIDR a použití rozsahů v oktetech se nevztahují na adresy IPv6, protože používají se zřídka.

    Na příkazovém řádku Nmap můžete předat různé definice cílů, nemusí to být nutně stejný typ. Tým nmap scanme.nmap.org 192.168.0.0/16 10.0.0,1,3-7.0-255 udělá to, co očekáváte.

    Cíle skenování se obvykle zadávají na příkazovém řádku a existují různé možnosti, jak řídit výběr cíle:

    IL<имя_файла>(Vstup ze seznamu)

    Čte cíle z<имя_файла>. I když je odesílání velkého seznamu hostitelů ke skenování běžné, není to pohodlné. Například váš server DHCP vám poskytne seznam 10 000 adres, které aktuálně používá, a vy jej chcete prohledat. Nebo možná chcete skenovat všechny IP adresy kromě těch, které jim byly přiřazeny, abyste zjistili neoprávněné použití statických IP adres. Jednoduše vygenerujte seznam hostitelů ke skenování a předejte název souboru Nmapu jako argument pro volbu -iL. Záznamy v souboru mohou být v jakékoli formě přijatelné pro Nmap (IP adresy, názvy sítí, CIDR, IPv6 nebo rozsahy oktetů). Každý záznam musí být oddělen mezerou nebo více, znaky tabulátoru nebo znaky nového řádku. Můžete předat pomlčku (-) jako argument názvu souboru, pokud chcete, aby Nmap četl seznam hostitelů ze standardního vstupu, nikoli ze souboru.

    IR<кол-во хостов>(Vybírá náhodné cíle)

    Pro skenování na celém webu nebo jakýkoli výzkum možná budete muset vybrat cíle náhodně. Argument<кол-во хостов>určuje, kolik IP adres je třeba vygenerovat. Nevhodné IP adresy, jako jsou soukromé, broadcastové nebo nelokalizované rozsahy adres, jsou automaticky přeskočeny. Argument 0 lze předat ke skenování na dobu neurčitou. Mějte na paměti, že některým správcům systému se nemusí líbit neoprávněné skenování jejich sítí a mohou si stěžovat. Tuto možnost použijte na vlastní nebezpečí! Pokud se v deštivém dni nudíte, zkuste nmap -sS -PS80 -iR 0 -p 80 prohledat náhodné webové servery.

    -vyloučit<хост1>[,<хост2>[,…]] (Vyloučit hostitele/sítě)

    Určuje čárkami oddělený seznam cílů, které mají být vyloučeny ze skenování, i když jsou součástí vámi určeného rozsahu skenování. Předaný seznam používá standardní syntaxi Nmap, takže může obsahovat názvy sítí, adresování CIDR, rozsahy oktetů atd. Tato možnost může být užitečná, pokud síť, kterou chcete skenovat, obsahuje servery nebo systémy, které na skenování portů reagují negativně, nebo podsítě spravované jinými lidmi.

    –excludefile<имя_файла>(Vyloučit seznam ze souboru)

    Tato možnost dělá to samé jako –exclude, kromě toho, že cíle, které se mají vyloučit, jsou odděleny mezerami, tabulátory nebo novými řádky<файле>, nikoli na příkazovém řádku.



    
    Nahoru