Copyright (C) Open Source Press



Ähnliche Dokumente
Gordon Fyodor" Lyon. Nmap. Netzwerke scannen, analysieren und absichern

Copyright (C) Open Source Press

Copyright (C) Open Source Press

Schäfer: Root-Server. Copyright (C) Open Source Press

Task: Nmap Skripte ausführen

Leseprobe. Thomas Hummel, Christian Malorny. Total Quality Management. Tipps für die Einführung. ISBN (Buch):

Microsoft Windows XP SP2 und windream

LOG-FT BAG Filetransfer zum Austausch mit dem Bundesamt für Güterverkehr (BAG) Kurzanleitung

Windows 8. Tipps & Tricks. Das Franzis Praxisbuch. 288 Seiten Windows-8- Insiderwissen. Christian Immler. Schnelle Lösungen für Windows-8-Probleme

Systemanforderungen TreesoftOffice.org Version 6.4

SF-RB. Modul Provisionsabrechnung & Planung Reiseagentenprovisionsabrechnung & Planung. SF-Software Touristiksoftware

X.systems.press ist eine praxisorientierte Reihe zur Entwicklung und Administration von Betriebssystemen, Netzwerken und Datenbanken.

Praktikum IT-Sicherheit

POCKET POWER. Wissensmanagement. 4. Auflage

Installationsanleitung dateiagent Pro

ABACONNECT VERWENDUNG VON APACHE TCPMON UTILITY MIT ABACONNECT WEBSERVICES

Installation der kostenlosen Testversion

Website. zur eigenen. Ihr Weg ins Web: Domain, Hoster, Installation, Verwaltung, Pflege und IT-Recht. Websites. erstellen

Dokumentenverwaltung. Copyright 2012 cobra computer s brainware GmbH

Sophos Anti-Virus für Mac OS X Netzwerk-Startup-Anleitung

Update-Anleitung. Copyright 2010 cobra computer s brainware GmbH

3D-Architektur-Visualisierung

Samsung Galaxy S4 Buch

Personal. Installations-Anleitung.

Christina Janning. Change Management. Möglichkeiten der Kommunikation zur Reduzierung innerbetrieblicher Widerstände. Diplomarbeit

Netzwerkverwaltung mit Gruppenrichtlinien unter Windows Server 2012 R2. STUDENT-Pack. Professional Courseware

Dokumentation QHMI Plug-In Manager

LEAN MANUFACTURING. Teil 7 Lean und Six Sigma. Ein Quick Guide für den schnellen Einstieg in die Möglichkeiten der Lean Philosophie.

K. Hartmann-Consulting. Schulungsunterlage Outlook 2013 Kompakt Teil 1

POCKET POWER. Change Management. 4. Auflage

SIX SIGMA TEIL 2: DIE DEFINE PHASE DMAIC MARTIN ZANDER. Green Belt Level

Dokumentation QuickHMI Runtime Manager

Design for Six Sigma umsetzen POCKET POWER

SF-RB. Zeit- und Aufgabenmanagement. SF-Software Touristiksoftware

Menüband. Änderungen, Irrtümer und Druckfehler vorbehalten. Bearbeitet von Harald Borges. Stand April

bla bla OX App Suite Kalender und Kontakte synchronisieren mit CalDAV und CardDAV

O UTLOOK EDITION. Was ist die Outlook Edition? Installieren der Outlook Edition. Siehe auch:

Tanja Hartwig genannt Harbsmeier. Up- und Cross-Selling

ALE LANDSCHAFTSFOTOGRAFIE

Anleitung zum Archive Reader. ab Version

DesignCAD Toolkit DC Toolkit Pro 2 2D V24. Erste Schritte. Copyright: 2015, Franzis Verlag

objectif Import von Excel-Daten Bei Fragen nutzen Sie bitte unseren Support: Telefon: +49 (30)

ICS-Addin. Benutzerhandbuch. Version: 1.0

Infopark CMS Fiona. Fiona Release Notes

Einzel- s und unpersönliche Massen-Mails versenden

OP-LOG

Cross-border Mergers & Acquisitions in China

Microsoft Virtual Server 2005 R2. Installation, Einrichtung und Verwaltung

MultiIndexer Installation c-cron GmbH, Sangerhausen

Albert HAYR Linux, IT and Open Source Expert and Solution Architect. Open Source professionell einsetzen

