# Nmap network security scanner man page (German translation)

    NMAP(1)                                                                NMAP(1)

## NAME

           nmap - Auswertungstool fuer Netzwerke und Security Scanner

## SYNTAX

           nmap [Scan-Typ(en)] [Optionen] <Host oder Netz #1 ... [#N]>

## BESCHREIBUNG

           Nmap wurde entwickelt, um Systemadministratoren und kuriosen Individuen
           die Moeglichkeit zu geben, ansprechbare Systeme und die durch sie bere-
           itgestellten  Dienste  in  grossen  Netzwerken zu identifizieren.  nmap
           unterstuetzt eine Vielzahl verschiedener  Scanning-Techniken,  wie  zum
           Beispiel  UDP,  TCP  connect(),  TCP SYN (half open), FTP-Proxy (bounce
           attack), Reverse-ident, ICMP (Ping-Suchlauf), FIN, ACK-Suchlauf,  Xmas-
           Tree, SYN-Suchlauf, IP-Protocol und Null-Scan.  Siehe Absatz Scan-Typen
           fuer mehr Informationen. Ebenso  ermoeglicht  nmap  eine  Vielzahl  von
           zusaetzlichen  Moeglichkeiten,  wie  das  Erkennen von Betriebssystemen
           mittels  TCP/IP-Fingerprinting,   Stealth-Scanning,   dynamische   Ver-
           zoegerungen   und  Uebertragungswiederholungs-Berechnungen,  paralleles
           Scanning, Entdecken abgeschalteter Systeme mittels parallelem Scanning,
           Decoy-Scanning,  entdecken  von  Port-Filtering,  direktes RPC-Scanning
           (ohne Portmapper), fragmentiertes Scanning sowie flexible Ziel und Port
           Spezifizierung.

           Ein  Grossteil  der  Arbeit  wurde  in die Moeglichkeiten fuer non-root
           Benutzer investiert. Leider benoetigen viele exotische Techniken  (z.B.
           die Kernel-nahen raw sockets) root-Privilegien. Aus diesem Grund sollte
           nmap stets als root genutzt werden, sofern dies moeglich  ist  (natuer-
           lich kein setuid root).

           Das   Resultat  eines  nmap-Durchlaufs  ist  normalerweise  eine  Liste
           saemtlicher interessanter Ports der gescannten Geraete  (falls  vorhan-
           den).  Sofern  eine  Zuweisung stattfinden kann, benennt nmap die well-
           known Ports direkt mit ihrem Service-Namen, Portnummer, Status und Pro-
           tokoll.  Der  Status ist entweder ’open’, ’filtered’ oder ’unfiltered’.
           Open  (dt.  offen)  bedeutet,  dass  das  Zielsystem  auf  diesem  Port
           Verbindungen  anzunehmen  in  der  Lage  ist.  Filtered (dt. gefiltert)
           weist darauf hin, dass ein dediziertes  Firewall-System,  TCP/IP-Filter
           oder  Netzwerk-Element  die  Arbeit  von nmap behindert und somit keine
           verlaesslichen Rueckschluesse gemacht werden koennen.  Unfiltered  (dt.
           ungefiltert)  heisst,  dass  nmap  den  Port kennt, jedoch beim Zugriff
           keinerlei  Filter-Mechanismen  ausgemacht  werden  konnten.  Der  unge-
           filterte  Status  wird  in  den  meisten  aller  Faelle vorhanden sein,
           weshalb ein solcher nur immer dann ausgwiesen wird,  wenn  die  meisten
           der gescannten Ports gefiltert (engl. filtered) sind.

           Jenachdem,  welche  Optionen  angewandt  wurden,  ist  nmap in der Lage
           Auskunft ueber die folgenden Charakteristiken des Zielsystems zu geben:
           Genutztes  Betriebssystem,  TCP-Sequenznummern, Benutzername der an die
           Ports gebundene Software, DNS-Name, ob es sich um ein Smurf-System han-
           delt und viele mehr.

