Heim > Artikel > Betrieb und Instandhaltung > Anweisungen zur Verwendung des Netzwerk-Scan-Tools nmap
Verzeichnis dieses Artikels:
1.1 Optionsbeschreibung
1.2 Versuchen Sie einen Scan
1.3 Zielbeschreibung scannen
1.4 Beschreibung des Portstatus
1.5 Zeitparameteroptimierung
1.6 Betriebssystemtyp scannen
1.7 Schnellscan von Live-Hosts
1.8 Schnellscan Anzahl der Ports
nmap wird im Allgemeinen verwendet, um zu scannen, ob der Host online ist (insbesondere das Scannen der überlebenden Maschinen im LAN) und welche Ports geöffnet sind. Andere Funktionen werden selten verwendet und Personen, die Penetrationen durchführen, müssen möglicherweise mehr über sie wissen.
nmap muss selbst installiert werden.
Shell> yum -y install nmap
Verwenden Sie nmap -h, um Optionen und Verwendung anzuzeigen. Es gibt viele Optionen, was das unvermeidliche Ergebnis eines leistungsstarken Tools ist, aber nur wenige davon sind einfach zu verwenden.
Verwendung: nmap [Scan-Typ(en)] [Optionen] {Zielspezifikation}
ZIELSPEZIFIKATION:
Kann Hostnamen, IP-Adressen, Netzwerke usw. übergeben.
Beispiel: scanme.nmap.org, microsoft.com/24, 192.168.0.1; 10.0.0-255.1-254
-iL
-iR
--exclude
--excludefile
HOST DISCOVERY:
-sL: Listenscan – einfach Zu scannende Ziele auflisten
-sn: Ping-Scan – Port-Scan deaktivieren
-Pn: Alle Hosts als online behandeln – Hosterkennung überspringen
-PS/PA/PU/PY[portlist]: TCP SYN/ACK, UDP oder SCTP-Erkennung für bestimmte Ports
-PE/PP/PM: ICMP Erkennungsprüfungen für Echo-, Zeitstempel- und Netzmaskenanforderungen
-PO[Protokollliste]: IP-Protokoll-Ping
-PR: ARP-Ping – benötigt keine HW-Adresse -> ; IP-Übersetzung
-n/-R: DNS-Auflösung niemals durchführen/Immer auflösen [Standard: manchmal]
--dns-server
--system-dns: DNS-Resolver des Betriebssystems verwenden
--traceroute: Hop-Pfad zu jedem Host verfolgen
SCAN-TECHNIKEN:
-sS/sT/sA/sW/sM: TCP SYN/Connect()/ACK/Window/Maimon-Scans
-sU: UDP-Scan
-sN/sF/sX: TCP-Null-, FIN- und Xmas-Scans
--scanflags
-sI
-sY/sZ: SCTP INIT/COOKIE- ECHO-Scans
-sO: IP-Protokoll-Scan
-b
PORT-SPEZIFIKATION UND SCAN-REIHENFOLGE:
-p
Beispiel: -p22; -p1-65535; -p U:53,111,137,T:21-25,80,139,8080,S:9
-F: Schneller Modus – Scannen Sie weniger Ports als der Standard-Scan
-r: Ports nacheinander scannen – nicht randomisieren
--top-ports
SERVICE-/VERSIONSERKENNUNG:
-sV: Offene Ports prüfen, um Service-/Versionsinformationen zu ermitteln
-sR: Überprüfen Sie mithilfe des RPC-Scans, welcher Dienst geöffnete Ports verwendet.
--version-intensity
--version-light: Auf die wahrscheinlichsten Sonden beschränken (Intensität 2)
--version-all: Jede einzelne Sonde ausprobieren (Intensität 9)
--version-trace: Detaillierte Versionsscan-Aktivität anzeigen (zum Debuggen)
SCRIPT SCAN:
-sC: entspricht --script=default
- -script=
--script-args=
--script-trace: Alle gesendeten und empfangenen Daten anzeigen
--script-updatedb: Skriptdatenbank aktualisieren.
OS-ERKENNUNG:
- O: Betriebssystemerkennung aktivieren
--osscan-limit: Betriebssystemerkennung auf vielversprechende Ziele beschränken
--osscan-guess: Betriebssystem aggressiver erraten
ZEITPUNKT UND LEISTUNG:
Optionen, die
„s“ (Sekunden), „m“ (Minuten) oder „h“ (Stunden) an den Wert an (z. B. 30 m).
-T<0-5>: Timing-Vorlage festlegen (höher ist schneller)
--min-hostgroup/max-hostgroup
--min-parallelism/max-parallelism
--min -rtt-timeout/max-rtt-timeout/initial-rtt-timeout
Sonden-Roundtripzeit an.
--max-retries
--host-timeout
--scan-delay/--max-scan-delay < ;time>: Verzögerung zwischen Tests anpassen
--min-rate
--max-rate
FIREWALL/IDS EVASION UND SPOOFING:
-f; --mtu
-D
-S
-e
-g/- -source-port
--data-length
--ip-options
--ttl
--spoof-mac
--badsum: Senden Sie Pakete mit einer falschen TCP/UDP/SCTP-Prüfsumme
AUSGABE:
-oN/- oX/-oS/-oG
bzw. Grepable-Format, zum angegebenen Dateinamen.
-oA
-v: Ausführlichkeitsgrad erhöhen (verwenden Sie -vv oder mehr für eine größere Wirkung)
-d: Erhöhen Sie die Debugging-Stufe (verwenden Sie -dd oder mehr für eine größere Wirkung)
--reason: Zeigt den Grund an, warum sich ein Port in einem bestimmten Zustand befindet
--open: Zeigt nur offene (oder möglicherweise offene) Ports an
--packet-trace: Alle anzeigen gesendete und empfangene Pakete
--iflist: Hostschnittstellen und Routen drucken (zum Debuggen)
--log-errors: Fehler/Warnungen in der Ausgabedatei im Normalformat protokollieren
--append-output: An angegebene Ausgabedateien anhängen, anstatt sie zu überladen
--resume
--stylesheet
--webxml: Referenz-Stylesheet von Nmap.Org für portableres XML
--no-stylesheet: Verhindert die Verknüpfung des XSL-Stylesheets mit der XML-Ausgabe
MISC:
-6: IPv6-Scan aktivieren
-A: Betriebssystemerkennung, Versionserkennung, Skript-Scanning und Traceroute aktivieren
--datadir < ;dirname>: Geben Sie den Speicherort der benutzerdefinierten Nmap-Datendatei an
--send-eth/--send-ip: Senden Sie mit rohen Ethernet-Frames oder IP-Paketen
--privileged: Annehmen, dass der Benutzer ist vollständig privilegiert
--unprivileged: Geht davon aus, dass der Benutzer keine Raw-Socket-Berechtigungen hat
-V: Versionsnummer drucken
-h: Diese Hilfezusammenfassungsseite drucken.
BEISPIELE:
nmap -v -A scanme.nmap.org
nmap -v -sn 192.168.0.0/16 10.0.0.0/8
nmap - v -iR 10000 -Pn -p 80
常用的就上面标红的几个。下面是解释:
-iL <inputfilename>:从输入文件中读取主机或者IP列表作为探测目标-sn: PING扫描,但是禁止端口扫描。默认总是会扫描端口。禁用端口扫描可以加速扫描主机-n/-R: 永远不要/总是进行DNS解析,默认情况下有时会解析-PE/PP/PM:分别是基于echo/timestamp/netmask的ICMP探测报文方式。使用echo最快-sS/sT/sA/sW:TCP SYN/Connect()/ACK/Window,其中sT扫描表示TCP扫描-sU:UDP扫描-sO:IP扫描-p <port ranges>: 指定扫描端口--min-hostgroup/max-hostgroup <size>: 对目标主机进行分组然后组之间并行扫描--min-parallelism/max-parallelism <numprobes>: 设置并行扫描的探针数量-oN/-oX/ <file>: 输出扫描结果到普通文件或XML文件中。输入到XML文件中的结果是格式化的结果-v:显示详细信息,使用-vv或者更多的v显示更详细的信息
nmap扫描一般会比较慢,特别是扫描非本机的时候。
[root@server2 ~]# nmap 127.0.0.1Starting Nmap 6.40 ( http://nmap.org ) at 2017-06-20 13:03 CSTNmap scan report for localhost (127.0.0.1) Host is up (0.0000010s latency). Not shown: 998 closed ports PORT STATE SERVICE22/tcp open ssh25/tcp open smtp
只扫描出了两个端口, 但是不代表真的只开了两个端口, 这样不加任何参数的nmap将自动决定扫描1000个高危端口,但哪些是高危端口由nmap决定.从结果中也能看出来, „NICHT angezeigt: 998 geschlossene Ports“表示998个关闭的端口未显示出来, 随后又显示了2个open端口,正好1000个。虽说默认只扫描1000个,但常见的端口都能扫描出来.
从虚拟机扫描win主机看看。可以感受到,扫描速度明显降低了。
[root@server2 ~]# nmap 192.168.0.122 Starting Nmap 6.40 ( http://nmap.org ) at 2017-06-20 13:11 CSTNmap scan report for 192.168.0.122Host is up (1.2s latency). Not shown: 990 closed ports PORT STATE SERVICE21/tcp open ftp135/tcp open msrpc139/tcp open netbios-ssn443/tcp open https445/tcp open microsoft-ds514/tcp filtered shell902/tcp open iss-realsecure912/tcp open apex-mesh1583/tcp open simbaexpress5357/tcp open wsdapi Nmap done: 1 IP address (1 host up) scanned in 8.38 seconds
可以指定"- p [1-65535]"来扫描所有端口,或者使用"-p-"选项也是全面扫描.
[root@xuexi ~]# nmap -p- 127.0.0.1
nmap默认总是会扫描端口,可以使用-sn选项禁止扫描端口,以加速扫描主机是否存活。
Nmap支持CIDR风格的地址,Nmap将会扫描所有和该参考IP地址具有相同cidr位数的所有IP地址或主机.
例如192.16 8.10.0/24 Monate, 192.168.10.0 und 192.168.10.255 256 Tage, 192.168.10.40/24 Tage扫描205.217.0.0和205.217.255.255之IP-Adresse 65536该主机或IP地址,因为所有主机位都固定了。
CIDR标志位很简洁但有时候不够灵活。例如也许想要扫描192.168.0.0/16,但略过任何以.0"或者.255"结束的IP地址,因为它们通常是网段地址或广播地址.可以用逗号分开的数字或范围列表为IP地址指定它的范围。例如“192 .168.0-255.1-254"将略过该范围内以".0"和". 255 37"结束的地址.
Nmap命令行接受多个主机说明,它们不必是相同类型。如:
nmap www.hostname.com 192.168.0.0/8 10.0.0,1,3-7.0-255
虽然目标通常在命令行指定,下列选项也可用来控制目标的选择:
-iL
从
--exclude
--excludefile
指定一个IP地址然后加一个CIDR的掩码位,如192.168.100.22/24,当然写成192.168.100.0/24也是一样的,因为nmap需要的是参考IP。如果扫描的是范围地址,可以192.168.100.1-254这样的书写方式。
[root@xuexi ~]# nmap 192.168.100.1/24 Starting Nmap 6.40 ( http://nmap.org ) at 2017-06-20 13:22 CSTNmap scan report for 192.168.100.1Host is up (0.00053s latency). Not shown: 992 filtered ports PORT STATE SERVICE21/tcp open ftp135/tcp open msrpc139/tcp open netbios-ssn443/tcp open https445/tcp open microsoft-ds902/tcp open iss-realsecure912/tcp open apex-mesh5357/tcp open wsdapi MAC Address: 00:50:56:C0:00:08 (VMware) Nmap scan report for 192.168.100.2Host is up (0.000018s latency). Not shown: 999 closed ports PORT STATE SERVICE53/tcp open domain MAC Address: 00:50:56:E2:16:04 (VMware) Nmap scan report for 192.168.100.70Host is up (0.00014s latency). Not shown: 999 closed ports PORT STATE SERVICE22/tcp open sshMAC Address: 00:0C:29:71:81:64 (VMware) Nmap scan report for 192.168.100.254Host is up (0.000095s latency). All 1000 scanned ports on 192.168.100.254 are filtered MAC Address: 00:50:56:ED:A1:04 (VMware) Nmap scan report for 192.168.100.62Host is up (0.0000030s latency). Not shown: 999 closed ports PORT STATE SERVICE22/tcp open sshNmap done: 256 IP addresses (5 hosts up) scanned in 7.96 seconds
Im Allgemeinen ist es wahrscheinlich nicht der Computer, bei dem alle Ports geschlossen sind, sondern es kann der Router, die virtuelle Netzwerkkarte und andere Geräte sein.
Nmap hat immer mehr Funktionen, aber seine Kernfunktion ist das Port-Scannen, für das es berühmt ist.
Nmap unterteilt Ports in sechs Zustände: offen (offen), geschlossen (geschlossen), gefiltert (gefiltert), ungefiltert (ungefiltert), offen|gefiltert (offen oder gefiltert) oder geschlossen|gefiltert (geschlossen oder). gefiltert).
Diese Zustände sind keine Eigenschaften der Ports selbst, sondern beschreiben, wie Nmap sie betrachtet. Wenn Sie beispielsweise den 135/TCP-Port des gleichen Zielcomputers scannen, wird beim Scannen aus demselben Netzwerk angezeigt, dass er geöffnet ist. Wenn Sie jedoch genau denselben Scan im gesamten Netzwerk durchführen, kann dies der Fall sein zeigt, dass er gefiltert ist.
1.open: (Öffnen) Die Anwendung empfängt TCP- oder UDP-Pakete auf diesem Port. Es ist oft das Hauptziel für Port-Scans.
2.geschlossen: (geschlossen) Ein geschlossener Port ist auch für Nmap zugänglich (er akzeptiert die Erkennungsnachrichten von Nmap und antwortet), aber keine Anwendung lauscht darauf.
3.filtered: (Gefiltert) Da auf dem Ziel eine Paketfilterung (z. B. ein Firewall-Gerät) eingerichtet ist, werden Erkennungspakete daran gehindert, den Port zu erreichen, und Nmap kann nicht feststellen, ob Der Hafen ist geöffnet. Die Filterung kann von speziellen Firewall-Geräten, Router-Regeln oder Software-Firewalls auf dem Host ausgehen.
4. Ungefiltert: Der ungefilterte Status bedeutet, dass der Port zugänglich ist, Nmap jedoch nicht feststellen kann, ob er offen oder geschlossen ist. Das Scannen dieser ungefilterten Ports mit anderen Scantypen wie Windows-Scans, SYN-Scans und FIN-Scans kann dabei helfen, festzustellen, ob der Port geöffnet ist.
5.open|filtered: (offen oder gefiltert): Wenn es unmöglich ist zu bestimmen, ob ein Port offen oder gefiltert ist, klassifiziert Nmap den Port in diesen Zustand. Ein Beispiel ist ein offener Port, der nicht reagiert. Keine Antwort kann auch bedeuten, dass der Paketfilter auf dem Zielhost das Testpaket oder eine von ihm verursachte Antwort verworfen hat. Daher kann Nmap nicht feststellen, ob der Port offen oder gefiltert ist.
6.closed|filtered: (geschlossen oder gefiltert) Dieser Status wird verwendet, wenn Nmap nicht ermitteln kann, ob der Port geschlossen oder gefiltert ist. Es erscheint möglicherweise nur bei IPID-Leerlaufscans.
Zu den Techniken zur Verbesserung der Scanzeit gehören: Ignorieren unkritischer Erkennungen, Aktualisieren auf die neueste Version von Nmap (Das Dokument besagt, dass die Leistung umso besser ist, je höher die Nmap-Version ist) usw. Darüber hinaus führt die Optimierung der Zeitparameter auch zu einer erheblichen Optimierung dieser Parameter:
TIMING UND LEISTUNG:
-T<0-5>: Timing festlegen Vorlage (höher ist schneller)
--min-hostgroup/max-hostgroup
--min-parallelism/max-parallelism
--min-rtt-timeout/max-rtt -timeout/initial-rtt-timeout
--max-retries
- -host-timeout
--scan-delay/--max-scan-delay
--min-rate
--max-rate
1.-T<0-5>: Dies bedeutet, dass Sie die von namp bereitgestellte Scanvorlage direkt verwenden können Umgebungen. Die Standardvorlage ist „-T 3“. Einzelheiten finden Sie im Man-Dokument.
2.--min-hostgroup
默认方式下,Nmap采取折衷的方法。开始扫描时的组较小,默认值为5,这样便于尽快产生结果,随后增长组的大小,默认最大为1024。但最小和最大确切的值则依赖于所给定的选项。
--max-hostgroup选项用于说明使用最大的组,Nmap不会超出这个大小。--min-hostgroup选项说明最小的组,Nmap会保持组大于这个值。如果在指定的接口上没有足够的目标主机来满足所指定的最小值,Nmap可能会采用比所指定的值小的组。
这些选项的主要用途是说明一个最小组的大小,使得整个扫描更加快速。通常选择256来扫描C类网段,对于端口数较多的扫描,超出该值没有意义,因为它只是分组了,但是cpu资源是有限的。对于端口数较少的扫描,2048或更大的组大小是有帮助的。
3.--min-parallelism
这些选项用于控制主机组的探测报文数量,可用于端口扫描和主机发现。默认状态下,Nmap基于网络性能计算一个理想的并行度,这个值经常改变。如果报文被丢弃,Nmap降低速度,探测报文数量减少。随着网络性能的改善,理想的探测报文数量会缓慢增加。默认状态下,当网络不可靠时,理想的并行度值可能为1,在好的条件下,可能会增长至几百。
最常见的应用是--min-parallelism值大于1,以加快性能不佳的主机或网络的扫描。这个选项具有风险,如果过高则影响准确度,同时也会降低Nmap基于网络条件动态控制并行度的能力。
一般说来,这个值要设置的和--min-hostgroup的值相等或大于它性能才会提升。
扫描操作系统。操作系统的扫描有可能会出现误报。
C:\Windows\system32>nmap -O 127.0.0.1 Starting Nmap 7.40 ( https://nmap.org ) at 2017-03-09 13:18 CSTNmap scan report for lmlicenses.wip4.adobe.com (127.0.0.1) Host is up (0.000046s latency). Not shown: 990 closed ports PORT STATE SERVICE21/tcp open ftp135/tcp open msrpc443/tcp open https445/tcp open microsoft-ds902/tcp open iss-realsecure912/tcp open apex-mesh5357/tcp open wsdapi5678/tcp open rrac10000/tcp open snet-sensor-mgmt65000/tcp open unknown Device type: general purpose Running: Microsoft Windows 10OS CPE: cpe:/o:microsoft:windows_10 OS details: Microsoft Windows 10 1511Network Distance: 0 hops OS detection performed. Please report any incorrect results at https://nmap.org/submit/ .Nmap done: 1 IP address (1 host up) scanned in 2.33 seconds
要快速扫描存活的主机,需要使用的几个重要选项是:
-n:永远不要DNS解析。这个不管是给定地址扫描还是给定网址扫描,加上它速度都会极速提升
-sn:禁止端口扫描
-PE:只根据echo回显判断主机在线,这种类型的选项使用越多,速度越慢,如-PM -PP选项都是类似的,但他们速度要慢的多的多,PE有个缺点,不能穿透防火墙
--min-hostgroup N:当IP太多时,nmap需要分组,然后并扫描,使用该选项可以指定多少个IP一组
--min-parallelism N:这个参数非常关键,为了充分利用系统和网络资源,设置好合理的探针数。一般来说,设置的越大速度越快,且和min-hostgroup的值相等或大于它性能才会提升
示例一:扫描192.168.100.0/24网段存活的机器
[root@server2 ~]# nmap -sn -n -PE --min-hostgroup 1024 --min-parallelism 1024 192.168.100.1/24Warning: You specified a highly aggressive --min-hostgroup. Warning: Your --min-parallelism option is pretty high! This can hurt reliability. Starting Nmap 6.40 ( http://nmap.org ) at 2017-06-20 14:30 CSTNmap scan report for 192.168.100.1Host is up (0.00036s latency). MAC Address: 00:50:56:C0:00:08 (VMware) Nmap scan report for 192.168.100.2Host is up (0.000051s latency). MAC Address: 00:50:56:E2:16:04 (VMware) Nmap scan report for 192.168.100.70Host is up (0.000060s latency). MAC Address: 00:0C:29:71:81:64 (VMware) Nmap scan report for 192.168.100.254Host is up (0.000069s latency). MAC Address: 00:50:56:ED:A1:04 (VMware) Nmap scan report for 192.168.100.62Host is up. Nmap done: 256 IP addresses (5 hosts up) scanned in 0.26 seconds
255个局域网地址只用了半秒钟。可谓是极速。
再测试扫描下以www.baidu.com作为参考地址的地址空间。
[root@server2 ~]# nmap -sn -PE -n --min-hostgroup 1024 --min-parallelism 1024 -oX nmap_output.xml www.baidu.com/16…….省略部分结果 Nmap scan report for 163.177.81.145Host is up (0.072s latency). Nmap done: 65536 IP addresses (144 hosts up) scanned in 19.15 seconds
可以看到,65535个地址只需19秒就扫描完成了。速度是相当的快。
既然是扫描端口,就不能使用-sn选项,也不能使用-PE,否则不会返回端口状态,只会返回哪些主机。
[root@server2 ~]# nmap -n -p 20-2000 --min-hostgroup 1024 --min-parallelism 1024 192.168.100.70/24Warning: You specified a highly aggressive --min-hostgroup. Warning: Your --min-parallelism option is pretty high! This can hurt reliability. Starting Nmap 6.40 ( http://nmap.org ) at 2017-06-20 14:52 CSTNmap scan report for 192.168.100.1Host is up (0.00084s latency). Not shown: 1980 filtered ports PORT STATE SERVICE21/tcp open ftpMAC Address: 00:50:56:C0:00:08 (VMware) Nmap scan report for 192.168.100.2Host is up (0.000018s latency). Not shown: 1980 closed ports PORT STATE SERVICE53/tcp open domain MAC Address: 00:50:56:E2:16:04 (VMware) Nmap scan report for 192.168.100.70Host is up (0.000041s latency). Not shown: 1980 closed ports PORT STATE SERVICE22/tcp open sshMAC Address: 00:0C:29:71:81:64 (VMware) Nmap scan report for 192.168.100.254Host is up (0.000035s latency). All 1981 scanned ports on 192.168.100.254 are filtered MAC Address: 00:50:56:ED:A1:04 (VMware) Nmap scan report for 192.168.100.62Host is up (0.0000020s latency). Not shown: 1980 closed ports PORT STATE SERVICE22/tcp open sshNmap done: 256 IP addresses (5 hosts up) scanned in 2.38 seconds
Das obige ist der detaillierte Inhalt vonAnweisungen zur Verwendung des Netzwerk-Scan-Tools nmap. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!