objectif Installation objectif RM Web-Client

ClickProfile Mobile. Leitfaden Client. Ihre Vision ist unsere Aufgabe

Einfache und effiziente Zusammenarbeit in der Cloud. EASY-PM Office Add-Ins Handbuch

Lehrveranstaltung Grundlagen von Datenbanken

Nutzung der VDI Umgebung

Seniorenbüros im Land Brandenburg

Benutzerhandbuch. bintec elmeg GmbH. Benutzerhandbuch. be.ip. Workshops. Copyright Version 1.0, 2015 bintec elmeg GmbH

Anleitung für die Umstellung auf das plus Verfahren mit manueller und optischer Übertragung

Praxisleitfaden Projektmanagement

Anleitung zum Prüfen von WebDAV

Scholz (Hrsg.) / Krämer / Schollmayer / Völcker. Android-Apps. Konzeption, Programmierung und Vermarktung

Anleitung zur Erstellung des bootfähigen Reddoxx USB-Sticks. versionsunabhängig.

Outlook-Abgleich. Copyright 2012 cobra computer s brainware GmbH

Anleitung für Mobildruck und -scan aus Brother iprint&scan (Windows Phone )

Installationsanleitung. TFSInBox

Sophos Computer Security Scan Startup-Anleitung

Mike Burrows Übersetzer: Florian Eisenberg Wolfgang Wiedenroth

Projektmanagement in Outlook integriert InLoox 5.x Installationshilfe für Windows Terminalserver

Predictive Analytics Client. Installationsanleitung

Microsoft Dynamics NAV 2013 R/2 Installationsanleitung. Inhalt: Begleitmaterial des ERP Übungsbuchs:

Avira Support Collector. Kurzanleitung

Spamfilter einrichten

Avira Management Console Optimierung für großes Netzwerk. Kurzanleitung

INSTALLATION ABACUS ABAWEBCLIENT

Ordner Berechtigung vergeben Zugriffsrechte unter Windows einrichten

Einleitung Sniffing, Analyzing, Scanning Scanning. Netzwerke. Bierfert, Feresst, Günther, Schuster. 21. März 2006

Dokumente verwalten. Copyright 2013 cobra computer s brainware GmbH

Praxiswissen TYPO3 CMS 7 LTS

Auditcheckliste. für Systemaudits nach ISO/TS 16949:2009 DIN EN ISO 9001 ISO/TS Martin Zander

Anleitung zum ebanking KOMPLETT - Computercheck So aktualisieren Sie Ihr Microsoft-Betriebssystem

crm-now/ps Webforms Webdesigner Handbuch Erste Ausgabe

Konfigurationsmanagement mit Subversion, Ant und Maven

OX Updater: als frei zu betrachten sind. Bitte senden Sie Verbesserungshinweise zu dieser Dokumentation an

Anwenden eines Service Packs auf eine Workstation

SEO Strategie, Taktik und Technik

Endpoint Web Control Übersichtsanleitung. Sophos Web Appliance Sophos Enterprise Console Sophos Endpoint Security and Control

BEDIENUNG ABADISCOVER

ARCWAY Cockpit. Professional Upgrade. von 3.0 auf 3.1

TimeMachine. Time CGI. Version 1.5. Stand Dokument: time.odt. Berger EDV Service Tulbeckstr München

Witbox. Anleitung Repetier-Host. Witbox

Interaktive Whiteboards im Unterricht

Information über das Virtual Private Networks (VPNs)

Apple Mail: SSL - Einstellung überprüfen

Praktikum IT- Sicherheit

Natur- und Umweltschutz

Anleitung zum Computercheck So aktualisieren Sie Ihr Microsoft- Betriebssystem

Initiative Tierwohl. Erzeugung + Übermittlung der Bewegungsdaten Schlachtbetrieb. In 5 Schritten zur fertigen Schnittstellendatei

Transkript:

Gordon Fyodor Lyon Nmap Netzwerke scannen, analysieren und absichern