## OPTIONEN

           Das  Zusammenspiel verschiedener Optionen ist immer dann moeglich, wenn
           dies auch Sinn macht. Einige Parameter koennen nur  in  Verbindung  mit
           spezifischen  Scan-Methoden  genutzt  werden.  nmap versucht unlogische
           und nicht unterstuetzte Kombinationen von Parametern abzufangen und den
           Benutzer entsprechend zu warnen.

           Falls  Sie  ungeduldig sind, koennen Sie den Abschnitt Beispiele ueber-
           springen. Darin werden typische Befehlseingaben  gezeigt.  Ebenso  kann
           nmap  -h  ausgefuehrt werden, um eine kurze Optionsreferenz ausgeben zu
           lassen.

           SCAN-TYPEN

           -sS    TCP SYN-Scan: Diese Technik wird  oft  als  "halb-offen"  (engl.
                  "half-open")  bezeichnet, da keine volle TCP-Verbindung zustande
                  kommt. Der Scanner schickt ein TCP-Datagramm mit gesetzter  SYN-
                  Flagge  an  das Zielsystem, so wie dies im Rahmen des Drei-Wege-
                  Handschlags von TCP normalerweise auch der Fall  ist.  Nun  wird
                  auf  eine  positive Rueckmeldung des Zielsystems gewartet. Kommt
                  ein Paket mit gesetzter  SYN/ACK-Flagge  zurueck,  so  wird  der
                  Zielport  als im Status LISTENING (dt. abhoerend) identifiziert.
                  Im Gegenzug deutet ein RST-Datangramm  auf  einen  geschlossenen
                  Port  (engl.  closed)  hin.  Wird  ein  SYN/ACK-Datagramm entge-
                  gengenommen,  schickt  nmap  (bzw.  der   Betriebssystem-Kernel)
                  automatisch   ein  RST  zurueck,  um  den  Verbindungsaufbau  zu
                  abzubrechen. Der primaere  Vorteil  dieser  Vorgehensweise  ist,
                  dass viele Systeme solcherlei Zugriffe nicht protokollieren (Die
                  meisten Applikationen interessieren sich nur  fuer  vollstaendig
                  etablierte  Verbindungen). Leider setzt diese Scan-Technik root-
                  Privilegien voraus, da eine Generierung verhaeltnismaessig  exo-
                  tischer  Paket-Sequenzen  von Noeten ist. Dies ist die standard-
                  maessige Scan-Methode fuer priviligierte Benutzer.

           -sT    TCP connect()-Scan:  Dies  ist  die  klassische  Form  des  TCP-
                  Portscannings. Der connect()-System-Call, der das Betriebssystem
                  zur Verfuegung  stellt,  wird  immer  dann  genutzt,  wenn  eine
                  Verbindung  zum  Port eines Zielsystems hergestellt werden soll.
                  Befindet sich der Zielport im Status LISTENING, so wird der con-
                  nect()-Zugriff  erfolgreich ausfallen. Der entscheidende Vorteil
                  dieser Methode ist, dass keine  erweiterten  Rechte  zur  Durch-
                  fuehrung erforderlich sind. Jeder Benutzer der meisten UNIX-Sys-
                  teme ist in der Lage solcherlei Zugriffe durchzufuehren.

                  Diese  Scan-Technik  ist  einfach  zu  entdecken  und  wird  mit
                  groesster  Wahrscheinlichkeit in den Protokoll-Dateien des Ziel-
                  systems auftauchen.  Dies  ist  der  standardmaessig  aktivierte
                  Scan-Typ fuer unprivilegierte Anwender.

           -sF -sX -sN
                  Stealth  FIN-, Xmas-Tree- oder Null-Scan-Modis: Es gibt Momente,
                  wo SYN-Scans nicht heimlich genug  ausfallen.  Einige  Firewall-
                  Systeme  (z.B. Packet-Filter) sind in der Lage verdaechtige SYN-
                  Aktivitaeten zu erkennen; ebenso koennen Programme wie Synlogger
                  oder  Courtney  die  SYN-Portscans  als solche ausweisen.  Diese
                  erweiterten Scan-Techniken  koennen  somit  in  manchen  Faellen
                  ungehindert die gewuenschten Resultate liefern.

                  Die  Idee  ist,  dass geschlossene Ports auf solcherlei Zugriffe
                  mit einem RST-Datagramm antworten muessten,  waehrend  ansprech-
                  bare  Ports  die  Anfragen ignorieren sollten (siehe RFC 793, S.
                  64). Der FIN-Scan nutzt ein  TCP-Datagramm  mit  gesetzter  FIN-
                  Flagge, waehrend der Xmas-Tree-Scan die TCP-Flaggen FIN, URG und
                  PSH aktiviert. Der Null-Scan schaltet alle optionalen Flags  ab.
                  Leider  ignoriert  einmal mehr Microsoft die gaengigen Standards
                  und reagiert auf die exotischen Scan-Techniken ganz  unerwartet.
                  Dies  bedeutet, dass diese Scanning-Methoden nicht gegen Windows
                  9x, ME, NT, 2000 und XP funktionieren. Auf der anderen Seite ist
                  dies  natuerlich hervorragend, wenn es um das Identifizieren der
                  TCP/IP-Implementierung von Microsoft geht: Findet  einer  dieser
                  Scans einen offenen Port, so kann davon ausgegangen werden, dass
                  es sich beim Zielsystem nicht um ein Windows handelt - Im Gegen-
                  zug  deuten  unrealistisch  viele offene Ports auf eine Windows-
                  Maschine hin. Es gilt sich jedoch noch die Meinung  einer  klas-
                  sischen Scan-Methode (z.B. SYN) einzuholen.  Es gibt noch einige
                  andere  Betriebssysteme,  die  sich  aehnlich   demjenigen   von
                  Microsoft  verhalten. Dies sind zum Beispiel Cisco, BSDI, HP/UX,
                  MVS und IRIX.  All diese retournieren ein Reset,  auch  wenn  es
                  sich um einen ansprechbaren Port handelt. Mittlerweile ist diese
                  knifflige Unterscheidungs-Arbeit  mittels  exotischer  Scanning-
                  Techniken  eher weniger wichtig, da nmap eine erweiterte Methode
                  fuer das Erkennen des eingesetzten Betriebssystems mitbringt.

           -sP    Ping-Scanning: Manchmal ist es lediglich gefragt,  welche  Hosts
                  in einem Netzwerk aktiv sind. nmap kann diese Frage beantworten,
                  indem eine ICMP echo request-Anfrage an jede IP-Adresse im spez-
                  ifizierten  Netzwerk  geschickt wird.  Hosts, die mit einer ICMP
                  echo reply antworten,  koennen  als  aktiv  ausgewiesen  werden.
                  Viele  gewissenhafte Firewall- und Systemadministratoren filtern
                  bzw.  verwerfen unnoetigen ICMP-Verkehr. nmap greift sodann  auf
                  eine  andere  Technik  zurueck.  Es  wird  ein TCP-Datagramm mit
                  gesetzter ACK-Flagge an einen potentiell offenen Port des  Ziel-
                  systems  geschickt  (standardmaessig  TCP-Port 80). Wird ein RST
                  zurueckgeschickt, so ist das Zielsystem vorhanden und  ansprech-
                  bar.  Eine  dritte Technik greift auf ein SYN-Datagramm zurueck,
                  das auf ein RST oder  SYN/ACK  wartet.  Alle  non-root  Benutzer
                  fuehren einen connect()-Zugriff durch.

                  Standardmaessig  (bei root-Benutzern) fuehrt nmap beides - ICMP-
                  und ACK-Technik - parallel  durch.  Dies  kann  durch  das  Her-
                  anziehen  der spaeter noch detaillierter beschriebenen Option -P
                  geaendert werden.

                  Wichtig ist zu wissen,  dass  der  Ping-Zugriff  standardmaessig
                  stets  erfolgt.  Abhaengig der Erreichbarkeit eines Systems wird
                  ein solches dann gescannt.  Benutzen Sie diese Option  lediglich
                  dann,  wenn  es  um das Durchfuehren eines Ping-Suchlaufs ( ohne
                  Portscan) geht.

           -sU    UDP-Scans: Diese Methode wird stets dann herangezogen,  wenn  es
                  um  das  Identifizieren  der  offenen  UDP-Ports (siehe RFC 768)
                  eines Systems geht. Diese Technik basiert darauf, dass ein  UDP-
                  Datagramm  mit 0 Byte an Nutzdaten an jeden Port des Zielsystems
                  geschickt  wird.  Erhalten  wir  eine  ICMP  port   unreachable-
                  Nachricht, so ist der Zielport geschlossen. Andererseits handelt
                  es sich um einen offenen Port.

                  Einige Leute denken, dass UDP-Scanning sinnlos ist. Ich  moechte
                  in  diesem  Zusammenhang auf die Luecke in Solaris’ rpcbind hin-
                  weisen. rpcbind kann an einem  undokumentierten  UDP-Port  ueber
                  32770  gefunden werden. Bei diesem Angriff und der vorangehenden
                  Auswertung ist es sodann zu einem hohen Grad irrelevant, ob Port
                  111  durch  eine  Firewall  blockiert  wird  oder  nicht. Ebenso
                  existiert das populaere, von  cDc  entwickelte  Backdoor  namens
                  Back  Orifice, das durch einen frei waehlbaren UDP-Port Windows-
                  Maschinen kontrollieren laesst.  Und nicht zu vergessen die vie-
                  len potentiell verwundbaren Dienste, die auf UDP zurueckgreifen:
                  SNMP, TFTP, NFS, etc.

                  Traurigerweise  ist  UDP-Scanning   in   den   meisten   Faellen
                  schmerzhaft langsam, seitdem viele Betriebssystem-Entwickler der
                  Empfehlung von RFC 1812 (Absatz 4.3.2.8) nachgekommen sind,  die
                  Anzahl  ausgehender  ICMP-Fehlernachrichten  zu  limitieren. Zum
                  Beispiel definiert der  Linux-Kernel  (in  net/ipv4/icmp.h)  die
                  Anzahl  ausgehender ICMP destination unreachable-Fehlermeldungen
                  auf 80 fuer 4 Sekunden, mit einer 1/4 Sekunde Zusatz fuer  jeden
                  Uebertritt. Solaris weist einiges striktere Limitierungen auf (2
                  Nachrichten pro Sekunde), weshalb  ein  UDP-Portscan  gegen  ein
                  Solaris-System sehr lange dauert.  nmap ist in der Lage solcher-
                  lei Limitierungen zu erkennen und  mit  einem  dynamischen  Ver-
                  langsamen  der Geschwindigkeit zu reagieren. Dies verhindert das
                  Verstopfen des Netzwerks mit unnoetigen Paketen, die sowieso vom
                  Zielsystem ignoriert werden wuerden.

                  Einmal  mehr  typisch,  ignoriert Microsoft die Empfehlungen des
                  RFCs, weshalb eine Einschraenkung ausgehender ICMP-Fehlermeldun-
                  gen  gaenzlich bei der TCP/IP-Implementierung auf Windows 9x und
                  NT fehlt. Das scannen saemtlicher UDP-Ports auf  einer  Windows-
                  Maschine ist somit kein groesseres Problem.

           -sO    IP  protocol-Scans:  Diese  Methode  kommt dann zum Tragen, wenn
                  herausgefunden werden will, welche IP-Protokolle vom  Zielsystem
                  unterstuetzt  werden.  Diese  Technik  basiert darauf, dass fuer
                  jedes IP-Protokoll ein RAW  IP-Paket  mit  fehlendem  Protokoll-
                  Header  an das Zielsystem geschickt wird. Erhalten wir eine ICMP
                  protocol unreachable-Fehlermeldung, so koennen wir davon  ausge-
                  hen,  dass das besagte Protokoll nicht unterstuetzt wird. Faellt
                  das Resultat anders aus, kann mit einer Protokoll-Unterstuetzung
                  gerechnet  werden.  Es  ist  wichtig  zu  bemerken,  dass einige
                  Betriebssysteme (z.B. AIX, HP-UX und Digital UNIX) und Firewall-
                  Loesungen  auf  das  Versenden  der  ICMP  protocol unreachable-
                  Fehlermeldungen gaenzlich verzichten. Das Resultat eines solchen
                  Verhaltens   ist   die   durch  nmap  generierte  Ausgabe,  dass
                  saemtliche Protokolle "offen" sind.

                  Aufgrund dessen, dass diese Scan-Methode  in  ihren  Grundzuegen
                  auf  den  Prinzipien  des  UDP-Portscannings aufbaut, spielt die
                  Rate  der  potentiell  generierten   ICMP-Fehlermeldungen   eine
                  beachtliche  Wichtigkeit.  Da  das  IP-Protokoll Feld nur 8 Bits
                  hat, muessen lediglich 256 Protokolle gescannt werden, was  sich
                  in einem angemessenen Zeitrahmen erledigen laesst.

           -sI <Zombie-Host[:Zielport]>
                  Idlescan:  Diese erweiterte Scan-Technik ermoeglicht ein blindes
                  Scannen der TCP-Port eines Ziels (dies bedeutet, dass  keinerlei
                  Pakete  mit der richtigen IP-Absenderadresse verschickt werden).
                  Stattdessen wird eine einzigartige Attacke  angewandt,  die  die
                  Berechenbarkeit  der IP Fragmentation ID eines Zombie-Hosts aus-
                  nutzt. Intrusion Detection-Systeme werden den  Scan-Versuch  dem
                  spezifizierte  Zombie-System  zuschreiben  (welches  ansprechbar
                  sein und bestimmte Kriterien erfuellen muss). Ich habe eine Pub-
                  likation    zu   diesem   Thema   verfasst,   die   sich   unter
                  http://www.insecure.org/nmap/idlescan.html findet.

                  Neben der vollkommenen Sicherheit, nicht direkt  erkannt  werden
                  zu  koennen,  ermoeglicht  dieser  Scan-Typ das Erkennen von IP-
                  basierenden Vertrauensbeziehungen zwischen Geraeten.  Das  Port-
                  Listing  zeigt  die  offenen Ports aus der Sicht des Zombie-Sys-
                  tems.  Es ist sodann Moeglich  das  effektive  Zielsystem  durch
                  verschiedene Zombies scannen zu lassen, die eine bestehende Ver-
                  trauensbeziehung haben (via Router-  oder  Packetfilter-Regeln).
                  Ganz  offensichtlich  ist dies eine gewichtige Information, wenn
                  es um das Priorisieren  von  Angriffszielen  geht.  Andererseits
                  muessten Penetration Tester zuerst muehsam ein System kompromit-
                  tieren, bis verlaesslich gesagt werden kann, ob  ueberhaupt  die
                  erforderliche Vertrauensbeziehung besteht.

                  Durch  einen  Doppelpunkt  laesst  sich  die Portnummer des Zom-
                  biesystems definieren. Ohne diese Angabe waehlt nmap  den  Stan-
                  dardport,  der  auch  bei  TCP-Pings Verwendung findet (TCP-Port
                  80).

           -sA    ACK-Scan: Auf diese erweiterte Scan-Technik  wird  normalerweise
                  immer dann zurueckgegriffen, wenn es um das Identifizieren eines
                  Firewall-Regelwerks geht. Zusaetzlich kann  diese  Methode  eine
                  Determinierung des Vorhandenseins einer Stateful Inspection, die
                  eingehende SYN-Pakete blockt, ermoeglichen.

                  Dieser Scan-Typ schickt ein ACK-Paket (mit zufaellig  gewaehlten
                  Bestaetigungs-/Sequenznummern)  an  den spezifizierten Zielport.
                  Kommt ein RST zurueck, wird der besagte  Port  als  "unfiltered"
                  (dt.  ungefiltert)  eingestuft.  Erhalten wir keine Rueckantwort
                  (oder kommt ein ICMP unreachable zurueck),  so  weist  nmap  den
                  Port  als "filtered" (dt. gefiltert) aus. Wichtig ist, dass nmap
                  normalerweise keine "unfiltered" ausgibt. So sind keine Ports in
                  der  Ausgabe  ein Indiz dafuer, dass alle Zugriffe durchgekommen
                  sind (und ein RST verursacht haben). Dieser Scan wird die  Ports
                  nie in einem "open" (dt. offenen) Status zeigen.

           -sW    Window-Scan: Diese erweiterte Scan-Technik ist dem ACK-Scan sehr
                  aehnlich.  Ausser, dass  hiermit  manchmal  auch  offene,  unge-
                  filterte  und  gefilterte Ports durch eine Anomalie in der durch
                  die Betriebssysteme gewaehlten TCP window size  entdeckt  werden
                  koennen.  Systeme, die gegen diese Attacke verwundbar sind, sind
                  einige Versionen von AIX, Amiga, BeOS, BSDI, Cray,  Tru64  UNIX,
                  DG/UX, OpenVMS, Digital UNIX, FreeBSD, HP-UX, OS/2, IRIX, MacOS,
                  NetBSD, OpenBSD, OpenStep, QNX, Rhapsody, SunOS 4.x, Ultrix, VAX
                  and VxWorks. Siehe das Archiv der nmap-Hackers Mailingliste fuer
                  eine vollstaendige Auflistung.

           -sR    RPC-Scan: Diese Methode arbeitet in Kombination mit den  meisten
                  moeglichen Scan-Typen von nmap zusammen. Jeder als offen identi-
                  fizierte TCP- und UDP-Port wird mit einer Vielzahl  von  SunRPC-
                  Nullkommandos ueberflutet, um eine Identifizierung von RPC-Ports
                  vorzunehmen. Falls ein solcher gefunden  wurde,  wird  der  Pro-
                  grammname  und  die Version ausgelesen, sofern diese Information
                  zur Verfuegung gestellt wird. Diese  Vorgehensweise  ist  ebenso
                  mit  dem  Heranziehen von ’rpcinfo -p’ moeglich; besonders dann,
                  wenn des Zielsystems Portmapper hinter einer restriktiven  Fire-
                  wall  steht oder durch einen TCP-Wrapper geschuetzt wird. Decoy-
                  Scans arbeiten zur Zeit nicht mit RPC-Scans  zusammen.   Irgend-
                  wann wird vielleicht Decoy-Scanning im Zusammenhang mit UDP-RPC-
                  Scans moeglich sein.

           -sL    List-Scan: Diese simple Methode generiert eine Liste  aller  IP-
                  Adressen und Hostnamen, ohne die Zielsysteme direkt anzusprechen
                  (Ping oder Portscan).  Eine Namensaufloesung  ueber  DNS  findet
                  stets  statt,  sofern  dies  nicht  durch das Heranziehen von -n
                  unterbunden wird.

           -b <FTP-Relay Host>
                  FTP-Bounce Attacke: Ein interessantes "Feature" des File  Trans-
                  port Protocols (RFC 959) ist die Unterstuetzung von "Proxy"-FTP-
                  Verbindungen. Mit anderen  Worten  ist  es  moeglich,  sich  von
                  boese.com  auf ziel.com zu verbinden und eine Datei ueberall hin
                  zu schicken. Nun, dies hat wohl ausgezeichnet funktioniert,  als
                  1985 das besagte RFC geschrieben wurde. In der heutigen Zeit ist
                  es nicht mehr ohne weiteres Moeglich, sich auf fremde FTP-Server
                  zu  verbinden  und  nach Belieben Dateien zu versenden. *Hobbit*
                  schrieb 1995 folgendes zu dieser Schwachstelle: "[This  protocol
                  flaw]  can  be used to post virtually untraceable mail and news,
                  hammer on servers at various sites, fill up disks,  try  to  hop
                  firewalls,  and  generally be annoying and hard to track down at
                  the same time." Bei dieser Scanning-Methode wird ein  als  Proxy
                  fungierender  FTP-Server  genutzt,  um  die  offenen Ports eines
                  Zielsystems ausfindig zu machen. Beispielsweise kann dadurch  zu
                  einem  hinter einer Firewall positionierten FTP-Server verbunden
                  werden, um danach  interne,  durch  das  Firewall-Element  gegen
                  externe  Zugriffe  geschuetzte  Ports  (z.B.  die NetBIOS-Ports)
                  anzusprechen.  Falls  auf   dem   FTP-Server   ein   Verzeichnis
                  existiert, bei dem sowohl Lese- als auch Schreibrechte vorhanden
                  sind (z.B.  /incoming), kann eine  semi-manuelle  Uebergabe  von
                  Daten  an  die  Zielports durchgefuehrt werden (nmap nimmt einem
                  diese Arbeit nicht ab).

                  Das mit der Option ’-b’ uebergebene Argument,  spezifiziert  den
                  als  Proxy gewollten Host, wobei die standard URL-Notation gilt.
                  Das  Format  lautet  Benutzername:Passwort@Server:Port.   Alles,
                  ausser  Server  ist  optional. Wie eine Determinierung der gegen
                  diese Zugriffsform verwundbare Server vorgenommen  werden  kann,
                  kann  in  meinem  Artikel  in Phrack 51 nachgelesen werden. Eine
                  aktualisierte   Version    ist    auf    der    nmap    Webseite
                  (http://www.insecure.org/nmap) verfuegbar.

           GENERELLE OPTIONEN
                  Keine  der folgenden Optionen ist erforderlich. Einige von ihnen
                  koennen jedoch nuetzlich sein.

           -P0    Verhindert das Pingen eines Hosts, bevor er gescannt wird.  Dies
                  ermoeglicht  das  Scannen  von  Netzwerken,  die keine ICMP echo
                  requests (oder responses) aufgrund einer  restriktiv  konfiguri-
                  erten Firewall zulassen. microsoft.com ist ein Beispiel fuer ein
                  solches Netzwerk, in dem diese  Funktion  stets  genutzt  werden
                  sollte.  Gebrauchen  Sie  -P0 oder -PT80 wenn ein Portscan gegen
                  microsoft.com durchgefuehrt werden soll.

           -PT    Benutzt einen TCP-Ping, um die  Erreichbarkeit  eines  Hosts  zu
                  verifizieren.  Anstatt ICMP echo request-Abfragen zu verschicken
                  und auf die entsprechenden  ICMP  echo  reply-Rueckantworten  zu
                  warten,  wird  auf  ein  TCP-Datagramm  mit gesetzter ACK-Flagge
                  gesetzt. Ansprechbare Systeme sollten mit einem  RST  antworten.
                  Diese Funktion ist immer dann anzuwenden, wenn Systeme oder Net-
                  zwerke gescannt werden sollen, die  keine  Erreichbarkeitsueber-
                  pruefung  mittels ICMP zulassen und trotzdem zuerst die Erreich-
                  barkeit identifiziert werden soll. Bei non-root  Benutzern  wird
                  connect()  angewandt.  Um  den  Zielport  des Zugriffs zu spezi-
                  fizieren, kann -PT<Portnummer> herangezogen  werden.  Der  Stan-
                  dardport  ist  einmal  mehr TCP/80 (HTTP), da dieser eher selten
                  durch einen Filter gedeckt wird.

           -PS    Diese Option  benutzt  fuer  root-Benutzer  SYN  (Verbindungsan-
                  forderungen)  anstatt ACK-Pakete. Ansprechbare Hosts sollten mit
                  einem  RST  (oder  in  seltenen  Faellen  mit   einem   SYN/ACK)
                  antworten.  Das  Setzen des Zielports kann auf die selbe Art wie
                  beim zuvor erlaeuterten -PT umgesetzt werden.

           -PI    Diese Option nutzt einen klassischen Ping (ICMP  echo  request),
                  um  die  Erreichbarkeit  von Systemen und Broadcast-Adressen von
                  Subnetzen zu identifizieren. Letztere  sind  extern  erreichbare
                  IP-Adressen, die eine Umwandlung zu einem internen Broadcast des
                  Subnetzes durchfuehren. Solcherlei  sollten  verhindert  werden,
                  denn  sie  sind Voraussetzung fuer eine Reihe von Denial of Ser-
                  vice-Attacken (Smurf ist die bekannteste Variante).

           -PP    Benutzt  eine  ICMP  timestamp-Anfrage  (Typ  13,  Code  0),  um
                  ansprechbare Hosts zu finden.

           -PM    Das  Gleiche  wie  -PI  und -PP , ausser, dass eine ICMP address
                  mask request (Typ 17, Code 0) zum Tragen kommt.

           -PB    Dies ist der standardmaessig gewaehlte  Ping-Typus.  Er  benutzt
                  beide Techniken, ACK ( -PT ) und ICMP echo requests ( -PI ), die
                  jeweils parallel durchgefuehrt werden. Auf diese  Weise  koennen
                  Firewall-Elemente  ausgetrickst werden, die eine der beiden Pro-
                  tokolle (nicht beide) filtern. Der Zielport fuer den TCP-Zugriff
                  kann  auf  die  gleiche  Weise gesetzt werden, wie im zuvor erk-
                  laerten -PT.

           -O     Diese Option aktiviert  das  Identifizieren  des  am  Zielsystem
                  eingesetzten  Betriebssystems  anhand  des TCP/IP-Fingerabdrucks
                  (engl. TCP/IP fingerprint).  Es wird  eine  Anzahl  spezifischer
                  Tests  umgesetzt,  die  das  typische  Verhalten  der jeweiligen
                  TCP/IP-Implementierungen erkennen koennen sollen. Die  gegebenen
                  Informationen  stellen  quasi einen ’Fingerabdruck’ dar, der mit
                  der Datenbank der bekannten  Betriebssystem-Fingerabdrucke  (die
                  nmap-os-fingerprints Datei) verglichen wird.

                  Falls  nmap  nicht  in der Lage ist, eine mehr oder weniger ein-
                  deutige Identifikation des am Zielsystem  eingesetzten  Betrieb-
                  ssystems  vorzunehmen  und  die  gegebenen  Bedingungen gut sind
                  (mindestens ein ansprechbarer Port), gibt nmap eine URL aus, bei
                  der  neu gefundene Fingerprints eingesendet werden koennen. Dies
                  setzt natuerlich voraus,  dass  Sie  sich  eindeutig  im  Klaren
                  darueber  sind,  um was fuer ein Betriebssystem es sich handelt.
                  Durch diesen Schritt koennen Sie aktiv an  der  Erweiterung  der
                  Datenbank  mithelfen,  wodurch  sie  attraktiver fuer saemtliche
                  Benutzer wird. Falls Sie beim Einsenden des neuen Fingerabdrucks
                  die  IP-Adresse  des  Zielsystems  mitangeben, muessen Sie damit
                  rechnen, dass es von uns zu Ueberpruefungszwecken gescannt wird.

                  Die  Option  -O  aktiviert  ebenso  einige  weitere Tests. Einer
                  dieser ist das Messen der "Uptime". Hierzu wird  das  Timestamp-
                  Feature von TCP genutzt (RFC 1323), um erkennen zu koennen, wann
                  das Zielsystem das letzte mal neu gestartet wurde.  Diese  Funk-
                  tionalitaet  wird  natuerlich  nur  dann genutzt werden koennen,
                  wenn das Zielsystem diese Information auch entsprechend  bereit-
                  stellt.

                  Ein  anderer  Check, der durch die Option -O aktiviert wird, ist
                  die Klassifizierung der  Berechenbarkeit  der  TCP-Sequenznummer
                  des Zielsystems.  Das Ergebnis dieses Tests sagt aus, wie schwer
                  es  ist,  eine  bestehende   Verbindung   des   Zielsystems   zu
                  uebernehmen.  Dies  ist  dann  nuetzlich,  wenn  auf IP-Adressen
                  basierende Vertrauensbeziehungen (z.B. rlogin und  Firewall-Fil-
                  ter) missbraucht oder die Quelle eines Angriffs versteckt werden
                  sollen.  Die  mitgelieferte  Difficulty-Number  ist  statistisch
                  berechnet und kann jeweils leicht abweichen. Zusaetzlich wird in
                  knappen Worten (z.B. "worthy challenge" or "trivial  joke")  der
                  Zustand beschrieben. All dies wird nur dann ausgegeben, wenn der
                  Parameter -v mitangegeben wurde.

                  Wenn die Option -O zusammen mit dem Verbose-Modus  (-v)  genutzt
                  wird,  wird ebenso die Sequenz-Generierung der IPID ausgewiesen.
                  Die meisten Geraete werden als "incremental" klassifiziert,  was
                  bedeutet,  dass  sie fuer jedes verschickte Paket eine Inkremen-
                  tierung des ID-Felds im IP-Header vornehmen.  Ein  solches  Ver-
                  halten  macht  sie  verwundbar  gegen  eine  Reihe verschiedener
                  Auswertungs- und Spoofing-Attacken.

           -6     Diese Option aktiviert die IPv6-Unterstuetzung. Saemtliche Ziele
                  muessen  mit  IPv6  zurecht  kommen, sofern diese Option genutzt
                  werden soll. Das Spezifizieren der Ziele kann ganz normal  ueber
                  den    DNS-Namen   (AAAA   record)   oder   IPv6-Adresse   (z.B.
                  3ffe:501:4819:2000:210:f3ff:fe03:4d0) geschehen.  Momentan  sind
                  TCP  connect()- und Ping-Scans von nmap unterstuetzt. Falls UDP-
                  oder andere Scan-Typen genutzt werden  sollen,  lohnt  sich  ein
                  Blick auf http://nmap6.sourceforge.net/ .

           -I     Hiermit  wird das TCP reverse ident-Scanning aktiviert. Wie Dave
                  Goldsmith in einem Bugtraq-Posting aus dem Jahre 1996 publiziert
                  hat,  ermoeglicht  das  ident-Protokoll  (RFC  1413) das Identi-
                  fizieren des Besitzers eines TCP-Dienstes. So kann zum  Beispiel
                  eine  Verbindung  zum HTTP-Port des Zielsystems hergestellt wer-
                  den, um danach mittels ident herauszufinden,  ob  der  Webserver
                  als  root laeuft. Dies kann nur mit der Hilfe eines full-connect
                  TCP-Portscans (-sT) geschehen. Wenn -I aktiviert wird, wird  der
                  identd des Zielsystems fuer jeden als offen identifizierten Port
                  abgefragt.  Logischerweise  funktioniert  diese  ganze  Prozedur
                  nicht, wenn das Zielsystem keinen identd aktiv hat.

           -f     Diese Option erreicht, dass der durchgefuehrte SYN-, FIN-, Xmas-
                  oder Null-Scan mit fragmentierten IP-Paketen arbeitet. Die  Idee
                  ist,  dass  der  TCP-Header ueber mehrere Pakete verteilt werden
                  soll, wodurch eine Inspizierung durch Firewall-  oder  Intrusion
                  Detection-Systeme  erschwert wird.  Bei dieser Funktion ist Vor-
                  sicht geboten, denn viele der  verbreiteten  Netzwerkanwendungen
                  kommen   mit  derlei  Datenverkehr  nicht  klar.  Beispielsweise
                  erhielt ich bei meinem liebsten Sniffer ein  segemtation  fault,
                  nachdem  das erste 36-byte Fragment eingelesen wurde. Danach kam
                  gar ein 24-byte Paket!  Waehrend diese Methode keinen Erfolg bei
                  Elementen  verspricht,  die eine Warteschlange fuer IP-Fragmente
                  haben (wie dies mittels der Option CONFIG_IP_ALWAYS_DEFRAG unter
                  Linux normalerweise der Fall ist), koennen andere Umgebungen den
                  enormen  Aufwand  fuer  eine  solche   Analyse   nicht   tragen,
                  verzichten darauf und koennen deshalb ausgetrickst werden.

                  Es  bleibt  zu  bemerken,  dass  diese  Option  nicht  auf allen
                  Betriebssystemen einwandfrei genutzt werden  kann.  Es  arbeitet
                  ohne  Zwischenfaelle  auf  meinem  Linux,  FreeBSD  und OpenBSD;
                  einige Leute berichten gar, dass es auch auf anderen *NIX  funk-
                  tioniert.

           -v     Verbose-Modus:   Diese,   eine   sehr   zu  empfehlende  Option,
                  ermoeglicht eine erweiterte Ausgabe von Informationen. Eine dop-
                  pelte  Nutzung  ergibt  einen  doppelt so grossen Effekt. Ebenso
                  kann -d einige Male aktiviert werden,  falls  Sie  wirklich  vor
                  einem ueberlasteten Bildschirm verrueckt werden wollen!

           -h     Diese handliche Funktion zeigt eine Kurzreferenz der nmap-Param-
                  eter. Wie Sie vielleicht gemerkt  haben,  handelt  es  sich  bei
                  dieser man-Page nicht unbedingt um eine ’handliche Kurzreferenz’
                  :)

           -oN <Protokoll-Dateiname>
                  Dies protokolliert die Resultate des Scans  in  einem  normalen,
                  fuer  Menschen lesbaren Format in eine durch ein Argument spezi-
                  fizierte Datei.

           -oX <Protokoll-Dateiname>
                  Dies protokolliert die Resultate des Scans als XML in die  durch
                  ein  Argument  spezifizierte  Datei. Dadurch koennen andere Pro-
                  gramme unkompliziert die durch  nmap  generierten  Informationen
                  auswerten   und   verarbeiten.  Durch  das  Argument  ’-’  (ohne
                  Anfuehrungszeichen) kann die Ausgabe auf stdout (fuer  Pipeline-
                  Verarbeitung,  etc.)  umgeleitet werden. In diesem Fall wird die
                  normale Bildschirmausgabe unterdrueckt. Achtung  vor  Fehlermel-
                  dungen (diese werden nach wie vor nach stderr geschickt). Ebenso
                  ist wichtig, dass ’-v’ in den  meisten  Faellen  einige  zusaet-
                  zliche  Informationen  gewaehrleisten  koennen  wird.  Die Doku-
                  mententypendefinition  (engl.  Document  Type  Definition,  abk.
                  DTD),  die  fuer  die  XML-Ausgabe  genutzt  wird,  steht  unter
                  http://www.insecure.org/nmap/data/nmap.dtd bereit.

           -oG <Protokoll-Dateiname>
                  Dies protokolliert die Resultate des Scans in eine grepbare Form
                  in eine durch ein Argument spezifizierte Datei. Dadurch wird ein
                  simples Format angestrebt, welches alle Informationen auf  einer
                  Zeile  ausgibt,  weshalb  ganz  einfach ein grep fuer Ports, OS-
                  Informationen oder IP-Adressen  umgesetzt  werden  kann.  Dieses
                  einfache  Format  stellt  meistens  nicht so viele Informationen
                  bereit, wie dies bei  anderen  Ausgabevarianten  der  Fall  ist.
                  Diese  Form  war  die urspruenglich, fuer die Verarbeitung durch
                  externe    Programme    vorgehesene     Dokumentierungs-Ausgabe.
                  Mittlerweile  ist  jedoch  XML empfohlen (-oX). Einmal mehr kann
                  die Angabe von ’-’ (ohne Anfuehrungszeichen)  eine  Ausgabe  auf
                  stdout  erzwingen  (fuer Pipeline-Verarbeitung, etc.). Auch hier
                  wird die normale Ausgabe unterdrueckt. Ebenso werden  Fehlermel-
                  dungen  wie  ueblich auf stderr ausgegeben. Und ’-v’ wird in den
                  meisten Faellen einige zusaetzliche Informationen gewaehrleisten
                  koennen.

           -oA <Basisdateiname>
                  Dies  veranlasst  nmap in der Form ALLER wichtigen Formate (nor-
                  mal, grepbar und XML) zu protokollieren. Sie geben den  Dateina-
                  men  an,  wobei  nmap  die Erweiterungen in Form von basis.nmap,
                  basis.gnmap und basis.xml automatisch anfuegen wird.

           -oS <Protokoll-Dateiname>
                  Dies protokolliert die Resultate der Scans in einem fuer s|<ripT
                  kiDd|3  lesbaren Format in eine durch ein Argument spezifizierte
                  Datei. Durch die Angabe des Arguments ’-’  (ohne  Anfuehrungsze-
                  ichen) kann die Ausgabe auf stdout umgeleitet werden.

           --resume <Protokoll-Dateiname>
                  Ein  Netzwerk-Scan,  der durch das Druecken von Control-C unter-
                  brochen wurde, kann durch diese Option reaktiviert  werden.  Der
                  Protokoll-Dateiname  muss entweder eine normale (-oN) oder durch
                  Maschinen verarbeitbare  (-oM)  Scan-Protokoll-Datei  sein.  Die
                  Angabe   abweichender  oder  zusaetzlicher  Optionen  ist  nicht
                  moeglich - Sie werden vom abgebrochenen Scan  uebernommen.  nmap
                  wird mit der zuletzt in der Protokoll-Datei erfolgreich gescannt
                  vermerkten Maschine starten.

           --append_output
                  Weist nmap an, die Scan-Resultate  an  die  spezifizierten  Pro-
                  tokoll-Datei anzuhaengen, anstatt die besagten Dateien zu ueber-
                  schreiben.

           -iL <Eingabe-Dateiname>
                  Liest die Ziel-Spezifizierung ZUERST von der  angegebenen  Datei
                  ein,  und  erst  danach von der Kommandozeileneingabe. Die Datei
                  sollte eine Liste von Hosts oder Netzwerken enthalten, die  jew-
                  eils durch ein Leer-, Tabulator- oder Neuezeile-Zeichen getrennt
                  sind. Benutzen Sie einen Bindestrich (-) als Eingabe-Dateiname ,
                  falls  Sie  wollen, dass nmap die Zielspezifizierungen von stdin
                  liest (wie im Zusammenhang mit einer  Pipe).  Siehe  den  Absatz
                  Ziel-Definition fuer zusaetzliche Informationen zu der gueltigen
                  Ausdrucksweise.

           -iR    Diese Option weist nmap an, zufaellig generierte Hosts zu  scan-
                  nen  :).  Dies  hat  kein  Ende.  Eine  solche  Funktion ist zum
                  Beispiel fuer eine statistische Auswertung innerhalb des  Inter-
                  nets  nuetzlich. Falls Sie einmal wirklich sehr gelangweilt sein
                  sollten, so versuchen Sie nmap -sS -iR -p 80  um  Webserver-Sys-
                  teme zu finden.

           -p <Port-Bereich>
                  Diese  Option spezifiziert, welche Ports gescannt werden sollen.
                  Zum Beispiel wird ’-p 23’ lediglich einen Zugriff auf  den  Port
                  23  (Telnet) der Zielsysteme durchfuehren. ’-p 20-30,139,60000-’
                  scannt die Ports zwischen 20 und 30, Port  139  und  alle  Ports
                  groesser als 60000. Standardmaessig werden saemtliche well-known
                  Ports zwischen 1 und 1024 sowie alle in der  services-Datei  von
                  nmap  gelisteten  Dienste gescannt. Fuer einen IP-Protokoll-Scan
                  (-sO) kann mit dieser Option die zu  scannende  Protokoll-Nummer
                  (0-255) angegeben werden.

                  Werden  gleichzeitig  TCP-  und  UDP-Ports gescannt, so kann das
                  jeweilige Protokoll durch ein  vorangestelltes  "T:"  oder  "U:"
                  angewaehlt  werden.  Die mitgegebenen Ports gelten so lange fuer
                  das  spezifizierte  Uebertragungsprotokoll,  bis   ein   anderes
                  angegeben  wird.  Zum  Beispiel  werden  mit  dem  Argument  "-p
                  U:53,111,137,T:21-25,80,139,8080" die UDP-Ports 53, 111 und  137
                  sowie  die  TCP-Ports  21  bis  25,  80,  139 und 8080 gescannt.
                  Wichtig ist, dass bei einem  gleichzeitigen  TCP-  und  UDP-Scan
                  neben  der  Angabe  von  -sU  mindestens  eine TCP-Scan-Variante
                  mitangegeben werden muss (zum Beispiel -sS, -sF oder -sT).  Wird
                  bei  der  Wahl  der  Zielports  auf das spezifizieren eines Pro-
                  tokolls verzichtet,  bezieht  sich  die  Option  auf  saemtliche
                  Uebertragungsprotokolle.

           -F     Schneller  Scan-Modus (engl. Fast scan mode): Dies gibt an, dass
                  Sie lediglich die in  der  services-Datei  von  nmap  gelisteten
                  Dienste  scannen  wollen (oder bei -sO die Protokolle der proto-
                  cols-Datei). Selbstverstaendlich ist dies  viel  schneller,  als
                  saemtliche 65535 Ports eines Hosts zu ueberpruefen.

           -D <Decoy1 [,Decoy2][,ME],...>
                  Veranlasst  einen  sogenannten  Decoy-Scan (dt. Lockvolgel). Bei
                  diesem sieht es so aus,  als  wuerde  eine  Reihe  zusaetzlicher
                  Hosts  die Zielumgebung scannen.  Ein Intrusion Detection-System
                  wird zwischen 5 und 10 Portscans verschiedener IP-Adressen  pro-
                  tokollieren, wobei ohne weiteres nicht genau festgestellt werden
                  kann, welches System den  Scan  wirklich  durchfuehrt.  Waehrend
                  diese  Methode durch Router Path Traceing, Response-Dropping und
                  andere "aktive" Mechanismen niedergeschlagen werden kann, ist es
                  doch  eine extrem effektive Technik, um die eigene IP-Adresse zu
                  verstecken.

                  Die jeweiligen Lockvoegel koennen durch ein Komma getrennt  wer-
                  den.  Optional  kann  durch  die  Angabe von ’ME’ (dt. mich) die
                  eigene Position  in  der  Zugriffsreihenfolge  gewaehlt  werden.
                  Falls  ’ME’  in  die  sechste  oder  noch eine spaetere Position
                  gesetzt  wird,  sind  einige  Portscan-Detektoren  (z.B.   Solar
                  Designers  scanlogd)  nicht in der Lage, die richtige IP-Adresse
                  anzuzeigen.  Falls Sie ’ME’ nicht  mitangeben,  wird  nmap  eine
                  zufaellige Position bestimmen.

                  Achtung, die als Decoys angegebenen Hosts sollten vom Zielsystem
                  erreichbar sein. Andernfalls  ist  es  durchaus  moeglich,  dass
                  dieses  durch  einen SYN-Flood in die Knie gezwungen wird. Zudem
                  ist es relativ einfach zu  erkennen,  welches  System  den  Scan
                  durchfuehrt,  wenn  nur  dieses eine System wirklich im Netzwerk
                  aktiv ist. Es lohnt sich IP-Adressen anstatt Hostnamen  bei  der
                  Spezifizierung  der  Lockvogel-Systeme  anzugeben  (so ist keine
                  Namensaufloesung noetig und die Protokoll-Eintraege in den Name-
                  servern bleibt aus).

                  Ebenso  weisen einige (dumme) "Portscan-Detektoren" Firewalling-
                  Funktionalitaet     auf,     und     sie     unterbinden     die
                  Verbindungsmoeglichkeit  jeglichen  Systems,  das einen Portscan
                  durchfuehrt.   So   kann   es   durchaus    sein,    dass    die
                  Verbindungsmoeglichkeit  des Zielsystems zu den Lockvoegeln ver-
                  hindert wird.  Dies ist dann problematisch, wenn es sich um  ein
                  wichtiges  System,  wie  zum Beispiel das Standard-Gateway, han-
                  delt. Also, es gilt vorsichtig im Umgang mit  dieser  Option  zu
                  sein.  Die Moral dieser Geschichte ist, dass Portscan-Detektoren
                  mit automatisierter Strike-Back Funktionalitaet keine gute  Idee
                  sind  - Hinter jedem Portscan koennte sich ein Lockvogel verber-
                  gen!

                  Die Lockvoegel werden im initialen  Ping-Scan  (ICMP,  SYN  oder
                  ACK)  und  waehrend  der  eigentlichen Portscan-Phase verwendet.
                  Ebenso finden sie beim Durchfuehren einer  Betriebssystem-Erken-
                  nung ( -O ) Verwendung.

                  Es  bleibt  zu  sagen,  dass zu viele Lockvoegel einen Scan ver-
                  langsamen  und  ineffizienter  machen  koennen.  Ebenso  filtern
                  einige  ISPs  gespoofte  Pakete heraus, obwohl dies zur Zeit die
                  wenigsten machen.

           -S <IP-Adresse>
                  Unter bestimmten Umstaenden ist nmap nicht  in  der  Lage,  Ihre
                  Quell-IP-Adresse  zu  identifizieren ( nmap wird Ihnen dies mit-
                  teilen). In einer solchen  Situation  kann  mit  der  Hilfe  der
                  Option  -S die IP-Adresse (der gewuenschten Schnittstelle) fest-
                  gelegt werden.

                  Eine andere Moeglichkeit dieser Option ist die Quelle des  Scans
                  zu  spoofen,  so dass das Zielsystem glaubt, dass jemand anderes
                  die Zugriffe durchfuehrt. 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.

           -e <Schnittstelle>
                  Weist  nmap  an, ueber welche Schnittstelle die Daten verschickt
                  und empfangen werden sollen. nmap sollte in der Lage sein diesen
                  Umstand  von  sich aus zu erkennen. Falls dem nicht so ist, kann
                  diese Option herangezogen werden.

           -g <Portnummer>
                  Definiert den Quellport fuer die Scans. Einige  naive  Firewall-
                  Implementierungen  machen  bei  DNS  (53) und FTP-DATA (20) eine
                  Ausnahme und lassen solcherlei Verbindung entgegen  der  Bestim-
                  mungen  im  Regelwerk  zu.   Obschon dieser Umstand ganz einfach
                  durch Angreifer ausgenutzt werden kann, um sich  als  FTP-  oder
                  DNS-System  maskierend  einen Vorteil zu verschaffen. Fuer einen
                  UDP-Scan sollte 53 als erstes ausprobiert werden. Bei einem TCP-
                  Scan  bieten  sich  20  und  53 an. Achtung, es handelt sich bei
                  dieser Option lediglich um eine Anfrage, die nicht  zwingend  in
                  jeder  Situation  von  nmap  umgesetzt werden will und kann. Zum
                  Beispiel ist eine ISN-Analyse  nicht  von  System:Port  zu  Sys-
                  tem:Port  moeglich,  so  dass nmap eine dynamische Portzuweisung
                  durchfuehrt, auch wenn anderes durch -g angegeben wurde.

                  Seien Sie gewarnt, dass diese Option bei einigen  Scan-Varianten
                  Performance-Einbussen mit sich bringt.

           --data_length <Anzahl>
                  Normalerweise  verschickt  nmap  moeglichst  kleine  Pakete, die
                  lediglich aus dem Header bestehen. So weisen  TCP-Datagramme  im
                  Normalfall  eine Laenge von 40 und ICMP echo request-Anfragen 28
                  Bytes auf. Diese Option weist nmap an, die  verschickten  Pakete
                  um  Null-Bytes zu verlaengern. Pakete zur Erkennung des Betrieb-
                  ssystens (-O) sind nicht betroffen. Ganz im Gegensatz  zu  Ping-
                  Zugriffen  und Portscan-Paketen. Dies verlangsamt natuerlich die
                  Zugriffe unter Umstaenden - Aber ebenso kann es  die  Unauffael-
                  ligkeit des Scans erhoehen.

           -n     Sagt nmap, dass NIE reverse DNS-Aufloesungen von als aktiv iden-
                  tifizierten IP-Adressen durchgefuehrt werden sollen. Da DNS  oft
                  langsam ist, kann diese Option die Zugriffe beschleunigen.

           -R     Sagt  nmap,  dass  IMMER  reverse  DNS-Aufloesungen von als Ziel
                  spezifizierten IP-Adressen  durchgefuehrt  werden  sollen.  Dies
                  wird  im Normalfall nur immer dann durchgefuehrt, wenn ein Ziel-
                  system als aktiv identifiziert werden konnte.

           -r     Sagt nmap, dass KEINE zufaellige Wahl  beim  Scannen  der  Ports
                  gewuenscht ist.

           --ttl <time to live>
                  Setzt den "Time to live" Wert im IPv4 Header.

           --randomize_hosts (dt. zufaellige Reihenfolge der Hosts)
                  Sagt  nmap,  dass  bei  einer Gruppe von bis zu 2048 Zielen eine
                  zufaellige Reihenfolge gewaehlt werden soll, bevor sie  gescannt
                  werden.  Dies  kann den Scanvorgang fuer viele Netzwerk-Monitor-
                  ing-Systeme schwieriger  zu  entdecken  machen;  ganz  besonders
                  dann,  wenn  langsame  Timing-Optionen  angewandt  werden (siehe
                  unten).

           -M <Maximale Sockets>
                  Setzt  die  maximale  Anzahl  der  Sockets  bei  einem  parallel
                  durchgefuehrten  TCP  connect()-Scan fest. Dies ist zum Beispiel
                  in Situationen nuetzlich, wenn der Scanvorgang  kuenstlich  ver-
                  langsamt  werden soll, damit das Zielsystem nicht unter der Last
                  der Zugriffe zusammenbricht. Eine  andere  Herangehensweise  ist
                  durch  -sS gegeben, die durch die Geraete oft einfacher zu hand-
                  haben ist.

           TIMING-OPTIONEN
                  Normalerweise macht nmap hervorragende Arbeit, um waehrend eines
                  Scans  das Maximum an Performance herauszuholen, ohne Fehlermel-
                  dungen zu Hosts oder Ports zu provozieren. Trotzdem kann es Sit-
                  uationen geben, in denen das Timing von nmap nicht dem von Ihnen
                  gewuenschten entspricht.  Die  folgenden  Optionen  ermoeglichen
                  eine feine Skalierbarkeit der Kontrolle bezueglich des Scan-Tim-
                  ings:

           -T <Paranoid|Sneaky|Polite|Normal|Aggressive|Insane>
                  Diese vordefinierten Timing-Richtlinien erlauben Ihnen nmap Ihre
                  Prioritaeten   mitzuteilen.  Der  Paranoid  -Modus  scannt  sehr
                  langsam, in der Hoffnung, nicht von Intrusion Detection-Systemen
                  entdeckt  zu  werden. Die Scans werden in Serie geschaltet (kein
                  paralleles Scanning) und im Normalfall wird  bis  zu  5  Minuten
                  zwischen  dem  Versand  der Pakete gewartet.  Sneaky (dt. schle-
                  ichend) ist aehnlich, ausser, dass lediglich 15  Sekunden  zwis-
                  chen  dem  Paket-Versand  gewartet  wird.  Polite (dt. hoeflich)
                  wird dann relevant, wenn die Netzwerkbelastung niedrig  gehalten
                  werden  will. Zum Beispiel, um Abstuerze von Systemen zu vermei-
                  den. Die Zugriffe werden wiederum in Serie geschaltet und  zwis-
                  chen  den Zugriffen wird mindestens 0.4 Sekunden gewartet.  Nor-
                  mal spiegelt das normale Verhalten von nmap  wieder,  was  einen
                  Kompromiss  zwischen  maximaler  Geschwindigkeit  bei  absoluter
                  Zuverlaessigkeit darstellt.  Aggressive  (dt.  aggressiv)  fuegt
                  eine Wartezeit von 5 Minuten zwischen den einzelnen Hosts hinzu.
                  Es wird jedoch nie  laenger  als  1.25  Sekunden  auf  Antworten
                  gewartet.   Insane  (dt.  geisteskrank)  ist  lediglich  in sehr
                  schnellen Netzwerken moeglich. Oder ueberall dort,  wo  auf  die
                  Zuverlaessigkeit  des  Resultat  nicht  sonderlich  viel gegeben
                  wird. Zwischen den einzelnen Systemen wird 75 und  zwischen  den
                  Zugriffen  0.3  Sekunden  gewartet. Dies lohnt sich zum Beispiel
                  fuer einen schnellen Netzwerk-Suchlauf :).  Die  einzelnen  Modi
                  koennen  ebenso durch eine Nummer (0-5) referenziert werden. Zum
                  Beispiel gibt ’-T 0’ den Paranoid-Modus an und ’-T 5’ steht fuer
                  Insane.

                  Diese  spezifischen  Timing-Modi  sollten NICHT zusammen mit den
                  nun folgend vorgestellten Timing-Optionen verwendet werden.

           --host_timeout <Millisekunden>
                  Spezifiziert  den  Zeitraum,  der  nmap  gegeben  wird,  um  ein
                  einzelnes  System  zu scannen, bevor sich einer neuen IP-Adresse
                  gewidmet wird. Der Standardwert hat kein Timeout fuer Hosts.

           --max_rtt_timeout <Millisekunden>
                  Spezifiziert den  Zeitraum,  der  nmap  gegeben  wird,  um  eine
                  Antwort  zu  warten,  bevor  eine  Uebertragunswiederholung ein-
                  geleitet wird oder das Timeout in Kraft tritt. Der  Standardwert
                  ist auf 9000 gesetzt.

           --min_rtt_timeout <Millisekunden>
                  Antwortet  ein  Host sehr schnell auf unsere Anfragen, wird nmap
                  das Zeitlimit fuer zukuenftige Zugriffe auf das besagte Zielsys-
                  tem  verkleinern.  Dies bringt einen Geschwindigkeitsvorteil mit
                  sich, wobei jedoch auch Pakete  verloren  gehen  koennen,  falls
                  ploetzlich ein Antworten in der vorhergesehenen Zeitspanne nicht
                  mehr  moeglich  sein  sollte.  Mit  dieser  Option   kann   nmap
                  angewiesen werden, dass immer mindestens ein bestimmter Zeitwert
                  gewartet werden soll, bevor der Vorgang abgebrochen wird.

           --initial_rtt_timeout <Millisekunden>
                  Spezifiziert das Timetout fuer den initialen Zugriff.  Dies  ist
                  normalerweise  nur  dann  sinnvoll,  wenn durch Firewall-Systeme
                  geschuetzte Hosts mit der Option  -P0  gescannt  werden  sollen.
                  Normalerweise ist nmap in der Lage den RTT-Wert anhand des Ping-
                  Zugriffs und der ersten Auswertungen  optimal  festzulegen.  Der
                  Standardwert lautet 6000.

           --max_parallelism <Anzahl>
                  Spezifiziert  die  maximale  Anzahl  parallel  von  nmap  durch-
                  fuehrbaren Zugriffe.  Das Setzen dieser Option heisst fuer nmap,
                  dass nie mehr als 1 Port auf einmal gescannt werden soll. Ebenso
                  sind andere Scan-Typen  betroffen,  die  normalerweise  parallel
                  durchgefuehrt  werden  koennen  (z.B.  Ping-Suchlauf,  RPC-Scan,
                  etc.).

           --min_parallelism <Anzahl>
                  Weist nmap an, beim Scan eine gewisse Anzahl von Ports  parallel
                  zu  scannen.  Dies kann unter Umstaenden den Auswertungs-Vorgang
                  von Firewall-Systemen beschleunigen. Aber seien Sie  vorsichtig:
                  Die  Resultate  werden  umso  unzuverlaessiger, desto hoeher die
                  Anzahl paralleler Zugriffe gesetzt wird.

           --scan_delay <Millisekunden>
                  Spezifiziert das Minimum der Zeit, die nmap  zwischen  den  jew-
                  eiligen  Zugriffen  warten muss. Dies ist sehr nuetzlich, um das
                  Datenaufkommen  in  Netzwerken  zu  reduzieren  oder  durch  den
                  langsameren  Scanvorgang vor IDS-Tresholds verborgen zu bleiben.

           --packet_trace
                  Sagt nmap, dass saemtliche verschickten und  empfangenen  Pakete
                  in  einem  tcpdump-aehnlichen  Format dargestellt werden sollen.
                  Dies ist ganz besonders fuer Debugging nuetzlich. Ausserdem kann
                  so viel ueber die Funktionsweise gelernt werden.

