©2005 LANsys Connectivity index last update:13.03.2006
HowTo Nmap 3.xxEinleitungEinen großen Teil der Testphase hat der Parameter –T (Geschwindigkeit) verschlungen. Doch der Anfang wird diesmal viel praxisnaher und auch für Anfänger interessant sein. Ich wünsche euch viel Spass und hoffe das ich euch mit dem folgenden Text einiges näher bringen kann. Mehr als eine IP Oft macht es Sinn mehr als eine IP zu scannen. Aber jede IP einzeln scannnen ist sehr aufwändig. Nmap hat mächtige Funktionen um das Ziel besser angeben zu können. nmap 192.168.1.1 scannt nur die einzeilne IP-Adresse. - Folgende gebräuchlichen Alternativen bestehen: nmap 192.168.1.1,2,3,4,5,6,7,8,9,10 würde alle IPs von 1.1 bis 1.10 beinhalten. - Einfacher geht das aber so: nmap 192.168.1.1-10 Sollen gleich alle 254 Adressen drankommen, könnte man auch nmap 192.168.1.* wählen. Das * (Wildcard, auch Asterix genannt) steht für alle Möglichkeiten von 0-255, wobei 0 und 255 meist uninteressant sind, da es sich dabei einmal um die NetzID und die Broadcastadresse in einem Class C Netz handelt. Soll ein ganzes Subnetz gescannt werden, kommt der Parameter /MASK zum Einsatz: nmap 192.168.1.1/16 kommt einem nmap 192.168.*.* gleich. Aber auch nmap *.*.1-3,5.1 wäre denkbar. Die meisten Kombinationen lassen sich verbinden. Hier ein paar Beispiele zur Angabe von Ip-Adressen und Bereichen als Kurzform:
Der Parameter -T gibt die Geschwindigkeit von Nmap an. Es gibt 6 Werte:
"Skipping host localhost (127.0.0.1) due to host timeout"Bedeutet nicht mehr und auch nicht weniger, als das der HOST für die Geschwindigkeit zu langsam ist. Dies kommt oft bei Insane und größeren Scans vor! Die Drosselung der Geschwindigkeit führt in den meisten Fällen dennoch zu einem erfolgreichen Abschluss. Die Geschwindigkeit der einzelnen Optionen wird in folgender Tabelle verdeutlicht:
Nun taucht sicher die Frage auf, wofür diese Optionen überhaupt benötigt werden. Paranoid und Sneaky werden benutzt, um nicht bemerkt zu werden. Eine heutige gute Intrusion Detection System (IDS) (z.B. Snort, BlackIceDefender) oder ein Portlogger (z.B. scanlogD, tcplogD, portsentry) bekommen Standardscans von Nmap relativ schnell mit. Die Folge davon könnte eine IP-Sperre per Firewall sein. Polite kommt dann zum Einsatz, wenn Du das Netzwerk schonen möchtest. Insane wird gerne bei größeren Suchläufen verwendet wo keine Zuverlässigkeit verlangt wird. Paranoid, Sneaky und Polite scannen die Ports und IPS hintereinander - Normal, Aggressive und Insane dagegen untersuchen eine Viezahl von Ports oder IP Adressen zur gleichen Zeit. Achtung: Die Werte können Aufgrund einer Netzauslastung schwanken! Eine hohe Auslastung bedeutet auch gleichzeitig eine längere Wartezeit, wenn nicht sogar Timeouts. Die Tests sind unter Idealbedienungen (Loopback) gemacht worden: ###TTY### linux:~ # nmap 127.0.0.1 -T Paranoid -p 22 Starting nmap V. 3.00 ( www.insecure.org/nmap/ ) Interesting ports on localhost (127.0.0.1): Port State Service 22/tcp open ssh Nmap run completed -- 1 IP address (1 host up) scanned in 300 seconds ###TTY### ###TTY### linux:~ # nmap 127.0.0.1 -T Sneaky -p 22 Starting nmap V. 3.00 ( www.insecure.org/nmap/ ) Interesting ports on localhost (127.0.0.1): Port State Service 22/tcp open ssh Nmap run completed -- 1 IP address (1 host up) scanned in 15 seconds ###TTY### ###TTY### linux:~ # nmap 127.0.0.1 -T Sneaky -p 1-21 Starting nmap V. 3.00 ( www.insecure.org/nmap/ ) Interesting ports on localhost (127.0.0.1): (The 20 ports scanned but not shown below are in state: closed) Port State Service 22/tcp open ssh Nmap run completed -- 1 IP address (1 host up) scanned in 303 seconds ###TTY### ###TTY### linux:~ # nmap 127.0.0.1 -T Polite -p 1-37 Starting nmap V. 3.00 ( www.insecure.org/nmap/ ) Interesting ports on localhost (127.0.0.1): (The 35 ports scanned but not shown below are in state: closed) Port State Service 22/tcp open ssh 25/tcp open smtp Nmap run completed -- 1 IP address (1 host up) scanned in 15 seconds ###TTY### ###TTY### linux:~ # nmap 127.0.0.1 -T Aggressive –p 1-65535 Starting nmap V. 3.00 ( www.insecure.org/nmap/ ) Interesting ports on localhost (127.0.0.1): (The 65530 ports scanned but not shown below are in state: closed) Port State Service 22/tcp open ssh 25/tcp open smtp 111/tcp open sunrpc 6000/tcp open X11 10000/tcp open snet-sensor-mgmt Nmap run completed -- 1 IP address (1 host up) scanned in 96 seconds ###TTY### ###TTY### linux:~ # nmap 127.0.0.1-4 -T Aggressive -p 1-65535 Starting nmap V. 3.00 ( www.insecure.org/nmap/ ) Interesting ports on localhost (127.0.0.1): (The 65530 ports scanned but not shown below are in state: closed) Port State Service 22/tcp open ssh 25/tcp open smtp 111/tcp open sunrpc 6000/tcp open X11 10000/tcp open snet-sensor-mgmt Interesting ports on (127.0.0.2): (The 65531 ports scanned but not shown below are in state: closed) Port State Service 22/tcp open ssh 111/tcp open sunrpc 6000/tcp open X11 10000/tcp open snet-sensor-mgmt Interesting ports on (127.0.0.3): (The 65531 ports scanned but not shown below are in state: closed) Port State Service 22/tcp open ssh 111/tcp open sunrpc 6000/tcp open X11 10000/tcp open snet-sensor-mgmt Interesting ports on (127.0.0.4): (The 65531 ports scanned but not shown below are in state: closed) Port State Service 22/tcp open ssh 111/tcp open sunrpc 6000/tcp open X11 10000/tcp open snet-sensor-mgmt Nmap run completed -- 4 IP addresses (4 hosts up) scanned in 382 seconds ###TTY### ###TTY### linux:~ # nmap 127.0.0.1 -T 5 -p 1-10005 Starting nmap V. 3.00 ( www.insecure.org/nmap/ ) Interesting ports on localhost (127.0.0.1): (The 10000 ports scanned but not shown below are in state: closed) Port State Service 22/tcp open ssh 25/tcp open smtp 111/tcp open sunrpc 6000/tcp open X11 10000/tcp open snet-sensor-mgmt Nmap run completed -- 1 IP address (1 host up) scanned in 12 seconds ###TTY### ###TTY### linux:~ nmap -A -T4 -F 192.168.1.10 Starting nmap 3.75 ( http://www.insecure.org/nmap/ ) Interesting ports on 192.168.1.10: (The 1216 ports scanned but not shown below are in state: closed) PORT STATE SERVICE VERSION 135/tcp open msrpc Microsoft Windows msrpc 139/tcp open netbios-ssn 445/tcp open microsoft-ds Microsoft Windows XP microsoft-ds 1025/tcp open msrpc Microsoft Windows msrpc 5000/tcp open upnp Microsoft Windows UPnP Device type: general purpose Running: Microsoft Windows NT/2K/XP OS details: Microsoft Windows XP Pro RC1+ through final release Parameter –F (only /etc/services) Dieser Parameter ermöglicht einen schneller Scan, da nur die eingetragenen Services aus /etc/services gescannt werden. Parameter –A Dieser Parameter ermöglicht die OS-Abfragung, Servies
und Versionsabtastung Timeouts --max_parallelismMit Hilfe dieses Parameters lässt sich die maximal Anzahl von gleichzeitigen (parallelen) Scans definieren. Der Wert 1 würde bedeuten, dass nur ein Port zur gleichen Zeit gescannt wird - die Untersucheung erfolgt also der Reihe nach. --min_parallelismFetslegen der minimalen Anzahl von gleichzeitigen (parallelen) Scans. Achtung: Eine zu hohe Zahl kann die Zuverlässigkeit stark einschränken. --host_timeoutMit dieser Option lässt sich der Zeitrahmen, bis die nächste IP gescannt und der Scan der aktuellen IP abgebrochen wird, einstellen. --scan_delayMinimale Wartezeit zwischen 2 Scans. Damit können IDS-Systeme gut durcheinander gebracht werden. Log-Dateien -oNLoggt in einem für das menschliche Auge angenehmen Still in die angegebene Datei. -oXErstellt eine Log-Datei im XML-Format. -oGEs wird grep-fähig geloggt. Die Informationen sind sehr sparsam, können dafür aber einfach per cat -oALoggt alle wichtigen Formate (normal, grepbar und XML). Nmap hängt den jeweiligen Kürzel für die Logart selbstständig an -oSLoggt in einer für Scriptkiddies lesbaren Form. Bei Interesse einfach mal ausprobieren. Über die Effizient lässt sich streiten, aber sicherlich wird auch das eine oder andere Scriptkiddie dies lesen? --resumeGeloggte Scans die mit STRG-C abgebrochen wurden, können hiermit fortgesetzt werden --append_outputErgebnisse werden an die Datei angehängt und nicht überschrieben Experten-Parameter -S IP (IP-Spoofing)Sinn und Zweck wäre, Nmap kann die eigene QuellIP nicht Auflösen. „Eine andere Moeglichkeit dieser Option ist die Quelle des Scans zu spoofen, so dass das Zielsystem glaubt, dass jemand anderes die Zugriffe durch fuehrt. Stellen Sie sich vor, dass eine Firma ploetzlich von ihrem Konkurrenten einen Scan verzeichnet! Dies ist nicht der Hauptnutzen dieser Option. Ich denke lediglich, dass diese Theorie einen guten Grund bereitstellt, nicht sofort jeden als Scanner zu beschimpfen, nur weil es scheint, dass von ihm ein Scan gestartet wurde.“ -iR Zufälliger ScanDieser Parameter gibt Nmap den Befehl zufällig im Internet IPs zu suchen/scannen. Über Sinn und Nutzen lässt sich streiten. -sO ProtokollscanMit der Option -sO können die auf dem Zielhost verfügbaren IP-Protokoll herrausgefunden werden. Sollten alle 256 Protokolle geöffnet sein (open), dann ist höchstwahrscheinlich die Firewall des Zielsystemes daran schuld, da die FW darauf verzichtet auf die raw IP-Packete ICMP protocl unreachable Nachrichten zu senden. -sA ACK-ScanDieser Parameter dient der Identifizierung einer Firewall. Es werden hier keine geöffneten Ports angezeit! Dagegen die von der Firewall gefilterten Ports. Dazu werden ACK-Pakete mit zufälliger Sequenznummer an den Zielport geschickt. Sollten keine Ports angezeigt werden, so ist die wahrscheinlichkeit hoch, das die Firewall keine Ports blockiert. -sW Windows-ScanDiese Option ähnelt sehr dem ACK-Scan. Der Unterschied besteht darin, daß hierbei geöffnete, gefilterte oder nicht gefilterte Ports entdeckt werden, die nicht durch einen ACK-Scan gefunden werden. Hieraus wurde ich selber noch nicht ganz schlau :( -sR vBei diesem Scan werden viele Scantypen von Nmap zusammengefasst. Ziel ist es gefundene RPC-Ports nach Version und Programmnamen auszulesen. Zusätzlich kann rpcinfo -p zur Hilfe gezogen werden. -sL ListScanGeneriert eine Liste aller IPs/Hostnamen, ohne sie zu pingen oder zu scannen. DNS kann mit -n unterdrückt werden. Zum testen kann nmap 127.0.0.1/16 -sL -n verwendet werden. -PTEs wird standardmässig auf Port 80(http) ein TCP-Ping geschickt. Nützlich, falls ICMP teils oder ganz gesperrt wurde. Ziel ist dabei die feststellung, ob der Host erreichbar ist. Danach folgt der Obligatorische Standardscan --randomize_hostNmap scannt in einer Gruppe von max. 2048 Zielen zufällig. Besonders in Hinblick auf ausgereifte Sicherheitssysteme sehr sinnvoll um nicht erkannt zu werden. -rSagt Nmap das Gegenteil von „--randomize_host“, das keine Zufällige Wahl getroffen werden darf. Das beide Parameter inkompatibel zueinander sind, ist selbstverständlich. -RDer DNS-Name wird immer aufgelöst - wird auch bei TOTEN Hosts ausgeführt -iLDie Ziel-IP-Adressen werden aus der angegebenen Liste ausgelesen, danach werden die IPs der Kommandozeile ausgewertet -fSYN-, FIN-, Xmas- oder Null-Scan werden Fragmentiert. Viele IDS können dies nicht filtern. Vorsicht! Viele Netzwerkanwendungen kommen hiermit nicht klar. Ich habe es erfolgreich auf einem SuSE und Trustix-System getestet. Laut Marc Ruef soll es auch mit anderen Linuxen sowie Free/OpenBSD laufen. -6 IPv6 Unterstützung. Für mehr Infos gehen sie bitte auf http://nmap6.sourceforge.net/ Beispiele: nmap -p 20-110 192.168.101.1 nmap --help Nmap 3.50 Usage: nmap [Scan Type(s)] [Options] <host or net list> Some Common Scan Types ('*' options require root privileges) * -sS TCP SYN stealth port scan (default if privileged (root)) -sT TCP connect() port scan (default for unprivileged users) * -sU UDP port scan -sP ping scan (Find any reachable machines) * -sF,-sX,-sN Stealth FIN, Xmas, or Null scan (experts only) -sV Version scan probes open ports determining service & app names/versions -sR/-I RPC/Identd scan (use with other scan types) Some Common Options (none are required, most can be combined): * -O Use TCP/IP fingerprinting to guess remote operating system -p |
©2005 LANsys Connectivity index last update:13.03.2006