Alle in diesem Buch enthaltenen Programme, Darstellungen und Informationen wurden nach bestem Wissen erstellt. Dennoch sind Fehler nicht ganz auszuschließen. Aus diesem Grunde sind die in dem vorliegenden Buch enthaltenen Informationen mit keiner Verpflichtung oder Garantie irgendeiner Art verbunden. Autor(en), Herausgeber, Übersetzer und Verlag übernehmen infolgedessen keine Verantwortung und werden keine daraus folgende Haftung übernehmen, die auf irgendeine Art aus der Benutzung dieser Informationen oder Teilen davon entsteht, auch nicht für die Verletzung von Patentrechten, die daraus resultieren können. Ebenso wenig übernehmen Autor(en) und Verlag die Gewähr dafür, dass die beschriebenen Verfahren usw. frei von Schutzrechten Dritter sind. Die in diesem Werk wiedergegebenen Gebrauchsnamen, Handelsnamen, Warenbezeichnungen usw. werden ohne Gewährleistung der freien Verwendbarkeit benutzt und können auch ohne besondere Kennzeichnung eingetragene Marken oder Warenzeichen sein und als solche den gesetzlichen Bestimmungen unterliegen. Dieses Werk ist urheberrechtlich geschützt. Alle Rechte, auch die der Übersetzung, des Nachdrucks und der Vervielfältigung des Buches oder Teilen daraus vorbehalten. Kein Teil des Werkes darf ohne schriftliche Genehmigung des Verlags in irgendeiner Form (Druck, Fotokopie, Mikrofilm oder einem anderen Verfahren), auch nicht für Zwecke der Unterrichtsgestaltung, reproduziert oder unter Verwendung elektronischer Systeme verarbeitet, vervielfältigt oder verbreitet werden. Bibliografische Information Der Deutschen Nationalbibliothek Die Deutsche Nationalbibliothek verzeichnet diese Publikation in der Deutschen Nationalbibliografie; detaillierte bibliografische Daten sind im Internet über http://dnb.d-nb.de abrufbar. Copyright 2009 Open Source Press, München Englische Originalausgabe: Nmap Network Scanning Copyright 2008 by Gordon Fyodor Lyon Übersetzung: Dinu Gherman Lektorat: Franz Mayer Satz: Open Source Press (LATEX) Umschlaggestaltung: www.fritzdesign.de Autorenfoto: Jacob Appelbaum (http://creativecommons.org/licenses/by-sa/2.0/) Gesamtherstellung: Kösel, Krugzell ISBN 978-3-937514-82-6 http://www.opensourcepress.de

Vorwort zur deutschen Ausgabe von Nils Magnus........... 7 Vorwort..................................... 9 1 Einführung in Nmap 17 1.1 Nmap-Übersicht und -Demonstration.............. 17 1.1.1 Avatar Online......................... 18 1.1.2 Die Rettung der menschlichen Rasse........... 26 1.1.3 MadHat im Wunderland.................. 28 1.2 Die Phasen eines Nmap-Scans................... 31 1.3 Rechtliche Fragen........................... 34 1.3.1 Sind unerlaubte Port-Scans kriminell?.......... 34 1.3.2 Können Port-Scans die Zielcomputer/-netzwerke zum Absturz bringen?....................... 42 1.3.3 Das Nmap-Copyright.................... 44 1.4 Nmaps Vergangenheit und Zukunft................ 44 2 Nmap beschaffen, kompilieren, installieren und entfernen 53 2.1 Vorbereitungen............................ 53 2.1.1 Testen, ob Nmap schon installiert ist........... 54 2.1.2 Kommandozeilen- und grafische Schnittstelle..... 54 2.1.3 Nmap herunterladen.................... 55 2.1.4 Überprüfen der Integrität von Nmap-Downloads... 55 2.1.5 Nmap aus dem Subversion(SVN)-Repository herunterladen............................ 58 2.2 Kompilierung und Installation aus dem Quellcode unter Unix 59 2.2.1 Anweisungen zur Konfiguration.............. 61 2.2.2 Probleme beim Kompilieren................ 63 5