## ZIEL-SPEZIFIKATION

           Alles,  das  nmap  nicht  als Option mitgegeben wird (oder ein Argument
           einer Option darstellt) wird als Ziel-Spezifikation angesehen. Die ein-
           fachste Form dessen, ist das Auflisten von einzelnen Hostnamen oder IP-
           Adressen in der Kommandozeile. Falls Sie ein Subnetz scannen wollen, so
           koennen  Sie  ’/Maske’  am  Hostnamen oder der IP-Adresse anfuegen. Die
           Maske muss einen Wert zwischen 0 (das ganze Internet  scannen)  und  32
           (den einzelnen Host scannen) aufweisen. Benutzen Sie /24 fuer das Scan-
           nen eines Klasse C-Netzwerks und /16 fuer ein Klasse B-Netzwerk.

           nmap greift zudem auf eine sehr maechtige Notation  zurueck,  die  eine
           sehr komfortable Spezifikation von IP-Adressbereichen zulaesst. So kann
           das Klasse B-Netzwerk 192.168.*.*  mit  der  Angabe  von  ’192.168.*.*’
           oder   ’192.168.0-255.0-255’  oder  ’192.168.1-50,51-255.1,2,3,4,5-255’
           gescannt werden. Und selbstverstaendlich ist auch die verbreitete Netz-
           masken-Notation zulaessig: ’192.168.0.0/16’. All diese Eingaben fuehren
           zum gleichen Ziel.  Falls Sie das  Asteriks-Zeichen  (dt.  Stern,  ’*’)
           benutzen  wollen, denken Sie daran, dass einige Shells das Escapen mit-
           tels Backslashes oder das Auskommentieren mittels Gaensefuesschen  ver-
           langen.

           Eine  andere  Moeglichkeit  ist  genau  durch das umgekehrte Herangehen
           gegeben.  Anstatt ein ganzes Klasse B-Netzwerk zu scannen, kann mit der
           Angabe  von  ’*.*.5.6-7’  jede IP-Adresse gescannt werden, die auf .5.6
           oder .5.7 endet.  Fuer zusaetzliche Informationen, konsultieren Sie den
           Abschnitt Beispiele

