GNU/Linux >> Znalost Linux >  >> Linux

Zde je vše, co můžete dělat s Nmap – Příklady příkazů

Nmap je open source síťový mapovač, který umožňuje skenovat síť hostitelů, služeb, provádět hodnocení bezpečnosti a audit. Tento užitečný příkaz nabízí spoustu možností a možností, ale musíte mít zkušenosti s jeho používáním. V tomto tutoriálu se pokusím představit několik příkladů příkazů, které vám mohou pomoci identifikovat možná zranitelná místa v hostitelích, celé podsíti, zjišťování verzí operačního systému a služeb, seznam služeb, rozhraní, tras, identifikace mac atd…

Tak, jdeme na to.

Některé verze Linuxu nemusí být součástí nmap nainstalován, takže jej můžete nainstalovat pomocí yum nebo apt-get v závislosti na operačním systému, který používáte.

# yum nainstalovat nmap

nebo

# apt-get install nmap

Začněme skenováním jednoho hostitele:

Skenování jedné adresy IP (bez kořenového adresáře)

$ nmap 14.0.0.6

Ukázkový výstup:

Hostitel je aktivní (zpoždění 0,00035 s). Nezobrazeno:999 uzavřených portůPORT STATE SERVICE22/tcp otevřít sshNmap hotovo:1 IP adresa (1 hostitel nahoře) naskenována za 1,50 sekund

Skenování více IP adres (bez root)

$ nmap 14.0.0.6 14.0.0.5

Skenování více IP adres pomocí čárky jako oddělovače

$ nmap 14.0.0.6,5 

Výše uvedený příkaz prohledá adresy IP 14.0.0.5 a 14.0.0.6

Prohledávání rozsahu IP adres (bez kořenového adresáře)

$ nmap 14.0.0.1-5

Výše uvedený příkaz naskenuje IP adresu od 14.0.0.1 do 14.0.0.5

Skenování IP adresy pomocí zástupného znaku (bez root)

$ nmap 14.0.0.*

Prohledávání všech IP adres v podsíti

$ nmap 14.0.0.0/24

Skenování hostitele pomocí názvu domény

$ nmap www.example.com

Skenování hostitelů čtení z textového souboru

$ cat host-list.txt 14.0.0.1 www.example.com 14.0.0.2
$ nmap -iL host-list.txt

Prohledávání podsítě s výjimkou konkrétní IP adresy

$ nmap 14.0.0.0/24 --vyloučit 14.0.0.1

Prohledejte podsíť bez seznamu adres IP

$ nmap 14.0.0.0/24 --vyloučit 14.0.0.1,2

Prohledejte podsíť bez seznamu adres IP ze souboru

$ cat exclusive-ips.txt14.0.0.1,2,3,4,5
$ nmap 14.0.0.0/24 --excludefile exclusive-ips.txt

Identifikujte názvy hostitelů všech IP adres v podsíti (bez kořene)

$ nmap -sL 14.0.0.0/24

Proveďte vymazání PING

Ping sweep se obecně používá ke zjištění, kteří hostitelé jsou v síti aktivní. Ping sweep lze použít, pokud chcete skenovat velký počet hostitelů v síti.

# nmap -sP 14.0.0.6

Prohledejte jeden port konkrétní IP adresy nebo hostitele (bez root)

$ nmap -p 22 14.0.0.6

Ukázkový výstup:

Hostitel běží (latence 0,00066 s).PORT   STATE SERVICE22/tcp open  sshNmap hotovo:1 IP adresa (1 hostitel nahoře) naskenována za 0,47 sekund

Prohledejte řadu portů (bez kořenového adresáře)

$ nmap -p 15-23 14.0.0.6

Ukázkový výstup:

PORT   STATE  SERVICE15/tcp uzavřen netstat16/tcp uzavřen neznámý17/tcp uzavřen qotd18/tcp uzavřen neznámý19/tcp uzavřen chargen20/tcp uzavřen ftp-data21/tcp uzavřen ftp22/tcp otevřen   ssh23/tcp uzavřen tel. 

Proveďte rychlou kontrolu portů (100 nejběžnějších portů) (žádný root)

$ nmap -F 14.0.0.6

Naskenujte nejvyšší $počet portů (bez kořenového adresáře)

$ nmap --top-ports 10 14.0.0.6
$ nmap --top-ports 2 14.0.0.6

Prohledat všechny porty (bez kořenového adresáře)