2.3 Linux-Distributionen......................... 64 2.3.1 RPM-basierte Distributionen (Red Hat, Mandrake, SUSE, Fedora)........................ 64 2.3.2 Red Hat, Fedora, Mandrake und Yellow Dog Linux mit Yum aktualisieren.................... 66 2.3.3 Debian Linux und Abkömmlinge wie Ubuntu..... 67 2.3.4 Andere Linux-Distributionen............... 67 2.4 Windows................................ 68 2.4.1 Windows 2000-Abhängigkeiten.............. 69 2.4.2 Windows-Selbstinstaller.................. 69 2.4.3 Zip-Binärdateien in der Kommandozeile........ 70 2.4.4 Kompilieren des Quellcodes................ 71 2.4.5 Nmap auf Windows ausführen.............. 72 2.5 Sun Solaris............................... 74 2.6 Apple Mac OS X............................ 74 2.6.1 Ausführbarer Installer.................... 74 2.7 FreeBSD/OpenBSD/NetBSD.................... 77 2.7.1 Anweisungen für OpenBSD-Binärpakete und Quellcode-Ports....................... 77 2.7.2 Anweisungen für FreeBSD-Binärpakete und Quellcode-Ports....................... 78 2.7.3 Anweisungen für das NetBSD-Binärpaket........ 79 2.8 Amiga, HP-UX, IRIX und weitere Plattformen.......... 79 2.9 Nmap entfernen....... (¹¹ ÜÐÙ..................... 79 3 Host-Erkennung ( Ping-Scanning ) 81 3.1 Ziel-Hosts und -Netzwerke angeben................ 82 3.1.1 Eingabe aus einer Liste (¹ Ä)............... 83 3.1.2 Zufällige Auswahl von Zielen (¹ Ê ÒÙÑØ Ö Ø ).. 84 3.1.3 Ziele ausklammern ¹¹ ÜÐÙ Ð Ð Ò Ñ ).............. 84 3.1.4 Praktische Beispiele..................... 84 3.2 IP-Adressen einer Organisation finden.............. 86 3.2.1 DNS-Tricks.......................... 87 3.2.2 Whois-Abfragen auf IP-Registries............. 90 6

3.2.3 Internet-Routing-Information............... 92 3.3 DNS-Auflösung............................ 93 3.4 Steuerung der Host-Erkennung................... 95 3.4.1 List-Scan (¹ Ä)........................ 95 3.4.2 Ping-Scan (¹ È)....................... 96 3.4.3 Ping abschalten (¹ÈÆ).................... 98 3.5 Methoden der Host-Erkennung................... 99 3.5.1 TCP-SYN-Ping (¹ÈË ÈÓÖØÐ Ø )............ 100 3.5.2 TCP-ACK-Ping (¹È ÈÓÖØÐ Ø )............ 101............... 103 3.5.4 ICMP-Ping-Arten (¹È,¹ÈÈÙÒ ¹ÈÅ).......... 104 3.5.5 IP-Protokoll-Ping (¹ÈÇ ÈÖÓØÓ ÓÐÐ¹Ä Ø )...... 105 3.5.6 ARP-Scan (¹ÈÊ)........................ 105 3.5.7 Standardkombination.................... 107 3.5.3 UDP-Ping (¹ÈÍ ÈÓÖØÐ Ø ) 3.6 Zusammenfassung: Strategien bei der Host-Erkennung.... 107 3.6.1 Verwandte Optionen.................... 107 3.6.2 Ping-Optionen auswählen und kombinieren...... 110 3.7 Code-Algorithmen bei der Host-Erkennung........... 115 4 Port-Scanning 117 4.1 Einführung in das Port-Scanning.................. 117 4.1.1 Was genau ist ein Port?................... 117 4.1.2 Welche sind die meistbenutzten Ports?......... 120 4.1.3 Was ist Port-Scanning?................... 124 4.1.4 Warum scannt man Ports?................. 126 4.2 Eine schnelle Anleitung zum Port-Scanning........... 127 4.3 Kommandozeilen-Schalter..................... 131 4.3.1 Auswahl von Scan-Methoden............... 131 4.3.2 Auswahl der zu scannenden Ports............ 133 4.3.3 Optionen zum Timing................... 135 4.3.4 Optionen für Ausgabeformat und Ausführlichkeit... 136 4.3.5 Optionen zur Umgehung von Firewalls und IDS.... 139 4.3.6 Angabe von Zielen...................... 139 4.3.7 Sonstige Optionen...................... 139 7