## BEISPIELE

           Hier  folgen  nun  einige  Beispiele  fuer  das  Nutzen von nmap. Diese
           reichen von einfachen ueber normale bis hin zu komplexen Ansaetzen.  Es
           werden   existente   IP-Adressen  und  Domainnamen  verwendet,  um  die
           Beispiele konkreter zu gestalten.  Anstatt  ihrer  Stelle  sollten  Sie
           Adressen  und Namen Ihres eigenen Netzwerks benutzen. Ich bin der Mein-
           ung, dass Portscanning fremder  Netzwerke  nicht  illegal  ist;  ebenso
           sollten Portscans nicht als Angriffe gewertet werden. Ich habe tausende
           Maschinen gescannt und bisher erst eine Rueckmeldung erfahren.   Jedoch
           bin  ich kein Anwalt und einige (langweilige) Leute koennten durch mit-
           tels nmap generierter Zugriffe nervoes werden. Holen  Sie  sich  zuerst
           eine  Erlaubnis  fuer Ihre Aktivitaeten ein oder tragen Sie die Risiken
           selbst.

           nmap -v ziel.beispiel.com

           Diese Option scannt alle reservierten TCP-Ports am Zielsystem  mit  dem
           Namen ziel.beispiel.com. Das -v aktiviert den Verbose-Modus.

           nmap -sS -O ziel.beispiel.com/24

           Hier  wird ein stealth SYN-Scan gegen jede der 255 Maschinen des Klasse
           C-Netzwerks von ziel.beispiel.com gestartet. Ebenso wird  versucht  das
           Betriebssystem   der  aktiven  Systeme  zu  ermitteln.  Dieser  Vorgang
           erfordert root-Privilegien aufgrund des SYN-Scans und der  Betriebssys-
           temerkennung.

           nmap -sX -p 22,53,110,143,4564 198.116.*.1-127

           Startet einen Xmas-Tree-Scan auf die erste Haelfte der 255 moeglichen 8
           Bit Subnetze des Klasse B-Adressraums von 198.116. Wir ueberpruefen, ob
           am  Zielsystem  SSHD,  DNS,  POP3D, IMAPD oder der Port 4564 aktiv ist.
           Wichtig ist, dass Xmas-Scans nicht  gegen  Microsoft-Geraete  funktion-
           ieren,  da  einige  Abweichungen bei der Implementierung des TCP-Stacks
           gemacht wurden. Das gleiche gilt fuer Cisco-, IRIX-, HP/UX-  und  BSDI-
           Maschinen.

           nmap -v --randomize_hosts -p 80 ’*.*.2.3-5’

           Manchmal  ist  es nicht erforderlich einen IP-Adressbereich zu scannen.
           So kann  es  durchaus  sein,  dass  in  einer  Situation  das  Absuchen
           spezieller  Geraete noetig wird. Dieses Kommando findet saemtliche Web-
           server, die eine IP-Adresse aufweisen, die auf  .2.3,  .2.4  oder  .2.5
           endet.  Falls Sie root sind, so kommt eventuell ein Hinzufuegen von -sS
           in Frage. Ebenso koennten mehr interessante  Systeme  gefunden  werden,
           wenn  bei  127  gestartet wird (IMHO). In diesem Fall koennen die durch
           die Sterne gegebenen Platzhalter durch ’127-222’ ersetzt werden.

           host -l firma.com | cut ’-d ’ -f 4 | ./nmap -v -iL -

           Fuehrt einen DNS-Zonetransfer durch, um saemtliche Hosts von  firma.com
           zu  finden.  Die  Ausgabe  der IP-Adressen wird sodann fuer die weitere
           Verarbeitung zu nmap umgeleitet. Die dokumentierte Kommandofolge  funk-
           tioniert  nur  auf  Geraeten  mit GNU/Linux. Vielleicht muessen Sie auf
           anderen Betriebssystemen andere Kommandos und Optionen heranziehen.