$ nmap -p- 14.0.0.6

Výše uvedený příkaz prohledá všech 65535 portů dané IP adresy.

Detekce informací o operačním systému a službě vzdáleného hostitele (bez root)

$ nmap -A 14.0.0.6

Ukázkový výstup:

Spouštění Nmap 7.01 ( https://nmap.org ) v 2016-07-11 06:34 UTC Host je aktivní (latence 0,00029s). Nezobrazeno:999 uzavřených portů PORT   STATE SERVICE VERSION 22/tcp open  ssh     OpenSSH 7.2p2 Ubuntu 4ubuntu1 (Ubuntu Linux; protokol 2.0) ::::::::::::::::::::

Detekce služby (bez root)

$ nmap -sV 14.0.0.6

Detekce agresivních služeb (bez rootu)

Příkaz Nmap spoléhá na různé metody zjišťování informací o operačním systému a službách. Detekce agresivní služby je užitečná, když služba běží na neobvyklém portu (např. se očekává, že SSH bude naslouchat na portu 22, ale vzdálený hostitel může službu provozovat na jiném portu). Detekce agresivní služby je pomalejší než detekce normální služby, protože ta pozdější získává informace z bannerů služeb.

$ nmap -sV --version-intensity 5 14.0.0.6

Ukázkový výstup:

Hostitel je aktivní (latence 0,00044 s). Nezobrazeno:999 uzavřených portůPORT   STATE SERVICE VERSION22/tcp open  ssh     OpenSSH 7.2p2 Ubuntu 4ubuntu1 (Ubuntu Linux; protokol 2.0) Informace o službě:OS:Linux; CPE:cpe:/o:linux:linux_kernelService provedena detekce. Nahlaste prosím jakékoli nesprávné výsledky na https://nmap.org/submit/

Detekce operačního systému (root)

Výše uvedený příklad detekce služby odhalí informace o operačním systému. Je také možné uhodnout operační systém a jeho verzi pomocí níže uvedeného příkazu.

Poznámka:Detekce OS vyžaduje oprávnění root.

Otisky prstů $ nmap -O 14.0.0.6 TCP/IP (pro skenování OS) vyžadují oprávnění root. UKONČENÍ!
# nmap -O 14.0.0.6
# nmap -O --osscan-guess 14.0.0.6Spuštění Nmap 7.01 ( https://nmap.org ) v 2016-07-11 08:39 UTCHost je aktivní (latence 0,00035 s). Nezobrazeno:999 uzavřeno portsPORT   STATE SERVICE22/tcp open  sshAggressive OS odhady:Linux 3.1 (93 %), Linux 3.2 (93 %), AXIS 210A nebo 211 Network Camera (Linux 2.6.17) (92 %), Android 5.0.2 (92 %), Android 5.1 (92 %), Linux 3.0 (92 %), Linux 3.11 (92 %), Linux 3.12 (92 %), Linux 3.12 – 3.19 (92 %), Linux 3.13   (92 %)
# nmap -v -O --osscan-guess 14.0.0.6

Zjistit, zda je hostitel chráněn firewallem (root)

Když je firewall na vzdáleném hostiteli vypnutý, nmap prohledá všechny porty a řekne, že jsou nefiltrované, jak je znázorněno níže:

# nmap -sA 14.0.0.6Host je aktivní (latence 0,00042 s).Všech 1000 naskenovaných portů na henry2.cloudsecurity.in (14.0.0.6) není filtrováno 

Když je na vzdáleném hostiteli povolena brána firewall, nmap říká, že porty jsou filtrovány:

# nmap -sA Zpráva o skenování 14.0.0.6Nmap pro henry2.cloudsecurity.in (14.0.0.6)Hostitel je aktivní (zpoždění 0,00045s).Všech 1000 naskenovaných portů na henry2.cloudsecurity.in (14.0.0.6) je filtrováno 

Skenování pomocí skriptů NSE

Existuje asi 400+ NSE (Nmap S šifrování E ngine) skripty, které lze použít s nmap a každý skript je dodáván s dobrou dokumentací. Chcete-li identifikovat seznam skriptů nainstalovaných ve vašem počítači, spusťte níže uvedený příkaz:

# locate nse |grep script :::::::::::::::::::::/usr/share/nmap/scripts/ssl-enum-ciphers.nse /usr/share /nmap/scripts/ssl-google-cert-catalog.nse /usr/share/nmap/scripts/ssl-heartbleed.nse /usr/share/nmap/scripts/ssl-known-key.nse /usr/share/nmap /scripts/ssl-poodle.nse /usr/share/nmap/scripts/sslv2.nse /usr/share/nmap/scripts/sstp-discover.nse /usr/share/nmap/scripts/stun-info.nse /usr /share/nmap/scripts/stun-version.nse /usr/share/nmap/scripts/stuxnet-detect.nse /usr/share/nmap/scripts/supermicro-ipmi-conf.nse /usr/share/nmap/scripts /svn-brute.nse /usr/share/nmap/scripts/targets-asn.nse /usr/share/nmap/scripts/targets-ipv6-map4to6.nse /usr/share/nmap/scripts/targets-ipv6-multicast -echo.nse /usr/share/nmap/scripts/targets-ipv6-multicast-invalid-dst.nse /usr/share/nmap/scripts/targets-ipv6-multicast-mld.nse /usr/share/nmap/scripts /targets-ipv6-multicast-slaac.nse /usr/share/nmap/scripts/targets-ipv6-wordlist.nse /usr/share/nmap/scripts/targets-sniffer.nse /usr/share/nmap/scripts/tar gets-traceroute.nse /usr/share/nmap/scripts/targets-xml.nse :::::::::::::

DNS Hrubá síla k identifikaci dílčích domén dané domény (bez kořene)

nmap umožňuje identifikovat seznam subdomén pro daného hostitele. Identifikace subdomén hostitelů může odhalit nové cíle při provádění hodnocení zabezpečení. Chcete-li to provést, dns-brute.nse musí být použit skript.

$ nmap -p 80 --script dns-brute.nse example.com

Ukázkový výstup:

PORT   STATE SERVICE80/tcp open  httpHost script results:| dns-brute:| DNS Brute-force názvy hostitelů:| www.example.com – 93.184.216.34|_    www.example.com – 2606:2800:220:1:248:1893:25c8:1946

Identifikace virtuálních hostitelů na daném hostiteli (bez root)

Daný název domény může hostit více webových stránek pomocí funkce virtuálních hostitelů webových serverů. Virtuální hostitele můžete identifikovat pomocí hostmap-bfk.nse skript.

$ nmap -p 80 --script hostmap-bfk.nse nmap.org Výsledky hostitelského skriptu:| hostmap-bfk:| hostitelé:| mail.nmap.org | 45.33.49.119 | 119.49.33.45.in-addr.arpa | ack.nmap.org | sectools.org | svn.nmap.org | insecure.com | mail.seclists.org | seclists.org | mirror.sectools.org | www.insecure.org | nmap.org | insecure.org | www.nmap.org |_    www.insecure.com

Určete zeměpisnou polohu daného hostitele

# nmap --traceroute --script traceroute-geolocation.nse -p 80 example.com

Ukázkový výstup:

::::::::::::::::Výsledky hostitelského skriptu:| traceroute-geolocation:| Hop RTT Adresa Geolocation | 1 0,44 14.0.0.1 23,113 Čína (Guangdong) | 2 0,88 10,180.141.1 -, - | 3 1,58 144,16.192.34 20,77 Indie () | 4 1,87 14.139.1.30 20,77 Indie () | 5 1,61 10.118.248.45 -, - | 6 11,62 10.161.18.5 -, - | 7    ...| 8 13,32 10,255.221.34 -, - | 9 14,71 115.249.209,6 18 72 Indie (MAH \ XC4 \ X81R \ XC4 \ X81SHTRA) | 10   ...| 11   ...| 12   ...| 13 293,92 xe-3-0-6.0.cjr01.sin001.flagtel.com (62.216.129.201) 51,0 Spojené království () | 14 293,77 GE-2-0-0,0.pjr01.hkg005.flagtel.com.25.95.85.in-addr.arpa (85,9 5,25,41) 51,0 Spojené království () | 15 168,70 SO-1-0-0,0.pjr01.wad001.flagtel.com (85.95.25.193) 51,0 Spojené království () | 16 168.13 SO-2-2-0,0.PJR01.WAD001.FAGTEL.COM (85.95.25.37) 51,0 Spojené království () | 17 293,97 SO-2-1-0,0.pjr01.lax002.flagtel.com (85.95.25.17) 51,0 Spojené království () | 18 275,17 any2ix.coresite.com (206.223.143.232) 38, -97 United States () | _ 19 295,32 93.184.216.34 42, -70 Spojené státy americké (Massachusetts) ::::::::::::::::::::::::::::::::::

Například identifikujte seznam skriptů souvisejících s HTTP:

# locate nse |grep http /usr/share/nmap/nselib/http.lua /usr/share/nmap/nselib/httpspider.lua /usr/share/nmap/nselib /data/http-default-accounts-fingerprints.lua /usr/share/nmap/nselib/data/http-devframework-fingerprints.lua /usr/share/nmap/nselib/data/http-fingerprints.lua /usr/share /nmap/nselib/data/http-folders.txt /usr/share/nmap/nselib/data/http-sql-errors.lst /usr/share/nmap/nselib/data/http-web-files-extensions.lst /usr/share/nmap/scripts/http-adobe-coldfusion-apsa1301.nse /usr/share/nmap/scripts/http-affiliate-id.nse /usr/share/nmap/scripts/http-apache-negotiation.nse /usr/share/nmap/scripts/http-auth-finder.nse /usr/share/nmap/scripts/http-auth.nse /usr/share/nmap/scripts/http-avaya-ipoffice-users.nse /usr /share/nmap/scripts/http-awstattotals-exec.nse /usr/share/nmap/scripts/http-axis2-dir-traversal.nse /usr/share/nmap/scripts/http-backup-finder.nse /usr /share/nmap/scripts/http-barracuda-dir-traversal.nse /usr/share/nmap/scripts/http-brute.nse /usr/ share/nmap/scripts/http-cakephp-version.nse /usr/share/nmap/scripts/http-chrono.nse /usr/share/nmap/scripts/http-cisco-anyconnect.nse /usr/share/nmap/ scripts/http-coldfusion-subzero.nse /usr/share/nmap/scripts/http-comments-displayer.nse /usr/share/nmap/scripts/http-config-backup.nse /usr/share/nmap/scripts/ http-cors.nse /usr/share/nmap/scripts/http-cross-domain-policy.nse /usr/share/nmap/scripts/http-csrf.nse /usr/share/nmap/scripts/http-date. nse /usr/share/nmap/scripts/http-default-accounts.nse /usr/share/nmap/scripts/http-devframework.nse /usr/share/nmap/scripts/http-dlink-backdoor.nse /usr/ share/nmap/scripts/http-dombased-xss.nse /usr/share/nmap/scripts/http-domino-enum-passwords.nse /usr/share/nmap/scripts/http-drupal-enum-users.nse / usr/share/nmap/scripts/http-drupal-enum.nse /usr/share/nmap/scripts/http-enum.nse /usr/share/nmap/scripts/http-errors.nse /usr/share/nmap/ scripts/http-exif-spider.nse /usr/share/nmap/scripts/http-favicon.nse /usr/share/nmap/scripts/http-feed.nse /usr/ share/nmap/scripts/http-fetch.nse /usr/share/nmap/scripts/http-fileupload-exploiter.nse /usr/share/nmap/scripts/http-form-brute.nse /usr/share/nmap/ scripts/http-form-fuzzer.nse /usr/share/nmap/scripts/http-frontpage-login.nse /usr/share/nmap/scripts/http-generator.nse /usr/share/nmap/scripts/http- git.nse /usr/share/nmap/scripts/http-gitweb-projects-enum.nse ::::::::::::::::::::

Z výše uvedeného výstupu můžete zkopírovat název skriptu a použít jej s –script možnost.

Získejte informace o službě HTTP (bez root)

Existuje mnoho skriptů pro získání informací o HTTP službě, jako je název webové stránky, HTTP hlavičky, hledání různých známých cest webové aplikace atd…

$ nmap --script=http-title 14.0.0.5 Hostitel je aktivní (latence 0,0000070 s). Nezobrazeno:998 uzavřených portůPORT   STATE SERVICE22/tcp open  ssh80/tcp open  http|_http-title:Výchozí stránka Apache2 Ubuntu:Funguje 

Získejte informace o záhlaví HTTP (bez kořenového adresáře)

$ nmap --script=http-headers 14.0.0.5PORT   STATE SERVICE22/tcp open  ssh80/tcp open  http| http-hlavičky:| Datum:Po, 11. července 2016 07:08:05 GMT| Server:Apache/2.4.18 (Ubuntu)| Naposledy změněno:Po, 11. července 2016 07:04:49 GMT| ETAG:"2c39-53756c49f4280"| Accept-Ranges:bytes| Obsah-Délka:11321| Vary:Accept-Encoding| Připojení:zavřít| Content-Type:text/html||_  (Typ požadavku:HEAD)

Identifikujte známé cesty webové aplikace HTTP (bez kořenového adresáře)

$ nmap --script=http-enum 14.0.0.580/tcp otevřít  http| http-enum:|_  /server-status/:Potenciálně zajímavá složka 

Zjistit zranitelnost protokolu Heartbleed SSL (bez root)

Možná jste slyšeli o zranitelnosti SSL heartbleed. K detekci této chyby zabezpečení lze použít příkaz Nmap, jak je znázorněno níže:

nmap -sV -p 443 --script=ssl-heartbleed 14.0.0.0/24

Určete whois názvu domény (bez kořenového adresáře)

$ nmap -sV --script=whois-domain.nse www.example.com

Ukázkový výstup:

Výsledky hostitelského skriptu:| whois-doména:|| Záznam názvu domény nalezen na adrese whois.iana.org| % IANA WHOIS server| % pro více informací o IANA navštivte http://www.iana.org| % Tento dotaz vrátil 1 objekt|| doména:       EXAMPLE.COM|| organizace:Internet Assigned Numbers Authority|| vytvořeno:      1992-01-01| zdroj:       IANA|_

TCP Syn a UDP Scan (root)

# nmap -sS -sU -PN 14.0.0.6

Výše uvedený příkaz prohledá 2000 běžných portů TCP a UDP. –PN požadavky na volbu nmap přeskočit ping scan a předpokládat, že hostitel je zapnutý. Tato možnost je užitečná, když má vzdálený počítač povolenou bránu firewall a zahazuje všechny pakety ICMP.

Kontrola připojení TCP (bez root)

$ nmap -sT 14.0.0.6

Výše uvedený příkaz požaduje, aby OS navázal TCP spojení s 1000 společnými porty namísto odesílání TCP SYN paketu.

Naskenujte adresy IPv6 (bez kořenového adresáře)

Všechny výše uvedené ukázkové příkazy skenovaly adresu IPv4, ale můžete skenovat i adresu IPv6. Chcete-li to provést, musíte použít možnost „-6 ‘ následované adresou IPv6.

$ nmap -6 2001:db8:000:3eff:fe52:77

Vypsat hostitelská rozhraní a trasy (bez kořenového adresáře)

$ nmap --iflistSpuštění Nmap 7.01 ( https://nmap.org ) v 2016-07-11 09:53 UTC******************** ***ROZHRANÍ************************DEV  (KRÁTKÁ) IP/MASK                       TYP     UP MTU   MAClo   (lo)    127.0.0.1/8       6 5 5 zpět nahoru 5   (lo)    ::1/128                       zpětná smyčka nahoru 65536ens3 (ens3)  14.0.0.5/24           )           )  16:0   ethernet nahoru 1450 /6:16:4 ethernet nahoru 1450 /6:16:16:3 1450  FA:16:3E:C0:14:5F****************************** TRASY************ ********************** DST/Mask Dev Metric Gateway169.254.169.254/32 ENS3 0 14.0.0.14.0.0.0/24 ENS3 00.0.0.0/0 ENS3 0 14.0.0.1::1/128                        lo   0fe80::f816:3eff:fec0:145f/128 lo   0fe80::/64                                                                     25   

Ukládání výstupů Nmap do textového souboru

$ nmap -oN nmap_text.txt 14.0.0.6

Uložit výstup Nmap jako XML

$ nmap -oX nmap_xml.xml 14.0.0.6

Uložte výstup ve formátu pro grep

$ nmap -oG nmap_grep.txt 14.0.0.6

Uložit výstup Nmap ve všech formátech

$ nmap -oA allformats_file 14.0.0.6

Nmap s GUI

Stáhněte si Zenmap (nebo) nainstalujte pomocí apt-get/yum

$ sudo apt-get install zenmap


Linux
  1. Linux Tee Command s příklady

  2. Příkaz Nohup s příklady

  3. JQ Command v Linuxu s příklady

  1. wc Linux Command s příklady

  2. Linux řazení příkazů s příklady

  3. Echo Command v Linuxu (s příklady)

  1. man Command v Linuxu s příklady

  2. Příkaz AWK v Linuxu s příklady

  3. 20 úžasných příkladů příkazů Nmap v Linuxu