4.4 Scannen mit IPv6 (¹ )........................ 140 4.5 Szenario: Ein großes Netzwerk nach einem bestimmten offenen TCP-Port scannen....................... 141 4.5.1 Problem............................ 141 4.5.2 Lösung............................. 141 4.5.3 Diskussion.......................... 142 5 Methoden und Algorithmen des Port-Scannings 149 5.1 TCP-SYN-(Stealth-)Scan (¹ Ë)................... 151 5.2 TCP-Connect-Scan (¹ Ì)...................... 155 5.3 UDP-Scan (¹ Í)............................ 157 5.3.1 Unterscheidung von offenen und gefilterten UDP-Ports........................... 159 5.3.2 Beschleunigung des UDP-Scans.............. 162 5.4 TCP FIN-, NULL- und Xmas-Scans (¹,¹ Æ ¹ )...... 164 5.5 Benutzerdefinierte Scan-Typen mit¹¹ Ò Ð....... 168 5.5.1 Benutzerdefinierter SYN/FIN-Scan............ 169 5.5.2 PSH-Scan........................... 170 5.6 TCP-ACK-Scan (¹ )......................... 171 5.7 TCP-Window-Scan (¹ Ï)....................... 173 5.8 TCP-Maimon-Scan (¹ Å)...................... 174 5.9 TCP-Idle-Scan (¹ Á)......................... 175 5.9.1 Idle-Scan, Schritt für Schritt................ 176 5.9.2 Einen fuktionierenden Zombie-Host für Idle-Scans finden............................. 181 5.9.3 Ausführung eines Idle-Scans................ 182 5.9.4 Implementation des Idle-Scan-Algorithmus...... 183 5.10 IP-Protokoll-Scan (¹ Ç)....................... 188 5.11 TCP-FTP-Bounce-Scan (¹ )..................... 190 5.12 Scan-Code und -Algorithmen.................... 192 5.12.1 Überwachung des Netzwerkzustands.......... 193 5.12.2 Host- und Port-Parallelisierung.............. 193 5.12.3 Schätzung der Umlaufzeit................. 194 5.12.4 Steuerung bei Überlastung................. 195 5.12.5 Zeitmessung mit Testpaketen............... 197 8

5.12.6 Ableitung des Timings von benachbarten Hosts.... 197 5.12.7 Adaptives erneutes Senden................ 198 5.12.8 Scan-Verzögerung...................... 198 6 Die Nmap-Performance optimieren 201 6.1 Methoden zur Verkürzung der Scan-Zeit............. 203 6.1.1 Nicht-kritische Tests weglassen.............. 203 6.1.2 Zeitparameter optimieren................. 205 6.1.3 UDP-Scans trennen und optimieren........... 205 6.1.4 Nmap aktualisieren..................... 206 6.1.5 Mehrere Nmap-Instanzen nebenläufig ausführen... 206 6.1.6 Von einem günstigen Ort im Netzwerk scannen.... 207 6.1.7 Verfügbare Bandbreite oder CPU-Leistung erhöhen.. 207 6.2 Bewältigungsstrategien bei langen Scans............. 208 6.2.1 Mehrstufige Ansätze benutzen.............. 209 6.2.2 Scan-Zeit schätzen und einplanen............ 209 6.3 Daten und Strategien zur Port-Auswahl.............. 210 6.4 Zeiteinstellungen auf unterer Ebene................ 211 6.5 Templates für die Zeiteinstellung (¹Ì)............... 212 6.6 676.352 IP-Adressen in 46 Stunden scannen........... 214 7 Versionserkennung bei Diensten und Anwendungen 217 7.1 Anwendung und Beispiele...................... 220 7.2 Beschreibung des Verfahrens.................... 223 7.2.1 Mogeleien und Rückgriffe................. 226 7.2.2 Auswahl und Seltenheit von Testpaketen........ 227 7.3 Demonstration der Methode.................... 228 7.4 Postprozessoren............................ 232 7.4.1 Integration der Nmap Scripting Engine......... 232 7.4.2 RPC-Holzhammer...................... 233 7.4.3 Bemerkungen zum SSL-Postprozessor.......... 235............ 236 7.5.1 ÜÐÙ -Anweisung.................... 236 7.5 Dateiformat vonòñ Ô¹ ÖÚ ¹ÔÖÓ. 7.5.2ÈÖÓ -Anweisung...................... 237 9