## FEHLER

           Fehler? Was fuer Fehler? Senden Sie sie mir, falls sie  solche  finden.
           Entsprechende  Patches  waeren auch gleich nett :) Denken Sie ausserdem
           daran, neue OS-Fingerabdruecke einzusenden, damit die Datenbank wachsen
           kann.  nmap  gibt  eine URL zur Uebermittlung des unbekannten Fingerab-
           drucks aus.

## AUTOR

           Fyodor <fyodor@insecure.org>

## UEBERSETZUNG

           Marc Ruef <marc.ruef@computec.ch>

           http://www.computec.ch

           Wettingen, Oktober 2002

## DISTRIBUTION

           Die  neueste  Version  von  nmap  kann  jeweils  von   http://www.inse-
           cure.org/nmap/ bezogen werden.

           nmap is (C) 1995-2002 by Insecure.Com LLC

           Dieses  Programm  gilt  als  freie  Software; Sie koennen sie unter den
           Lizenzbestimmungen der GNU General Public License, wie sie von der Free
           Software  Foundation  in  der  Version  2 publiziert wurde, weitergeben
           und/oder veraendern. Dies weist Ihnen das Recht zu, die Software  unter
           den  gegebenen  Bestimmungen zu nutzen, modifizieren und weiterzugeben.
           Falls Sie diese Lizenzbestimmungen nicht akzeptieren wollen, ist  Inse-
           cure.Org  unter  Umstaenden in der Lage, eine alternative Lizenzbestim-
           mung auszuhandeln (kontaktieren Sie fyodor@insecure.org).

           Der Quelltext dieser Software wird  aus  diesem  Grund  zur  Verfuegung
           gestellt, weil wir glauben, dass die Benutzer ein Recht darauf haben zu
           wissen,  was  die  von  ihnen  eingesetzten  Programme   machen.   Dies
           ermoeglicht  zudem  das  Ueberpruefen  der Software auf etwaige Sicher-
           heitsschwachstellen (bisher wurden keine gefunden).

           Der Quelltext ermoeglicht zudem das Portieren von nmap auf  neue  Plat-
           tformen,  das  Beheben  von  Fehlern und Hinzufuegen neuer Funktionali-
           taeten. Ich darf Sie bitten entsprechende Aenderungen  an  fyodor@inse-
           cure.org  zu  schicken,  um  eine etwaige Zusammenarbeit zu besprechen.
           Durch das Senden von Neuerungen an Fyodor oder einem der Mitglieder der
           Entwickler-Meilingliste  erlauben Sie die unlimitierte, nicht-exklusive
           Weiterverwendung, Modifizierung und Relizensierung. Dies  ist  insofern
           wichtig,  da einige andere Free Software Projekte (zum Beispiel KDE und
           NASM) sich mit unnoetigen Lizenzproblemen konfrontiert sahen. nmap wird
           stets  als open-source zur Verfuegung stehen.  Falls Sie sich an andere
           Lizenzbestimmungen halten moechten, so vermerken Sie  dies  doch  bitte
           beim Einsenden Ihres Materials.

           Dieses  Programm  wurde  in  der Hoffnung entwickelt, dass es nuetzlich
           ist; jedoch OHNE JEGLICHE  GARANTIE.   Siehe  die  GNU  General  Public
           License  fuer  zusaetzliche  Informationen (sie ist in der Datei namens
           COPYING, die mit nmap mitgeliefert wird, enthalten).

           Es muss zusaetzlich  erwaehnt  werden,  dass  nmap  in  der  Lage  ist,
           schlecht  geschriebene  Anwendungen,  TCP/IP-Stacks und Betriebssysteme
           abstuerzen zu lassen.  nmap sollte  nie  auf  mission-critical  Systeme
           angewandt werden , ausser, wenn ein entsprechender Ausfall (engl. down-
           time) verkraftet werden kann. Wir bestaetigen hiermit, dass nmap  unter
           Umstaenden  Systeme und Netzwerke negativ beeinflussen kann. Wir tragen
           keine Verantwortung fuer Probleme, die beim Nutzen von  nmap  entstehen
           koennen.

           Aufgrund  dessen,  dass  das  Risiko eines Absturzes besteht und einige
           Black Hats nmap fuer das  Auswerten  von  Angriffszielen  missbrauchen,
           koennen einige Administratoren allergisch auf das Scannen ihrer Systeme
           reagieren. Somit ist es stets empfehlenswert, die  Erlaubnis  fuer  das
           Scannen eines Netzwerks einzuholen.

           nmap  sollte  aus  Sicherheitsgruenden  nie mit erweiterten Privilegien
           (z.B. suid root) gestartet werden.

           Dieses Produkt beinhaltet Software-Teile, die von der  Apache  Software
           Foundation  (http://www.apache.org/)  entwickelt  wurden.  Die  Libpcap
           portable Bibliothek wird als Teil von nmap mitgeliefert. Libpcap  wurde
           urspruenglich  durch Van Jacobson, Craig Leres und Steven McCanne, alle
           vom Lawrence  Berkeley  National  Laboratory,  Universitaet  von  Kali-
           fornien,   Berkeley,   CA,   entwickelt.   Zur   Zeit   wird   sie  von
           http://www.tcpdump.org betreut.

                                                                           NMAP(1)