7.5.3Ñ Ø -Anweisung...................... 237 7.5.4 Ó ØÑ Ø -Anweisung................... 240 7.5.5ÔÓÖØ - und ÐÔÓÖØ -Anweisung............ 240................ 241 7.5.6ØÓØ ÐÛ ØÑ -Anweisung. 7.5.7Ö Ö ØÝ-Anweisung..................... 241 7.5.8 ÐÐ -Anweisung.................... 242 7.5.9 Alle zusammen........................ 242 7.6 Beiträge von der Community.................... 243 7.6.1 Dienst-Fingerprints beitragen............... 243 7.6.2 Datenbankkorrekturen beitragen............. 244 7.6.3 Neue Testpakete einreichen................ 245 7.7 Szenario: Finde alle Server, auf denen eine unsichere oder unübliche Version einer Anwendung läuft............ 246 7.7.1 Problem............................ 246 7.7.2 Lösung............................. 247 7.7.3 Diskussion.......................... 248 7.8 Szenario: Versionserkennung hacken und anpassen...... 249 7.8.1 Problem............................ 249 7.8.2 Lösung............................. 250 7.8.3 Diskussion.......................... 251 8 Erkennung entfernter Betriebssysteme 253 8.1 Gründe für die Betriebssystemerkennung............ 254 8.1.1 Bestimmung der Verwundbarkeit des Ziel-Hosts.... 254 8.1.2 Maßgeschneiderte Exploits entwickeln......... 255 8.1.3 Netzwerk-Inventarisierung und -Betreuung....... 255 8.2 Anwendung und Beispiele...................... 256 8.3 Von Nmap unterstützte TCP/IP-Fingerprinting-Methoden.. 262 8.3.1 Gesendete Testpakete.................... 263 8.3.2 Antwort-Tests......................... 267 8.4 Fingerprint-Methoden, die Nmap vermeidet........... 281 8.4.1 Passives Fingerprinting................... 282 8.4.2 Exploit-Chronologie..................... 282 8.4.3 Zeiten bei erneuten Übertragungen........... 282 10

8.4.4 IP-Fragmentierung..................... 283 8.4.5 Muster offener Ports..................... 284 8.5 Verstehen eines Nmap-Fingerprints................ 284 8.5.1 Decodierung des Formats von Subject-Fingerprints.. 285 8.5.2 Decodierung des Referenz-Fingerprint-Formats.... 288 8.6 Algorithmen für die Betriebssystem-Übereinstimmung.... 293 8.7 Umgang mit falsch und nicht-identifizierten Hosts....... 295 8.7.1 Wenn Nmap falsch rät................... 296 8.7.2 Wenn Nmap keine Übereinstimmung findet und einen Fingerprint ausgibt..................... 297 8.7.3 Eigene Modifikationen in der nmap-os-db-datenbank 298 8.8 Szenario: Bösartige Wireless Access Points in einem Firmennetzwerk erkennen.......................... 298 8.8.1 Das Problem......................... 298 8.8.2 Lösung............................. 299 8.8.3 WAP-Eigenschaften..................... 300 9 Nmap Scripting Engine 303 9.1 Anwendungen und Beispiele.................... 306 9.1.1 Script-Kategorien...................... 306 9.1.2 Kommandozeilen-Argumente............... 309 9.1.3 Argumente für Scripts.................... 311 9.1.4 Beispielanwendungen.................... 312 9.2 Das Script-Format.......................... 312 9.2.1 Das Ö ÔØ ÓÒ-Feld................... 312 9.2.2 Das Ø ÓÖ -Feld.................... 313 9.2.3 Das ÙØ ÓÖ-Feld....................... 313 9.2.4 DasÐ Ò -Feld...................... 313 9.2.5 DasÖÙÒÐ Ú Ð-Feld..................... 313 9.2.6 Port- und Host-Regeln................... 314 9.2.7 Aktion............................. 314 9.3 Die Script-Sprache.......................... 314 9.3.1 Die Basis der Sprache Lua................. 315 9.4 NSE-Scripts.............................. 316 9.5 NSE-Bibliotheken........................... 356 11

9.5.1 Liste aller Bibliotheken................... 356 9.5.2 C-Module zu Nselib hinzufügen............. 359 9.6 Die Nmap-API............................. 360 9.6.1 An ein Script übergebene Information.......... 360 9.6.2 Netzwerk-I/O-API...................... 363 9.6.3 Thread-Mutexe........................ 365 9.6.4 Ausnahmebehandlung................... 367 9.6.5 Die Registry.......................... 368 9.7 Anleitung zum Schreiben von Scripts............... 368 9.7.1 Der Kopf............................ 369 9.7.2 Die Regel........................... 370 9.7.3 Der Mechanismus...................... 371 9.8 Script-Dokumentation schreiben (NSEDoc)........... 372 9.8.1 NSE-Dokumentations-Tags................ 375 9.9 Versionserkennung mit NSE..................... 376 9.10 Beispiel-Script: Ò ÖºÒ.................... 378 9.11 Implementationsdetails....................... 379 9.11.1 Die Initialisierungsphase.................. 379 9.11.2 Vergleich von Scripts mit Zielen.............. 381 9.11.3 Die Script-Ausführung................... 381 10 Firewalls und Intrusion-Detection-Systeme erkennen und unterwandern 383 10.1 Warum würden anständige Experten (White Hats) so etwas tun?.............................. 384 10.2 Firewall-Regeln ermitteln...................... 385 10.2.1 Der Standard-SYN-Scan.................. 385 10.2.2 ACK-Scan........................... 387 10.2.3 IP-ID-Tricks.......................... 390 10.2.4 UDP-Versions-Scans.................... 393 10.3 Umgehung von Firewall-Regeln.................. 394 10.3.1 Exotische Scan-Flags.................... 395 10.3.2 Manipulation des Quell-Ports............... 395 10.3.3 IPv6-Angriffe......................... 397 10.3.4 IP-ID-Idle-Scans....................... 399 12

10.3.5 Mehrfache Ping-Testpakete................ 399 10.3.6 Fragmentierung....................... 399 10.3.7 Proxies............................. 400 10.3.8 MAC-Adressen vortäuschen................ 401 10.3.9 Source Routing........................ 403 10.3.10 FTP Bounce-Scan...................... 403 10.3.11 Einen alternativen Weg nehmen............. 404 10.3.12 Ein praktisches reales Beispiel einer Firewall-Unterwanderung................. 404 10.4 Unterwanderung von Intrusion-Detection-Systemen..... 409 10.4.1 Erkennung von Intrusion-Detection-Systemen..... 409 10.4.2 Intrusion-Detection-Systemen ausweichen....... 413 10.4.3 Intrusion-Detection-Systeme täuschen......... 419 10.4.4 DoS-Angriffe auf reaktive Systeme............ 423 10.4.5 Intrusion-Detection-Systeme ausbeuten........ 424 10.4.6 Intrusion-Detection-Systeme ignorieren........ 425 10.5 Paketfälschungen von Firewalls und IDS erkennen....... 426 10.5.1 Nach TTL-Konsistenz suchen............... 427 10.5.2 Nach IP-ID- und Sequenznummer-Konsistenz suchen 428 10.5.3 Der Trick mit fehlerhaften TCP-Prüfsummen...... 429 10.5.4 Umlaufzeiten......................... 430 10.5.5 Genaue Analyse von Paket-Headern und -inhalten.. 431 10.5.6 Ungewöhnliche Netzwerk-Uniformität......... 432 11 Verteidigung gegen Nmap 433 11.1 Scannen, Ports schließen und Schwachstellen reparieren... 434 11.2 Nmap mit Firewalls blockieren und verlangsamen....... 435 11.3 Nmap-Scans erkennen........................ 437 11.4 Clevere Tricks............................. 439 11.4.1 Dienste auf obskuren Ports verbergen.......... 440 11.4.2 Portknocking......................... 441 11.4.3 Honeypots und Honeynets................. 444 11.4.4 Betriebssysteme vortäuschen............... 444 11.4.5 Teergruben.......................... 447 13

11.4.6 Reaktive Erkennung von Port-Scans........... 447 11.4.7 Rüstungswettlauf...................... 448 12 Die Zenmap-GUI 451 12.1 Der Zweck einer GUI für Nmap................... 452 12.2 Scannen................................ 453 12.2.1 Profiles............................. 454 12.2.2 Scan-Gruppierung...................... 454 12.3 Scan-Ergebnisse interpretieren................... 456 12.3.1 Scan-Ergebnisreiter..................... 457 12.3.2 Sortieren nach Host..................... 461 12.3.3 Sortieren nach Dienst.................... 462 12.4 Scan-Ergebnisse speichern und laden............... 463 12.4.1 Die Datenbank der zuletzt durchgeführten Scans... 464 12.5 In der Netzwerk-Topologie surfen................. 464 12.5.1 Übersicht des Reiters Topology.............. 464 12.5.2 Legende............................ 465 12.5.3 Steuerelemente........................ 467 12.5.4 Tastenkürzel......................... 470 12.5.5 Der Host-Viewer....................... 470 12.6 Der Nmap Command Constructor Wizard............ 471 12.7 Der Profil-Editor............................ 472 12.7.1 Ein neues Profil erstellen.................. 472 12.7.2 Ein Profil bearbeiten.................... 473 12.7.3 Ein neues Profil von einem alten ableiten........ 473 12.8 In gespeicherten Ergebnissen suchen............... 474 12.9 Ergebnisse vergleichen........................ 477 12.10 Zenmap in Ihrer Sprache...................... 479 12.10.1 Neue Übersetzungen erstellen............... 481 12.11 Von Zenmap benutzte Dateien................... 482 12.11.1 Das ausführbare ProgrammÒÑ Ô............. 482 12.11.2 Systemkonfigurationsdateien............... 482 12.11.3 Benutzerspezifische Konfigurationsdateien....... 483 12.11.4 Ausgabedateien....................... 484 14

12.12 Beschreibung von zenmap.conf.................. 485 12.12.1 Abschnitte in zenmap.conf................. 485 12.13 Kommandozeilenoptionen..................... 488 12.13.1 Übersicht........................... 488 12.13.2 Optionsübersicht...................... 488 12.13.3 Fehlerausgabe........................ 489 12.14 Geschichte............................... 489 13 Ausgabeformate 491 13.1 Kommandozeilen-Flags....................... 493 13.1.1 Die Ausgabeart steuern................... 493 13.1.2 Die Ausführlichkeit der Ausgabe steuern........ 495 13.1.3 Debugging-Ausgabe einschalten............. 499 13.1.4 Fehlermeldungen und Warnungen behandeln..... 501 13.1.5 Paketverfolgung einschalten................ 501 13.1.6 Abgebrochene Scans fortsetzen.............. 502 13.2 Interaktive Ausgabe.......................... 503 13.3 Normale Ausgabe (¹ÓÆ)....................... 504 13.4 $cript-kiddi3-vußgvb3 (¹ÓË).................... 505 13.5 XML-Ausgabe (¹Ó ).......................... 505 13.5.1 XML-Ausgabe benutzen.................. 508 13.6 XML-Ausgabe mit Perl manipulieren............... 510 13.7 Ausgabe in eine Datenbank..................... 512 13.8 HTML-Berichte erstellen....................... 513 13.8.1 Einen dauerhaften HTML-Bericht speichern...... 514 13.9 Grepbare Ausgabe (¹Ó )....................... 514 13.9.1 Felder in der grepbaren Ausgabe............. 515 13.9.2 Grepbare Ausgabe auf der Kommandozeile parsen.. 521 14 Nmap-Datendateien verstehen und anpassen 523 14.1 Liste bekannter Ports: nmap-services............... 524 14.2 Versions-Scanning-DB: nmap-service-probes.......... 526 14.3 SunRPC-Nummern: nmap-rpc................... 527 14.4 Betriebssystemerkennungs-DB: nmap-os-db.......... 528 15

14.5 Herstellerpräfixe für MAC-Adressen: nmap-mac-prefixes... 529 14.6 Liste der IP-Protokollnummern: nmap-protocols........ 531 14.7 Scripting-bezogene Dateien..................... 531 14.8 Angepasste Datendateien benutzen................ 532 15 Nmap-Referenz 535 15.1 Übersicht der Optionen....................... 537 15.2 Angabe von Zielen.......................... 539 15.3 Host-Erkennung............................ 541 15.4 Grundlagen von Port-Scans..................... 550 15.5 Port-Scanning-Methoden...................... 551 15.6 Port-Angabe und Scan-Reihenfolge................ 560 15.7 Dienst- und Versionserkennung.................. 562 15.8 Betriebssystemerkennung...................... 564 15.9 Nmap Scripting Engine (NSE)................... 566 15.10 Timing und Performance...................... 568 15.11 Firewall-/IDS-Umgehung und -Täuschung............ 576 15.12 Ausgabe................................. 583 15.13 Verschiedene Optionen....................... 590 15.14 Laufzeit-Interaktion......................... 593 15.15 Beispiele................................ 594 15.16 Fehler.................................. 595 15.17 Autor.................................. 596 Anhang 597 A TCP/IP-Referenz 599 B Rechtliche Hinweise 603 C DTD der Nmap-XML-Ausgabe 609 16