Nmap Network Scanning Guide Gordon Lyon
User Manual:
Open the PDF directly: View PDF .
Page Count: 465
Nmap Network Scanning
Official Nmap Project G u ide to Network
Discovery and Security Sca n n i ng
Gordon "Fyodor" Lyon
From port scanning basics for novices to the type of packet crafting
used by advanced hackers, this book by Nmap's author and maintainer
suits all levels of security and networking professionals. Rather than
simply document what every Nmap option does, Nmap Network
Scanning demonstrates how these features can be applied to solve real
world tasks such as penetration testing, taking network inventory,
detecting rogue wireless access points or open proxies, quashing network
worm and virus outbreaks, and much more. Examples and diagrams
show actual communication on the wire. This book is essential for
anyone who needs to get the most out of Nmap, particularly security
auditors and systems or network administrators.
Nmap Network Scanning : Official Nmap Project Gu ide to Network
Discovery and Security Scanning
by Gordon "Fyodor" Lyon
Book URL: http://nmap.org!bookl
ISBN-13: 9 7 8 -0-9 7 9 9 5 8 7 - 1 - 7
ISBN- 10: 0 - 9 7 9 9 5 8 7 - 1 - 7
Library of Congress Control Number (LCCN): 2 00 8 9 4 0 5 8 2
Library Of Congress Subject Headings:
I . Computer networks--Security measures
2. Computer security
Published by Insecure.Com LLC. For information on bulk purchases, special sales, rights, book distributors,
or translations, please contact us directly:
Insecure.Com LLC
370 Altair Way # 1 1 3
Sunnyvale, CA 94086-6161
United States
Email: sales @insecure.com; Phone: +1 -650-989-4206; Fax: +l-650-989-4206
Revision History:
First Edition: December 2008
Defcon Pre-Release: August 2008
Zero-Day Release: May 2008
Copyright © 2008 by Insecure.Com LLC. All rights reserved. Except where noted otherwise in this work,
no part may be reproduced or transmitted in any form or by any means, electronic or mechanical, including
photocopying, recording, or by any information storage or retrieval system, without the prior written permission
of the copyright owner.
Nmap is a registered trademark of lnsecure.Com LLC. Other product and company names mentioned herein
may be the trademarks of their respective owners. Where those designations appear in this book, and the
publisher was aware of a trademark claim, the designations have been printed with initial capital letters or
in all capitals.
The authors and publisher have taken care in the preparation of this book, but make no expressed or implied
warranty of any kind and assume no responsibility for errors or omissions. No liability is assumed for
incidental or consequential damages in connection with or arising out of the use of the information or programs
contained herein.
Table of Contents
Preface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xxi
I. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xxi
2. Intended Audience and Organization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xxi
3. Conventions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xxii
4. Other Resources . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xxiii
5. Request for Comments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xxiv
6. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xx iv
6. 1 . Technology Used to Create This Book . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xxv
7. TCP/IP Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xxvi
I . Getting Started with Nmap . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . l
J . l . Introduction
.
.
.
1
1 .2. Nmap Overview and Demonstration
. . . .
.
l
1 .2. 1 . Avatar Online . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . l
1 .2.2. Saving the Human Race
.
8
1 .2.3. MadHat in Wonderland
. . .
9
1 .3. The Phases of an Nmap Scan
. .
12
1 .4. Legal Issues
.
.
13
1 .4 . 1 . Is Unauthorized Port Scanning a Crime?
.
.
14
1 .4.2. Can Port Scanning Crash the Target Computer/Networks? .
. . 19
1 .4.3. Nmap Copyright
.
.
. .
, . 20
1.5. The History and Future of Nmap
.
.
.
.
. 20
2. Obtaining, Compiling, Installing, and Removing Nmap
25
2.1. Introduction
.
25
.
. . .
25
2. 1 . 1 . Testing Whether Nmap is Already Installed
.
2.1 .2. Command-line and Graphical Interfaces
. .
.
25
2.1 .3. Downloading Nmap
. .
.
26
2.1 .4. Verifying the Integrity of Nmap Downloads
.
26
2.1 .5. Obtaining Nmap from the Subversion (SYN) Repository
28
2.2. Unix Compilation and Installation from Source Code
29
2.2. 1 . Configure Directives
. . . .
30
2.2.2. If You Encounter Compilation Problems
.
32
2.3. Linux Distributions
.
.
33
2.3.1. RPM-based Distributions (Red Hat, Mandrake, SUSE, Fedora)
.
. 33
2.3.2. Updating Red Hat, Fedora, Mandrake, and Yel low Dog Linux with Yum
34
2.3.3. Debian Linux and Derivatives such as Ubuntu
. .
.
35
2.3.4. Other Linux Distributions
.
.
.
.
35
2.4. Windows
36
2.4. 1 . Windows 2000 Dependencies
.
. .
.
.
37
2.4.2. Wi ndows Self-installer
.
. .
.
37
2.4.3. Command-line Zip Binaries
37
37
Installing the Nmap zip binaries
2.4.4. Compile from Source Code
.
. .
.
38
2.4.5. Executing Nmap on Windows .
. .
. . .
39
2.5. Sun Solaris
.
. .
.
. .
40
2.6. Apple Mac OS X
. . .
.
41
2.6. 1 . Executable Installer
.
41
. . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . .
. . . . . .
. .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
.
. .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . .
. . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . .
.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . .
. . . . .
. . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . .
. . . . .
.
. . . . . .
.
.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . .
. . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . .
. . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
.
.
. .
.
. . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . .
. . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . .
.
.
. . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . .
. . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . .
. . . . . . . . . .
.
. . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . .
. . . .
. . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . .
.
. . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . .
. . . . . . .
.
. . . . . . . .
.
. . . . . . .
. . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . .
. . . .
. . . .
. .
. .
. . . . . .
. . . . . . . . . . . . . . . .
.
.
.
. . . . . . . . .
. . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . .
. . .
. . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . .
111
2.6.2. Compile from Source Code . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Compile Nmap from source code . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Compile Zen map from source code
.
2.6.3. Third-party Packages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.6.4. Executing Nmap on Mac OS X . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.7. FreeBSD I OpenBSD I NetBSD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2. 7. 1 . OpenBSD Binary Packages and Source Ports Instructions
2.7.2. FreeBSD Binary Package and Source Ports Instructions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Installation of the binary package
.
.
Installation using the source ports tree
.
2.7.3. NetBSD Binary Package Instructions
.
2.8. Amiga, HP-UX, IRIX, and Other Platforms
2.9. Removing Nmap
.
41
41
42
42
42
43
43
44
44
44
44
44
45
3. Host Discovery (Ping Scanning)
47
3 . 1 . Introduction
47
3 .2. Specifying Target Hosts and Networks .
47
3.2. 1 . Input From List (-iL)
48
3.2.2. Choose Targets at Random (-iR )
48
3.2.3. Excluding Targets (--exclude, --excludefile )
48
3.2.4. Practical Examples
.
49
3.3. Finding an Organization's IP Addresses . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
3.3. 1 . DNS Tricks
50
3.3.2. Whois Queries Against IP Registries
54
3.3.3. I nternet Routing Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
3.4. DNS Resolution
56
3.5. Host Discovery Controls
.
57
3.5. 1 . List Scan (-sL) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
3.5.2. Ping Scan (-sP) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
3.5.3. Disable Ping (-PN) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
3 .6. Host Discovery Techniques
60
3.6. 1 . TCP SYN Ping (-PS) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 1
3.6.2. TCP ACK Ping (-PA)
62
3.6.3. UDP Ping (-PU)
.
.
63
3.6.4. ICMP Ping Types (-PE, -PP, and -PM)
64
3 .6.5. IP Protocol Ping (-PO)
64
3.6.6. ARP Scan (-PR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
3.6.7. Default Combination . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
3.7. Putting It All Together: Host Discovery Strategies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
3.7. 1 . Related Options
66
3.7.2. Choosing and Combining Ping Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
TCP probe and port selection
.
68
UDP port selection
.
70
ICMP probe selection
70
Designing the ideal combinations of probes
70
3.8. Host Discovery Code Algorithms
72
4. Port Scanning Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
4. 1 . Introduction to Port Scanning
73
4. 1 . 1 . What Exactly is a Port?
73
4.1 .2. What Are the Most Popular Ports?
75
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
IV
4.1 .3. What is Port Scanning?
4.1 .4. Why Scan Ports?
.
. .
77
78
4.2. A Quick Port Scanning Tutorial
. .
.
.
79
4.3. Command-line Flags
.
.
. .
.
. 82
4.3. 1 . Selecting Scan Techniques .
.
. . . .
.
82
4.3.2. Selecting Ports to Scan
.
.
. 83
4.3.3. Timing-related Options .
.
.
.
85
4.3.4. Output Format and Verbosity Options
.
.
. . . . . . .
85
4.3.5. Firewall and IDS Evasion Options
.
.
87
4.3.6. Specifying Targets
.
.
. .
87
4.3.7. Miscellaneous Options
.
. .
.
.
. .
87
4.4. 1Pv6 Scanning (-6) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
4.5. SOLUTION: Scan a Large Network for a Certain Open TCP Port .
. 88
4.5.1. Problem .
. . . . .
.
.
88
4.5.2. Solution . .
. . . .
.
.
89
4.5.3. Discussion
.
.
.
89
4.5.4. See Also
. .
. . .
94
5. Port Scanning Techniques and Algorithms
.
.
95
5 . 1 . Introduction
95
5.2. TCP SYN (Stealth) Scan (-sS)
.
96
5.3. TCP Connect Scan (-sT) .
.
.
JOO
.
101
5.4. UDP Scan (-sU) .
.
.
5.4. 1 . Disambiguating Open from Filtered UDP Ports
1 02
5.4.2. Speeding Up UDP Scans
. .
.
.
I 05
5.5. TCP FIN, NULL, and Xmas Scans (-sF, -sN, -sX)
.
1 07
5.6. Custom Scan Types with --scanftags
.
.
111
5.6. 1 . Custom SYN/FIN Scan
111
5.6.2. PSH Scan .
.
.
. . . .
1 12
5.7. TCP ACK Scan (-sA)
.
.
1 13
5.8. TCP Window Scan (-sW)
.
..
. . . . .
1 15
5.9. TCP Maimon Scan (-sM)
.
. .
. .
.
1 16
5. 10. TCP Idle Scan (-sl) . .
.:................................................................... 1 17
5 .10. 1 . Idle Scan Step by Step . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 1 8
5. 10.2. Finding a Working Idle Scan Zombie Host
.
. . .
.
. .
1 20
.
121
5.10.3. Executing an Idle Scan
. . . . . . .
5. 10.4. Idle Scan Implementation Algorithms
. .
.
. . . 1 22
5. 1 1 . IP Protocol Scan (-sO)
. .
1 25
5.12. TCP FTP Bounce Scan (-b) .
.
.
. 1 27
5.13. Scan Code and Algorithms . .
. . .
. . 1 28
5 . 1 3 . 1 . Network Condition Monitoring
.
1 29
5 . 1 3.2. Host and Port Parallelization
.
1 29
5 . 1 3.3. Round Trip Time Estimation
.
.
1 30
5 . 1 3.4. Congestion Control .
1 30
5 . 1 3.5. Timing probes · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · ·-· · · · · · · · · · · · · · · · · · 1 32
5 . 1 3.6. Inferred Neighbor Times .
.
. .
.
1 32
5 . 1 3.7. Adaptive Retransmission .
.
.
1 32
5 . 1 3.8. Scan Delay
.
. .
.
1 32
6. Optimizing Nmap Performance
.
.
1 35
6.1. Introduction
.
1 35
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . .
. . . .
.
. . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . .
. . . . . . . . . .
. . . . . . . . .
. .
.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
.
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . .
. . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . .
.
.
. . .
. . . .
. . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . .
. . . . . . . . . . .
. . . . .
. . . . .
. . . . . . . .
. . . .
.
. . .
. . . . .
.
. . .
. . . . .
.
. . .
.
. .
. .
. . . . . . . . . . . . . .
. . . .
.
. . . . . . . . . .
.
. . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . .
.
.
. . . . .
. . . . .
. . .
. . . . . . . . . . . . . . . . . . . . . . . . . . .
.
. . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
. . .
.
. . . . . . . . . . .
. . . . . . . . . . .
.
. . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .
. .
. . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . .
. . .
. . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . .
.
. . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . .
.
. . .
. . . . . . .
. . . . . . . . . . .
.
. . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . .
.
. . .
. . .
. . . . .
. . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . .
.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
.
. . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
.
. . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . .
. . .
. . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .
. . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . .
. . .
. . . . . .
. . . . . . . . . . . . . . . . . . . . . .
.
. . .
.
. . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . .
.
. . . . . . . . . . . . . . . . . . . . . .
.
.
. . .
.
.
. . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
.
. . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . .
. . .
.
. . .
. . .
.
.
. . . . . . . . . . . . . . . . . . . . .
.
. . . . . . .
.
. . .
. . . . .
. . . . .
. . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
.
. .
.
. . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . .
.
.
. . .
. . . . . .
. . .
.
.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . .
.
. . . . . . . . . . . . . . .
. .
. . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . .
. . . .
. .
. . . . . .
. . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . .
. .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .
. . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . .
v
6.2. Scan Time Reduction Techniques
6.2. 1 . Omit Non-critical Tests
6.2.2. Optimize Timing Parameters
6.2.3. Separate and Optimize UDP Scans
6.2.4. Upgrade Nmap
.
.
6.2.5. Execute Concurrent Nmap Instances
6.2.6. Scan From a Favorable Network Location
6.2.7. Increase Available Bandwidth and CPU Time
6.3. Coping Strategies for Long Scans . . .
6.3 . 1 . Use a Multi-stage Approach
.
6.3.2. Estimate and Plan for Scan Time
6.4. Port Selection Data and Strategies
.
.
6.5. Low-Level Timing Controls . . .
. . .
6.6. Timing Templates (-T) . .
.
6.7. Scanning 676,352 IP Addresses in 46 Hours .
. . .. . . . . . .
.
.
. .
.
. .
. . . ..
. .
.
.
.
1 35
1 36
1 37
1 37
.
.
1 37
1 38
.
1 38
.
.
.
.
. .
1 38
. .
.
.
.
1 39
1 39
.
1 40
. .
.
.
1 40
.
141
1 42
.
.
1 43
7. Service and Application Version Detection
. .
. . .
1 45
7. 1 . Introduction
1 45
7.2. Usage and Examples
. .
. . . .
.
1 47
7.3. Technique Described . .
. . . . .
. .
. . . .
.
.
1 49
7.3 . 1 . Cheats and Fallbacks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 5 1
7.3.2. Probe Selection and Rarity .
.
1 52
7.4. Technique Demonstrated
1 52
7.5 . Post-processors .
. .
.
.
1 55
7.5 . 1 . Nmap Scripting Engine Integration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 55
.
.
.
1 56
7.5.2. RPC Grinding
7.5.3. SSL Post-processor Notes
.
.
.
1 57
7.6. nmap-service-probes File Format
1 58
7.6. 1 . Exclude Directive . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 58
7.6.2. Probe Directive
1 59
7.6.3. match Directive . .
. . .
1 59
7.6.4. softmatch Directive
.
. . . .
161
7.6.5. ports and sslports Directives
.
.
1 62
7.6.6. totalwaitms Directive
.
. .
1 62
7.6.7. rarity Directive .
. .
.
.
.
162
. . .
.
.
163
7.6.8. fallback Directive .
. . .
.
. .
7.6.9. Putting It All Together
. . . . . . .
.
.
. . ..
.
1 63
7.7. Community Contributions
. .
. . .
. . 1 64
7.7. 1 . Submit Service Fingerprints
. .
. . . .
.
1 64
7.7.2. Submit Database Corrections
.
164
7.7.3. Submit New Probes
. .
.
.
1 65
7.8. SOLUTION: Find All Servers Running an Insecure or Nonstandard Application
Version . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 66
7.8 . 1 . Problem
. . . .
.
. .
1 66
7.8.2. Solution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 66
7.8.3. Discussion
. . ..
. . . . .
.
167
7.9. SOLUTION: Hack Version Detection to Suit Custom Needs, such as Open Proxy
Detection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 68
7.9 . 1 . Problem
. ..
.
168
7.9.2. Solution
.
.
1 69
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
..
. .
.
.
. . . . .
.
.
.
.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . .
. . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . .
. . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . .
. . .
.
. .
. .
. . . . . . . . . . . . . . . . . .
. . . . .
.
.
. . . . . . . . . . . . . . .
. . . . . . . . .
. . .
. . ·. . . . .
. . . . . . . . .
.
. .
. . . . . . . . . . . . . . . .
. . . . . .
.
. .
. . .
.
. . . . . . . .
. . . . . . . . . . . .
. . . . . . . . . . . . . . . .
.
. . . .
.
. . . . . . . . . .
.
. . . . .
. . . . . .
. . . . . .
. . . . .
. . . . .
. . . .
. . . . . . . . . .
. . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . .
. .
. . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . .
.
. . . . . . . . . . . . . . .
. . . . . . . . . . . . . . .
. . .
. . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . .
. . . . . .
. . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . .
.
. . . . . . . . . . . . . . . .
. .
.
. . . . . . . .
. . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . .
.
.
. . .
. . . . . . . .
.
. . . . . . . .
.
.
. . . .
. . .
.
.
. . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . .
. . . . . .
. . . . . . . . . . . . . . . . . . . .
.
.
. .
. . . . . . . . . . .
. . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . .
. . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . .
. . . . . . . . . . . . . . . . .
. . . . . . . . . .
. . . . . .
. . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
.
.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . .
. . . . . . . . . . . .
.
. . . . . . . . . . . . . . . .
. . . . . . . . . .
.
. . . . . . . . . . . . . . . . . . . . . . .
.
. . . . . . . . . .
. . . . . . . . . . . . . .
. . . .
.
. . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . .
. . . .
.
. . . .
. . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . .
. . . . . . . .
. . . . . .
. . . . .
.
. .
. . . . . . . . . . . . . . . . . .
.
. . .
.
.
. .
. .
. . . . .
. .
. .
. . . . .
. . . . . . . . . . . . . . . .
. . . . . . .
. . . . . . . . . .
. . . .
. . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . .
. . . . . . .
.
. . . . . .
. .
. . . .
. .
. . . . .
. . . . . . . . . . . .
. . . . . . . . . .
. . . . .
.
. . . . . . .
. . . . . . . . . . . .
. .
. . . . . . . . . . . . .
. . . . . . . . . . . . . . . . .
. . . . . .
. . .
. .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . .
.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .
. .
. .
. . . . . . .
. . . . . . . . . . . . . . . . .
.
. . . . . . . . . . .
. .
. . . . . . . . . . . . . . . . . . . . . . . . .
.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . .
. . .
.
. . .
.
. . . . . .
. . . . . . . . . . . . . . .
.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .
vi
. . . . .
. .
. . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7.9.3. Discussion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 69
8. Remote OS Detection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 7 1
8.1. Introduction
171
8 . 1 . 1 . Reasons for OS Detection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 7 1
Determining vulnerability of target hosts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 7 1
Tailoring exploits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 7 1
Network i nventory and support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 72
Detecting unauthorized and dangerous devices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 72
Social engineering . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 72
8.2. Usage and Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 72
8.3. TCP/IP Fingerprinting Methods Supported by Nmap . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 76
8.3.1. Probes Sent
I 77
Sequence generation (SEQ, OPS, WIN, and T l ) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 77
ICMP echo (IE) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 7 8
TCP explicit congestion notification (ECN) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 79
TCP (T2-T7) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 79
UDP (U I ) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 79
8.3.2. Response Tests . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 80
TCP ISN greatest common divisor (GCD) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 80
TCP ISN counter rate (ISR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 80
TCP ISN sequence predictability index (SP) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 80
TCP IP ID sequence generation algorithm (Tl) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 8 1
ICMP IP ID sequence generation algorithm (II) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 8 1
Shared IP ID sequence Boolean (SS) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 82
TCP timestamp option algorithm (TS) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 82
TCP options (0, 01 -06) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 83
TCP i nitial window size (W, W I -W6)
.
. . 1 83
Responsiveness (R) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 84
IP don't fragment bit (DF)
I 84
Don't fragment (ICMP) (DFI) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 84
IP initial time-to-live (T) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 84
IP initial time-to-live guess (TG) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 85
Explicit congestion notification (CC) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 85
TCP miscellaneous quirks (Q) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 85
TCP sequence number (S)
. . . .
.
I 86
ICMP sequence number(SI) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 86
TCP acknowledgment number (A)
.
.
. . . 1 86
TCP flags (F) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 87
TCP RST data checksum (RD) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 87
IP type of service (TOS) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 87
IP type of service for ICMP responses (TOSI) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 87
IP total length (IPL) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 88
Unused port unreachable field nonzero (UN) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 88
Returned probe IP total length value (RIPL) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 88
Returned probe IP ID value (RID) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 88
Integrity of returned probe IP checksum value (RIPCK) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 88
Integrity of returned probe UDP length and checksum (RUL and RUCK) . . . . . . . . . . . . . . 1 88
Integrity of returned UDP data (RUD) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 88
ICMP response code (CD) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 89
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . .
. .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . .
.
. .
.
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
.
. . .
Vil
IP data length for ICMP responses (DLI)
. .
. .
8.4. Fingerprinting Methods Avoided by Nmap
.
. . .
8.4. 1 . Passive Fingerprinting
.
... . . .
8.4.2. Exploit Chronology
.
.
.
.
8.4.3. Retransmission Times . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8.4.4. IP Fragmentation .
.
.
. .
8.4.5. Open Port Patterns . . . . . . .
.
. . . . .. . . . . . .
8.5. Understanding a n Nmap Fingerprint
.
. . .
8.5. 1 . Decoding the Subject Fingerprint Format
.
. .. .. . . .. . ..
. .
Decoding the SCAN line of a subject fingerpri nt
.
. . .. .
8.5.2. Decoding the Reference Fingerprint Format . . . . .
. . . . .
. .
Free-form OS description (Fingerprint line)
.
.
.. . . . .. . . . .
Device and OS classification (Class lines) . .
. . .. . . . .. . .
Test expressions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8.6. OS Matching Algorithms
. .. .
.
.
. . .. .
. .
8.7. Dealing with Misidentified and Unidentified Hosts
. ..
. . . . .
. .
. . .
8.7. 1 . When Nmap Guesses Wrong . . .
. .
8.7.2. When Nmap Fails to Find a Match and Prints a Fingerprint . . . .
8.7.3. Modifying the nmap-os-db Database Yourself . . . .
.
. . . . .
8.8. SOLUTION: Detect Rogue Wireless Access Points on an Enterprise Network
.
8.8. 1 . Problem
. .. . .. . . . . . . .
. . . . . . .
.
8.8.2. Solution
. ... .... . . ....... . . . . . . .
. . . .
.
.
8.8.3. WAP Characteristics
. .. .... ... . .. ... . . .
. . .
9. Nmap Scripting Engine . . . . . . . .
.
.
. .. .
9.1. Introduction
. . . .. .. . . . .... . .. .. . . . . . . . .
.
9.2. Usage and Examples . . . . .
. ........ . . ... . . .
.
. . .
. .
. .
9.2. 1 . Script Categories . . . . . . . .
9.2.2. Command-line Arguments
.
.
. . .
9.2.3. Arguments to Scripts . . . . . . .
.
. .. . .
9.2.4. Usage Examples .
. .
.
.
.
. .. . .. . . . . . . .
9.3. Script Format . . . . . . .
. . . . .
.
.
.
. . .
.
9.3 . l . description Field
. . . . . . . . . .
.
. . .. .
9.3.2. categories Field .
. ...... . . . . .
.
.
9.3.3. author Field . . . . . . . . . . . . . .
. . .. .
9.3.4. license Field . . . . . . . . . . . . . . . . . .
. .
.
.
.
9.3.5. runlevel Field . . . . . . . . .
. .
.
. . . .. .. . .
9.3.6. Port and Host Rules .
. . . .
.
.
....... ...
9.3.7. Action
.
. .
. .
.
. .. .. . . .
9.4. Script Language
. .. . .. .. . ..
.
.
9.4. 1 . Lua Base Language
.
. .. .. .... . .
.
9.5. NSE Scripts . . . . . . .
.
. . . .
9.6. NSE Libraries . . . . . . .
.
. . ... . . .
9.6. 1 . List of All Libraries
.
.
. .. . . .
9.6.2. Adding C Modules to Nselib . . . . . .
. .
.
.. . .
9.7. Nmap API
9.7. 1 . Information Passed to a Script
.
. .
. . ... . . .
.
9.7.2. Network 110 API
.
. . . . . . . . . . .
. .
Connect-style network 1/0
. . . . . . .. . . . . . . . . .
Raw packet network 1/0 .
.. . . . .
.
.
.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . .
. .
. . . . . . . .
. .
. .
.
. . . . . . .
. .
. . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .
. . . . . . . . . . . . . . . . . .
. .
. . .
.
. .
. . . . . .
. . . . . . . .
. . .
. . . . . . . . . .
.
. .
. . . . . . . .
.
.
. . . . .
. . . . . .
. .
. .
.
. . . . . . .
. . . . .
. . .
. . . .
. .
. . . .
. . . .
.
. . . . .
. .
.
. . . .
.
.
.
.
. . . . . .
. . . . . . . .
. . . .
..
.
. .
.
.
. .
. . . . . . .
. . . . . . .
. .
. . .
. .
. .
. .
.
. .
. .
. . . .
. . . . . . . . . .
. .
. . . . . .
. . . . . . . . . . . . . . . . .
. . . . . . .
. . . .
..
. . . . .
.
. . . . . .
. . . . . . . . . .
. . . . .
. . . . . . . . . . . . . . . .
....
. .
.
. . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . .
. .
. .
.
. .
. . . . . . . . . . . .
. . . . . . . . . . . . . . .
. .
. .
. .
. . . . . .
. . . . . . . . . . . . . . . .
.
. . . . . . .
. .
.
. . . . . . . . . . .
. . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . .
. .
. . . .
. . . . . .
. . . . . . .
.
. . . .
. . .
. . . . . .
. . . . .
.
. .
.
.
. . . . . . .
.
. .
.
.
. . . . . . .
. .
. . .
. . .
. . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
.
.
. .
. . . .
. . . .
. . . . . . .
. . . .
.
. .
. .
. .
. . . . . . . . . . . . . . . . . .
.
. . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . .
. . . . . . . . . . .
. . .
.
.
. . . . . . . . . . . . . . . . . . .
.
.
.
. . . . . .
. .
. . .
. .
.
.
.
. . .
. . .
.
.
. . . .
.
.
.
.
.
. . .
.
.
. . .
. . .
.
.
.
.
. . . . .
. .
.
.
.
. . . . . . . . . .
.
.
.
.
.
.
.
.
.
. . . . . . . . . . . . . . . .
. .
. . . .
. . .
. .
.
.
.
. . .
.
.
.
.
.
.
.
.
. . . . . .
.
. . .
.
.
. . . . . .
. .
.
. .
. . . .
.
.
.
. .
.
. . . .
. . .
. . . . . .
.
.
. . . . . . . . . . . .
. . .
.
. .
.
. . .
.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .
. . . .
.
. .
. . .
. . .
. . . .
. . . . . . . .
.
.
. .
.
. .
.
.
. . .
.
. . .
.
.
.
. . . . . . . . . . . . . . . .
. . .
. .
. . . . . . . . .
. . . . . . . . . . .
. . . . . .
. . .
. . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . .
. .
. . . . . . . .
.
.
.
. . . . . . . . . . .
. . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . .
. .
. . . . . .
.
.
.
. . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . .
.
. . . . .
. . . . .
.
. . . . . . . . . . . . . . . .
. . . .
.
. . . . . . . .
. . .
. . . . . .
. . . . . . . .
. . . . .
. .
. .
. .
. . . . . .
. .
. .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .
. . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . .
.
.
. . . . . . . . .
.
.
.
.
.
.
. .
.
.
. . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . .
.
. . . . . . .
.
.
. .
. .
. .
. . .
. . . . .
. .
. . . . . .
. .
. . .
. .
.
.
.
. .
. .
. . . . .
.
. . . . . .
. .
.
.
. .
. . . . .
. .
. . . . .
. .
. .
. . . .
. . . .
. . . . .
. . . . .
. . .
.
. .
.
. . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . .
. .
. . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . .
.
. .
.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . .
. .
. .
. .
. . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
.
. .
. . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . .
.
. . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
.
. . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
.
. . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
.
.
. . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
.
.
.
. . . . . . . .
. . .
.
.
. . . . . . . . . . . . . . .
.
.
. . . .
.
.
. .
. . .
.
.
. . .
.
. .
.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . .
. . . . . . . . .
. . .
. . . . . .
.
.
. . . . . . . .
. . .
. . . . .
.
. .
.
.
.
. . . . .
.
.
. .
.
. . . . . .
. . . .
.
. . .
.
. . . . .
.
. .
.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . .
.
. .
. .
. .
.
.
.
. .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . .
. . . . . .
. .
. .
. . . . . . .
. .
. . .
. .
..
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . .
. . . . . . .
. . . . . . . . . . . . . . . . . . . . . .
.
viii
. . . . . .
. .
.
.
. .
. . . . .
.
. . .
.
. . .
. .
.
. . . . . . . .
. .
. . . .
. .
. . . . . . . . . . . . . .
. .
. . .
.
. . .
. .
. .
. . .
..
.
.
. .
.
.
. . . . .
. . . .
. . . . . . . . . . . . . . . . . . . . .
.
.
.
.
.
. . . . . . . .
. .
. . . . . . . . . . . . . . . .
. . .
.
.
.
. . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .
1 89
1 89
1 89
1 90
1 90
191
191
191
1 92
1 93
1 94
1 95
1 96
1 97
1 98
1 99
200
20 1
202
202
202
202
203
205
205
206
207
209
210
210
21 1
21 1
21 1
21 1
21 1
21 1
212
212
212
212
213
236
236
237
239
239
24 1
24 1
242
9.7.3. Thread Mutexes . . . . . . . . . . . . . . . . . . . . . . .
.
243
9.7.4. Exception Handling . . . . . . . . . . . . . . . . . . . . .
.
244
9.7.5. The Registry . . .
. .
.
.
. ... . . . . . . .
. 245
9.8. Script Writing Tutorial . .
.
. . . . . . . . . . .
245
9.8. 1 . The Head . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 245
9.8.2. The Rule . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . 246
9.8.3. The Mechanism . .
....... ... .... . .....
247
9.9. Writing Script Documentation (NSEDoc)
. . . .
. . . . . . . . . . . . . . . . . . . . . . . 248
9.9. 1 . NSE Documentation Tags
. . . . . . . . . ..... . ..... .......
. . . . . . . . . . . . . 250
9.10. Version Detection Using NSE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 1
9.1 I. Example Script: finger.nse
. .
. ... .. .. ........... ... ........ .. .
. . . . . . . . . . . . 253
9.12. Implementation Details
.
.
. . . . . . . . . . . . ... . . . . . . .
254
9.12. 1. Initialization Phase . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . 254
9.1 2.2. Matching Scripts with Targets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
...... ..
255
255
9.12.3. Script Execution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
10. Detecting and Subverting Firewalls and Intrusion Detection Systems
. 257
JO. I . Introduction
257
10.2. Why Would Ethical Professionals (White-hats) Ever Do This?
. . . 257
10.3. Determining Firewall Rules
. . . . 258
10.3.1. Standard SYN Scan
.
.
258
Sneaky firewalls that return RST
259
10.3.2. ACK Scan
260
10.3.3. IP ID Tricks
.
: 262
10.3.4. UDP Version Scanning
. .
.. .
. .
. 264
10.4. Bypassing Firewall Rules
265
10.4.1. Exotic Scan Flags
.
.
265
10.4.2. Source Port Manipulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 266
10.4.3. 1Pv6 Attacks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 267
10.4.4. IP ID Idle Scanning . . . . .
... . . . . .. ... . .
...
. . . 269
10.4.5. Multiple Ping Probes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 269
269
10.4.6. Fragmentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
10.4.7. Proxies
. .. .... . ......
. ... .... .. . ...
. . 270
10.4.8. MAC Address Spoofing .
.
. . . . ...
.
. . . . . . . .
. . 270
27 1
10.4.9. Source Routing . . . . . . . .
. ... ...... . .
. .. . .. ... . .
10.4.10. FTP Bounce Scan . . . . . .
... .. . .
.......... . . .
. 272
10.4.1 1 . Take an Alternative Path . .
.......... . .
. . . . . . .
272
10.4.12. A Practical Real-life Example of Firewall Subversion . . . . .
. . . . . . . 272
: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 276
10.5. Subverting Intrusion Detection Systems
... ..
10.5.1. Intrusion Detection System Detection
. . . .
. .. . .
276
Reverse probes . . .
..... .
........ . . . .
. . .
276
Sudden firewall changes and suspicious packets
. . .. . .
.
... . . .
277
Naming conventions
. . .... .
.... .
. . . . .
...
277
Unexplained TIL jumps . . . . . . . .
... .. .
.. .... .
.. .
278
10.5.2. Avoiding Intrusion Detection Systems . . .
...... .
. . ....
. . 279
Slow down
. . . . .
.... .
. .. .
.. ... . .
. . . . 280
Scatter probes across networks rather than scanning hosts consecutively . . .
. . 282
Fragment packets
. .....
.....
. . . . .
..
. . . 282
.. . .
. .
..
.
. . . .
. ..
. 283
E vade specific rules
Avoid easily detected Nmap features . .
... .
.. .
. .
. .
. . . 284
.
.
.
.
.
. . . . .
.
.
.
.
.
.
.
.
.
. . .
.
.
.
. .
.
. . .
.
.
.
.
. . .
.
.
.
. . . . .
.
.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
.
.
.
.
.
. . .
. . . .
. . . . .
.
. .
. . .
.
.
. .
.
. .
. . .
. .
.
. . . .
.
.
. . . . . . . .
. .
.
.
.
.
.
.
.
. . .
.
.
. .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
. . . . . .
. . . . . . . . . . . .
.
. .
. . . . .
.
.
.
.
.
.
.
. . . .
. .
. . .
. . .
.
.
. . .
.
.
.
.
.
.
. . . . . .
.
.
.
.
.
.
.
.
.
.
. . . . . .
.
.
.
.
. . . . . . . . . . . . . . . . . . . . .
.
.
.
.
.
.
.
.
.
. . .
.
.
. . .
.
. . . . . . . .
.
.
.
.
.
. . . . . .
.
. . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
.
.
. . . .
.
.
. . . . . . . . . . . . . . . . . . . . . . . . . .
.
. . . . . . .
.
. . . . . . .
. . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . .
. . . . . . . .
. . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . .
.
. . . . . . . .
.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . .
. .
..
.
.
. . .
. .
.
. . . .
. . . . . . . .
. . .
.
.
. .
.
.
. . . .
.
. . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . .
. . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
. .
.
. . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . .
. . .
. . . . . . . . .
.
. . . . . . . . . .
.
. . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . .
.
.
.
.
.
. . . . . . . . . . . . .
. . .
.
.
.
. . . .
. . . . . .
.
. .
.
. .
. .
.
. . . .
.
.
.
.
.
.
.
.
. .
. . . .
.
.
.
.
.
.
.
.
.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
.
.
. . .
. .
. . .
. .
. . .
..
.
.
.
.
.
. . . .
.
.
.
.
.
. . .
.
. . .
. .
.
.
.
.
. .
. . . . .
.
.
..
. . . . . . . . .
.
. .
. . .
. . . . . . . . . .
. . . . . . . . . .
.
.
.
. .
.
. . .
.
.
.
.
. . .
.
.
. .
. . . .
. . . . .
. . .
.
.
.
.
. . .
.
.
. .
.
. . . . . . . . . . . . . . . . . . . . .
.
.
.
.
.
.
. . . .
. .
.
.
. . .
.
.
.
. . . . . . . .
. . . . . . . .
. . . . . . . . . . . . . .
. . .
. . .
.
.
.
. . .
.
.
.
.
.
. . . . . .
. .
.
. .
. .
.
.
.
.
.
.
.
. . .
.
.
. .
.
. .
.
.
.
.
.
.
. . .
.
. . .
. . .
. . . .
.
.
.
.
.
.
.
. .
. .
.
.
.
.
. . . . .
. . . . . .
.
. .
.
.
.
.
.
.
. .
. . . . . . . . . .
. . . . . . . . . . .
.
.
. . . . . . . . . . . .
. . . . . . . . . . . . .
.
. . . . . . . . . . . . . . . . . . . .
.
.
.
.
. . . . . . . . .
. . . . . . . . .
.
.
.
. .
. . . . . . . . . . . . .
. . . . . . .
.
.
.
.
. . .
. . . . . . . . . . . . .
.
. . . . . . . . . . . . . . . . .
. . . . . . . . . . . . .
.
..
.
. . . . .
. . . . . .
.
.
.
. . .
. . . . . . . . . . . . . . . . . . .
.
. . . . . .
.
. . . . . . . . .
.
.
.
.
. .
. . . . . . . . . .
. . . . . . .
.
.
. . . . . .
. . . . . . . . .
.
. . . . . . . . . .
. . . . . . . . . .
.
. . . . . . . . . . .
. . . . . .
.
. . . . . . . . . . .
.
.
. . . . . . . . . . . . . .
. . . . . . . . . . .
.
.
. . . . . . .
.
. .
.
.
.
.
. . . . . . . . . . . .
. . . . . . . . . .
. . . . . . . . .
. . . . . . . . . . .
.
.
. . . . . .
.
. . . . . . . . . .
.
. . . . . . . . . . . . . . .
. . . .
. . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . .
. . . . . . . . . . . . .
..
. . . . . . . . . . .
.
. . . . . . . . . . . . . . . .
. . . . . . . .
. . . . . . . . . .
.
. .
. . . . .
. . . . . . . . . . . . . . .
.
.
.
. . . . . . . . .
.
.
.
.
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . .
.
.
.
.
. . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . .
.
.
.
. . . . . . . . . .
. . . . . . . . . . . .
. . . . .
.
.
.
.
. . . . . .
. . . . . . . . .
.
.
.
. .
ix
10.5.3. Misleading Intrusion Detection Systems
.
.
. ..
.
284
Decoys
.
..
.
284
Port scan spoofing
. ..
. . . . .
. 286
Idle scan
.
.
. .
.
286
DNS proxying
. . . .
. ..
.
. .
.
286
10.5.4. DoS Attacks Against Reactive Systems
.
.
.
287
10.5.5. Exploiting Intrusion Detection Systems
.
..
..
. .
288
10.5 .6. Ignoring Intrusion Detection Systems
.
288
10.6. Detecting Packet Forgery by Firewall and Intrusion Detection Systems . . . . . . . . . . . . . . . . . . . . . . . . . . . 289
10.6. 1 . Look for TIL Consistency
.
.
.
. 289
10.6.2. Look for IP ID and Sequence Number Consistency
. . 290
.
. . 29 1
10.6.3. The Bogus TCP Checksum Trick
.
. .
10.6.4. Round Trip Times
. .
.
. . .
292
10.6.5. Close Analysis of Packet Headers and Contents
.
.
293
10.6.6. Unusual Network Uniformity
. . . .
. .
. 293
1 1 . Defenses Against Nmap
..
. . . . .
.
. . . . 295
I I . I . Introduction
.
.
.
. .
.
295
1 1 .2. Scan Proactively, Then Close or Block Ports and Fix Vulnerabilities
.. .
. .
295
1 1 .3. Block and Slow Nmap with Firewalls .
.
..
296
1 1 .4. Detect Nmap Scans
..
.
. . . . .
.
. . .
297
.
.
. 298
1 1 .5. Clever Trickery
.
1 1 .5. 1 . Hiding Services on Obscure Ports . .
.
299
1 1 .5 .2. Port Knocking
. . .
.
. . .
. .
300
1 1 .5.3. Honeypots and Honeynets .
.
.
.
.
30 I
1 1 .5.4. OS Spoofing
. .
. . .
.
.
.
302
1 1 .5.5. Tar Pits
. .
. .
. .
. . . . . 303
1 1 .5.6. Reactive Port Scan Detection . . .
.
. . .
. . .
.
304
. .
304
1 1 .5.7. Escalating Arms Race . .
.
.
. . .
12. Zenmap GUI Users' Guide
. .
.
. .
.
307
12.1. Introduction . . . . .
. . .
.
... .
307
12.1 . l . The Purpose of a Graphical Frontend for Nmap
. .
.
. 307
1 2.2. Scanning
308
1 2.2. 1 . Profiles
.
..
. .
. . .
. .
309
1 2.2.2. Scan Aggregation .
.
. .
309
12.3. Interpreting Scan Results
.
.
.
31 1
1 2.3. 1 . Scan Results Tabs . .
.
.
31 1
The Nmap Output tab .
.
. .
312
The Ports I Hosts tab
.
. . .
. .
. .. 3 1 2
The Topology tab
.. . .
. .
.
313
The Host Details tab
.
.
. .
.
314
The Scans tab . . .
. .
.
.
315
1 2.3.2. Sorting by Host .
.
.
. .
.
315
1 2.3.3. Sorting by Service . . . .
. .
.
.
. .
316
1 2.4. Saving and Loading Scan Results
. .
316
1 2.4. 1 . The Recent Scans Database
. .
. .
.
317
1 2.5. Surfing the Network Topology .
. .
.
. . . . . . 317
1 2.5. 1 . An Overview of the Topology Tab
.
.
. . . .
318
1 2.5.2. Legend
..
.
.
.
.
. .
.. 3 1 8
1 2.5.3. Controls .
.
.. . .
.
.. . .
.
319
. . . . . . .
. . . . . .
. . . . . .
. . . . . . . . . . .
. .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . .
. . . .
. . . . . .
.
. . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . .
. . . .
.
. . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . .
. .
.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . .
. . . . . . . .
. .
.
. . .
. . . . . . . . . . . . . . . . . . . .
. . . . . .
.
. . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . .
. . . .
. . . . . . . . . . . . . . . . . . . . .
. . . . . .
. . . . . . . . . . .
.
. . . . . . .
. . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . .
. . . . . .
.
. . . . . . . . . .
. . . . . . . . . .
. . . .
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . .
. . . . . . . .
.
. . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . .
. .
.
. . . .
. . . .
.
. . . .
. . . . . .
. . . . . . . . .
. . . .
.
. . . . . . . . . . . . . . . . . . . . . . .
. . . . . . .
. . . .
. . . . .
. . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
.
. . . .
.
. .
. . . . . . . . .
. . . .
. . .
.
. . . . . . .
.
. . . . . . . . . . . . . . .
. . . . . .
. .
.
. . . . . .
.
.
. . .
. . . .
. . . . . . . .
.
.
. . . . .
. . . .
. . . .
. . .
.
. . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . .
. .
. .
. . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . .
. . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .
. . . .
.
. . .
. . . . . . .
. . . . . . . . . . .
.
. .
. .
. .
. . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
.
. .
. . .
. . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . .
. . . . . . . . . . . . . . . . .
. . .
. .
. . .
. . .
. . . . . . . .
. .
. . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
.
. . . . . . . . . . . .
. . . . . . . .
. . . .
. . .
.
. . . . . . . . . . . . . .
. . . . . . . . . .
.
. . . . . . . . . . . . . .
. .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
.
. . . . . . .
. . . . . . . .
. . . . . . .
. . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . .
. .
. . . .
.
. . . . .
. . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . .
. . . . . . . . . . . . . .
. . . . . . . . . . . . .
.
. . . . . . . . . . . .
. .
. . . . . .
.
. . . . .
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . .
. . . . . . . . .
. . . .
. . . . . .
. .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
.
. .
. . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . .
. . . . . . . . . . . . . . . . . . . .
. .
. . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . .
.
. . . . . .
. . . . . . . . . . . . . .
. . . . . . . . . . .
. . . . .
. . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . .
. . . . . . . . . . . . .
.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . .
. . . . .
. . . . . .
.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . .
.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . .
. . . . . . . . . . .
. . . .
. .
. . . .
.
.
. . . . . . . . . . . . . . . . . .
. . .
. . . . . . . .
. . . .
. .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . .
. .
. . . . . . . . . . . .
. . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . .
x
. . . . .
. . . . . . . . . . . . .
.
. . . . . .
. . . . . . . . . . . . . .
. . .
. .
. . . . . .
.
. . .
. . . . .
. . . . . .
.
. .
. . . .
. . . . . . . . .
.
. . . . . . . . . . . . . . . . . . . .
. . . .
.
. . .
. . . . . . . . . . . . . . . . . .
. . . .
. .
. . . . . .
. . . . . . . .
. . . . . . . .
. . . . . . .
. . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .
. . . . .
.
. . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . .
. . . . . . . . . . . . . . . . . . . . . . . .
. . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . .
. . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . .
. . . . . . .
. . .
.
. . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .
. . . . .
. . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . .
. .
. . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
.
. . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . .
.
. .
. . .
. . .
. . . . . . .
. . .
.
. . . . .
. .
. . . .
. . . . . . .
. .
.
. . . .
. .
. . . . . . . . . . . .
Action controls
.
.. . ...
. . . .. .. .
319
Interpolation controls .
.
.
.
320
Layout controls
. ...... .... . .....
. . . . . . . . . . . . . . . . . 320
View controls
.
. .. ..
. .. .
.
.
. .
. . 321
Fisheye controls
.. .. .
. . . . . . 32 1
1 2.5.4. Keyboard Shortcuts
.
.
.
.
322
1 2.5.5. The Hosts Viewer
. . .
322
1 2.6. The Nmap Command Constructor Wizard .
.
.
.
. 322
1 2.7. The Profile Editor . . . . . . . . . . . . . . . . . . . . . . . . . . .
323
1 2.7. 1 . Creating a New Profile . . . . . . . . . . . . . .
.
.
324
12.7.2. Editing a Profile . . . . . . . . . . . . . . . . . . . . . .
. . .
.
.
. .
324
12.7.3. Deriving a New Profile from an Old One . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 325
12.8. Searching Saved Results .
......... . .. . . .
. .
. .
. . . . . 325
12.9. Comparing Results . . . . . . . . . . . . . . . . . . .
.. .
. ..... .. .
.
328
1 2.9. 1 . Graphical Comparison . . . . . . . . .
.
. ..
. .
. . . . . 329
1 2.9.2. Text Comparison
.
. .
.
.
.
.. .
329
12.1 0. Files Used by Zenmap
.
.
.
. . ... ... ..
..
.
330
12.10. 1 . The nmap Executable
330
12. 10.2. System Configuration Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 3 1
12. 10.3. Per-user Configuration Files
.
. . .
332
12. 10.4. Output Files
.
332
12.l l. Description of zenmap.conf
.
333
1 2.1 1 . 1 . Sections of zenmap.conf . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 333
12.12. Command-line Options .
.
.
335
12.12. l . Synopsis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 335
1 2. 1 2.2. Options Summary
.
. 335
1 2.1 2.3. Error Output
.
.
.
. . . 336
1 2. 1 3. History
336
13. Nmap Output Formats . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 337
1 3 . l . Introduction
.
.
.
.
. . .
.. . .
. .. . . . . .
337
1 3.2. Command-line Flags
.
.
.
338
13.2. l . Controlling Output Type . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 338
13.2.2. Controlling Verbosity of Output .
. .
. .
.
. .
339
13.2.3. Enabling Debugging Output
. .
. .
..
.
. . .
. . . 343
13 .2.4. Handling Error and Warning Messages .
. . . . . . . . . . . . . . . . . . . 344
13 .2.5. Enabling Packet Tracing
.
. . .
. . . . .
. . . 345
13.2.6. Resuming Aborted Scans . . . . . . . . . . .
.
346
13.3. Interactive Output . .
.
. ... .. . . . . .
. .
.
346
13.4. Normal Output (-oN) .
.
...... ... . . .
. .
346
. .
.. .
.
347
1 3.5. $crlpT klddl3 OuTPut (-oS) .
1 3.6. XML Output (-oX)
.......
.
. .. .... ...
348
13.6. 1 . Using XML Output
.
. . ... .
.. .
.
350
13.7. Manipulating XML Output with Perl .
. .
.. ..
. 352
13.8. Output to a Database
.. . .
. .. ....
354
13.9. Creating HTML Reports . . . . . . . . . . . . . .
. . .
355
1 3.9. 1 . Saving a Permanent HTML Report . . . . . .
.
. 355
13. 10. Grepable Output (-oG)
. .. . .... . .
. .
.
.
.
. 356
13.10.1. Grepable Output Fields . . . . . .
. . . . . .
. . . . . 357
Host field
. .
. . . ..
. .
. . . . . . . . . . . . . . . . . 357
. . . . . . . . . . . . . . . . . . .
.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . .
. . . . . . .
.
.
.
.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
.
. . . . . . . . .
.
. .
.
.
. . . . .
. . . . . . . . . .
. .
.
. . . .
.
.
.
.
. .
. .
.
.
.
.
.
. . . . . . .
.
. .
.
.
.
. .
.
.
. . . .
. . . . . . . .
.
.
.
. .
. .
.
. . . . . . . .
. . . .
. . . .
. . .
.
. .
. . .
. . . . .
. .
.
. . .
. . . .
. .
. .
. . . . . . . . . . .
. . . . . . . . . . . . .
. . . .
.
. . . . . . .
. . . . . . .
. . .
.
. . .
. . .
.
.
.
.
.
.
. . . . . . . . . . . . . . . . .
.
.
. . . . .
. .
. . .
. . .
.
.
. . .
. .
.
. . .
. . .
. . . . . . . . . . . . . . . . . . . . . . . .
. .
. . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . .
. . . . . .
. . . .
. . . . .
.
. . .
. . . . . . . . . . . . . . . . . .
. .
. . . . . . . . . .
. . . . . . .
.
.
.
...
. . . . . . . .
.
. . . . . . . . . .
.
.
. . . .
.
. . .
.
.
.
.
. . . . . . .
. . . . . . . . .
.
. .
.
.
.
.
. . .
. .
.
. .
. . . . . . . . . . . . . .
. . . . . . .
. . . . . . . .
. . . . . . . . .
. . . . . . . . . . . . .
.
. . . . . . . . . . .
. . .
. . . . . . . . . . . . . . . .
. . .
.
. . .
.
. . . . . . .
.
. . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . .
.
. . .
. . . . .
. . . . . . .
. .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .
. . . . . . .
.
. . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
.
. . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . .
.
. . . . . . . . . . . . . . . . . . .
. .
. . . . . .
. . . . .
. . . . . . . . .
.
. .
. . .
.
.
. . . . . . . . . . . . . . .
. . . . . . . .
. . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . .
. .
. . . . . . . . . . . . . . . . .
. . . .
.
. . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
.
. .
. . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . .
. . . . . .
. . . . . .
. . . . . . . .
. . . . . . .
. . . . . . . . . . . . .
. . . . .
. . . .
. . .
. . . . . . . . .
. . .
.
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . .
. . .
. . . . . . . .
.
. . .
. . . . . . . . . . . . . . .
. . . . . . . . .
.
. . .
.
.
. .
. . . . . . . . . . . . . . . . .
. .
. . . . . . . . . . . .
. . . . . . .
. . . . . . . .
. . . . . . . . . .
.
. . .
. .
. .
. . . .
.
.
.
. . . .
. .
. . . . . . . .
. .
. . .
. . .
. . . . . . . . . . . . . . . . . . . .
. .
. . . .
. . . .
. .
. .
.
. .
. . . . . . . . .
. . .
.
.
. . . . . . . .
.
.
.
. . . . .
. . .
.
. .
.
. .
.
.
. .
.
.
. .
.
. .
.
. . . . . .
.
. . .
. . . .
.
.
. . . . . . . . . .
.
. . . . . . . . .
. . .
.
.
. . .
. . . . . . .
. . . . .
. . .
.
. .
. . . . . . .
. . . .
. . . .
. .
. . .
. . . . . . .
.
. . . . .
. . .
. . . . . .
. . . . .
. . . . . . . . . . . . . . . . .
.
. . .
. . .
. . .
. . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . .
. . . .
. . . . . . . . . . . . . . . . . . . .
. .
.
. . . . . . . . . . . . . . . . . . . . . . . . . .
. .
. . . .
.
. . . . . . . . . . . . . . .
. . . . . .
.
. . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . .
. . . . . . . . . . . . . . . . . . . .
. . .
. . . . .
.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
.
. . . .
.
.
. . .
.
.
. . . . . . . . .
. . . . . . .
. . . .
. . . .
. . . . . . . .
.
.
. . . .
.
. . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . .
. . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . .
. . . . . . . . . . . . .
.
.
. . . . . . .
. . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
.
. .
.
. .
. . . . . .
. . .
. . . . . . . . . . . . . . . . .
. . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . .
. .
.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
.
. . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . .
.
. . . . . .
. . .
. .
. . .
.
.
.
. . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . .
. . . . .
.
. . . .
. . .
. . . . .
.
. . .
.
. . .
. .
.
.
. . . . .
.
. . .
.
.
.
.
xi
Ports field
357
Protocols field
.
359
Ignored State field
359
OS field
. . .
. 359
Seq Index field
360
IP ID Seq field
360
Status field
360
13. 10.2. Parsing Grepable Output on the Command Line
36 1
14. Understanding and Customizing Nmap Data Files
363
14.1. Introduction
.
363
14.2. Well Known Port List: nmap-services
.
363
14.3. Version Scanning DB: nmap-service-probes
365
14.4. SunRPC Numbers: nmap-rpc
.
.
366
14.5. Nmap OS Detection DB: nmap-os-db . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 366
14.6. MAC Address Vendor Prefixes: nmap-mac-prefixes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 368
14.7. IP Protocol Number List: nmap-protocols . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 369
14.8. Files Related to Scripting
369
14.9. Using Customized Data Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 370
1 5 . Nmap Reference Guide . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 373
1 5 . 1 . Description
373
1 5.2. Options Summary
374
1 5.3. Target Specification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 376
1 5.4. Host Discovery . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 378
15.5. Port Scanning Basics
383
1 5.6. Port Scanning Techniques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 384
1 5.7. Port Specification and Scan Order . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 389
1 5.8. Service and Version Detection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 390
1 5.9. OS Detection
.
392
1 5 . 10. Nmap Scripting Engine (NSE)
393
1 5. 1 1 . Timing and Performance
394
1 5. 1 2 . Firewall/IDS Evasion and Spoofing
399
1 5 . 1 3 . Output
403
1 5.14. Miscellaneous Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 408
15.15. Runtime Interaction
410
1 5.16. Examples
410
15.17. Bugs
41 1
1 5.18. Author
.
41 1
1 5. 1 9. Legal Notices
412
1 5.19. 1 . Nmap Copyright and Licensing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 1 2
1 5. 19.2. Creative Commons License for this Nmap Guide
413
15. 19.3. Source Code Availability and Community Contributions
413
1 5. 19.4. No Warranty
413
1 5 . 19.5. Inappropriate Usage
.
414
1 5. 19.6. Third-Party Software
414
.
414
1 5.19.7. United States Export Control Classification
A . Nmap XML Output DTD
415
A. I . Purpose . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 1 5
A.2. The Full DTD
415
Index
423
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
.
.
. . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . .
. . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
·
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
xii
List of Fig u res
I . 1Pv4 header . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xx vii
2. TCP header . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xx viii
3. UDP header . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xx viii
4. ICMP header . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xx ix
I . I. Trinity begins her assault . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
1.2. Trinity scans the Matrix . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
1 .3. Strong opinions on port scanning legality and morality . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 4
2. 1 . Executing Nmap from a Windows command shell . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
3.1. A business card explains everything . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
3.2. Netcraft finds 36 Target web servers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
5.1. ICMPv4 destination unreachable header layout . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96
5.2. SYN scan of open port 22 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97
5.3. SYN scan of closed port 1 1 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98
5.4. SYN scan of filtered port 1 39 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98
5.5. Connect scan of open port 22· (nmap -sT -p22 scanme.nmap.org) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 00
5.6. Idle scan of an open port . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 1 9
5.7. Idle scan of a closed port . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 1 9
5.8. Idle scan of a filtered port . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 1 9
5.9. Congestion window and threshold . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 3 1
5.10. Scan rate as affected by scan delay
1 33
8. 1 . ICMP echo request or reply header layout . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 77
8.2. ICMP destination unreachable header layout . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 77
10. l . BlackICE discovers an unusual intruder . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 277
10.2. An attacker masked by dozens of decoys . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 285
12.1. Typical Zenmap screen shot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 307
12.2. Zenmap's main window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 308
12.3. Target and profile selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 309
12.4. Host selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 1 5
12.5. OS icons
316
12.6. Service selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 1 6
12.7. Grouping a host's children . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 1 9
12.8. Highlighting regions of the topology . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 320
12.9. Choosing a profile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 323
12.10. The profile editor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 324
12.1 1. The search dialog . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 325
12.12. Keyword search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 326
12.13. Expressions search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 326
12.14. Comparison tool . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 328
12.15. Graphical comparison . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 329
12.16. Text mode comparison . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 330
13.1. XML output in a web browser . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35 1
· · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · ' ·
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Xlll
!.-.
List of Tables
I . Formatting style conven�ions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xx iii
3.1. First pass at listing target.com IPs
. . .. .
. . .
. . . . . . . . .. .... ..
51
3.2. Most valuable TCP probe ports, i n descending order of accessibility . . . . . . . . . . . .
68
5.1. ICMP destination unreachable (type 3) code values
.
96
5.2. How Nmap interprets responses to a SYN probe
.
98
5.3. How Nmap interprets responses to a UDP probe
. .
. . . ... . . 101
5.4. How Nmap interprets responses to a NULL, FIN, or Xmas scan probe
1 07
5.5. How Nmap interprets responses to an ACK scan probe
1 13
5.6. How Nmap interprets responses to a Window scan ACK probe
1 15
5.7. How Nmap interprets responses to a Maimon scan probe
1 17
5.8. How Nmap interprets responses to an IP protocol probe
. .
. 1 26
6. 1. Required --top-ports values for reaching various effectiveness levels
. 141
6.2. Low-level timing controls by function
. 1 42
6.3. Timing templates and their effects
. . .. . . .
1 42
7. 1 . versioninfo field formats and values
.
..
.
.
1 60
8. 1. 0 test values
1 83
8.2. DFI test values
. . . . . . .
1 84
8.3. CC test values .
. .. .
....
1 85
8.4. S test values
. . . .. .
.
. ..
. .
. .
1 86
8.5. SI test values
.. . .. ..
.
. . . . . . 1 86
8.6. A test values . . . . . .
.
. ..... . . . .
i 86
8.7. F test values
. .
. . .
.
. .
1 87
8.8. TOSI test values
.
... .
.
1 87
8.9. CD test values . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .. . .. .
1 89
8.10. DLI test values
. . . ..
.. . .
. . . . . . 1 89
8.1 1. Reference fingerprint test expression operators
.
...
.. . .
1 98
9.1 . port. version values
. . . .
. . 240
12.1 . Text di ff character codes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . : . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 330
. . . .
. .
.
.
. . . . . .
. . .
..
. . . . . . . . . .
.
. .
. . .
. . . .
.
.
. . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . .
.
. . .
.
. . . .
.
..
. . . .
. . . .
..
. . . . . . . . . . . .
.
. . . . . . . . . . . .
. . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . .
. . . . .
. .
.
.
. . .
.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . .
.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
.
. . . . . .
. . .
. . .
. . . .
. . . . . . . . . . .
. . . .
. . . . .
. . . . . .
. . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . .
. . . . .
.
. .
. . . . .
.
.. .
. . .
.
. . . . . .
. . .
.
. . . .
. .
. . .
.
. .
. . . .
. . . .
. . . .
. . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
.
.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
.
.
.
.
. . . . . . . . . . . . . . . . . . . . . .
. .
. .
.
.
.
.
. . . .
. . . . .
. . . . . . . . . .
.
.
.
.
. .
.
. . .
.
.
.
. .
. . . . . .
.
.
.
. . . . . .
. . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . .
. . . . . . .
. . . . . .
.
. .
.
. .
.
. . . . . . . . . . . .
. . . . .
.
. . .
.
. . .
. .
. . .
. . . . . . . . . . . . . . . . . . . . .
. . . .
. . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . .
. .
.
. . . . .
. . . . . . . . . . .
.
.
. .
. . .
.
.
. . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . .
. .
xv
''
.i"
,
'•
..!'..�.-
List of Examples
A typical Nmap scan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xxiii
Nmap list scan against Avatar Online IP addresses . . .
..
. . . . . . . . . . . .
.
3
1.2. Nmap results against an AO firewall
.
. . . . . . .
..... . . . . . . .
.
5
1.3. Another interesting AO machine . . . . .
.
.
. . . . . .
. .
. . 7
1.4. nmap-diff typical output . .
. .
.. . . .. . . . .. .
. . .
.
. 11
1.5. nmap-report execution . . .
. . .
. .
.
. . . . .
12
2.1. Checking for Nmap and determining its version number . . .
.
. . . . 25
2.2. Verifying the Nmap and Fyodor PGP Key Fingerprints
.
. . . . . . . . 27
2.3. Verifying PGP key fingerprints (Successful)
.
.
.
.
. . . . . . . 27
2.4. Detecting a bogus file
. . . . . . . . .
.
.
. 27
. . .
. . . 28
2.5. A typical Nmap release digest file
. . .. . .. . . . . .
2.6. Verifying Nmap hashes
. . . .. . . . .
. . .
.
.
. . . 28
2.7. Successful configuration screen
.
.
. . . . .
30
2.8. Installing Nmap from binary RPMs . . . .
.
. .. . ... . . . .
33
2.9. Building and installing Nmap from source RPMs
. .
34
2.10. Installing Nmap from a system Yum repository .
. . . . . . . . .
35
3.1. Using the host command to query common DNS record types . . . . . . . . . . . . . . . . . . . . . .
51
3.2. Zone transfer failure and success
.
.
. . .
.. . . . . . . ... .
52
3.3. Nmap reverse-DNS and traceroute scan against www.target.com
.
. .. .
53
3.4. Using whois to find owner of www.target.com IP address
.
.
53
3.5. Using whois to fi nd netblock containing 161 .225 . 1 30. 163 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
3.6. Enumerating hosts surrounding www.stanford.edu with list scan
.
. . . . .
58
3.7. Discovering hosts surrounding www.lwn.net with a ping scan .
. . .
.
59
3.8. Attempts to ping popular Internet hosts . . .
.
.
. . .
.
61
3.9. Retry host discovery using port 80 SYN probes
. .
.
.
. . 62
3.10. Attempted ACK ping against Microsoft .
.... ... . . . . .
63
3. 1 1 . Raw IP ping scan of an offtine target
.
. .
.
. . . 65
3.12. ARP ping scan of an offtine target
.
.
.
. . 65
3.13. Generating 50,000 IP addresses, then ping scanning with default options
. .
71
3.14. Repeating ping scan with extra probes
. . . . . .
.
. 71
4.1. Viewing and increasing the ephemeral port range on Linux
. . .
74
4.2. Simple scan: nmap scanme.nmap.org
. .
.
. . ..
. 80
4.3. More complex: nmap -pO- -v -A -T4 scanme.nmap.org
.
.
81
4.4. A simple IPv6 scan
88
4.5. Discovering Playboy's IP space
. .
. .
.
.
90
4.6. Pinging Playboy's web server for a latency estimate
. .
. .
.. . . . .
90
4.7. Digging through Playboy's DNS records
. .
. .
. . . . .
91
4.8. Pinging the M X servers
. .
.
.
.
..
. .
92
4.9.' TCP pinging the MX servers
.
. .. .
.
.
. . .
92
4.10. Launching the scan
. . . .
. . . . . . .
93
4.1 1 . Egrep for open ports
.
.. . .
. . . .
94
5. 1 . A SYN scan showing three port states
. .
..
.
. .
.
.
97
5.2. Using --packet-trace to understand a SYN scan
..
. . . .
99
5.3. Connect scan example . .
.
.. . . . .
. . . .
. 101
5.4. UDP scan example . . . . . . . . .
..
.. . . .
. . .
.
. . 1 02
5.5. UDP scan example . . . . . .
. . . . . .
. . .
1 02
I.
I.I.
. . . .
. . . . . . . . . . . .
.
.
. .
. . .
. . . . . . . . . . . . .
. . . . . .
.
.
. . . .
. .
.
. . . . .
. . .
. .
. .
.
. .
. .
. . . . . . . . . . .
. . . . .
. . . . . . . . . . . . .
. .
. . . . . . . . .
. .
. .
. . . . .
. .
. .
.
. . . . .
. . . . . . . . . . . . .
. . . .
. . . .
.
.
. .
. .
.
.
. . . . . . .
.
. .
.
.
. . . .
. . . . . . .
. . . . . . . .
. .
. .
.
.
.
. . . . . . . .
.
. .
. . . . .
. . . . . . .
.
. . . . . . . . . .
.
.
.
.
.
.
. .
. . . . . . . . .
. . . . . . . . . . . . . . . . .
. . . . . . . . .
. .
. . . .
. .
. .
.
.
. .
.
.
. .
.
. . . . . . . . . . .
. . . . . . .
.
. . . . . . . . . . . .
.
. . . . . . .
. . .
. . . . . . . . . . .
.
.
.
.
. .
.
.
.
.
.
.
. . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . .
. . . . . . . . . . . . . . . . .
.
. . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . .
.
.
. . .
. .
. .
.
. . . . . .
.
.
.
. . .
. . . . . .
.
.
.
. .
. .
. . . .
. .
.
.
. . .
.
.
. .
. . .
. . . . .
.
.
. . . . . . . .
. . . . . . . . . .
. . . . . . . . . . . .
. . . . . . . . . . . . .
. . . . .
.
. . . .
. . . . . . . .
.
. . . . . . . .
.
.
.
.
. . .
. . . .
.
. . . . . . . . . . . . . .
.
.
.
.
. . .
. .
.
.
. . . . . .
.
.
.
. . . . . . . .
. .
. . . . . . . . . . . . . . .
. . .
. . . .
. . . . . . . . . . . .
. . . . . .
.
. . . . . . . . . . .
. . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
. . . . . . . .
. . . . . . . . . . . . . . . . . .
. . . . . .
. .
.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . .
. . . .
. . .
. . . . . . . . .
. .
. . .
.
.
.
. . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . .
. . . . . . . . . . . . . . . . . . . . .
. . . .
.
.
. . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . .
. . . . . . . . . . . . . .
. . . . . .
. . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . .
.
. . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
.
. . .
. . . . . . . . .
. . .
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . .
.
.
. .
.
. . . . . . .
.
.
.
. . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . .
.
. . . .
. . .
. . . . .
. . .
. . .
.
.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . .
. . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . .
. . . .
.
. . .
. . .
.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . .
.
.
. . . . . . . . . . . . . . . . . . . . .
.
. . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .
. . . . . . . . . . .
. . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . .
.
.
.
. . .
.
.
.
.
.
.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . .
.
. . . . . . . . . . . . . . . . . . . . . . . .
. . .
.
.
.
. . . . .
. . . . . . . . . . . . . . . . . . .
.
.
.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .
. . . . . . . . . .
.
. . . . . . . .
.
. . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . .
.
. . . . . . . . . . .
. .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . .
. . . . . . . . . . .
. . . . . . .
. . . .
. . . . . . .
. . . . . . . .
. . . . .
. . . .
. . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . .
. .
. . .
. . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
.
. . . . .
. . . . .
. . . . .
. . . . . .
.
. .
.
.
.
. . . . . . . .
. . . .
.
.
.
. . . . . . . . . .
.
. . . . . .
.
. . . . . .
. . . .
. . .
.
. . . .
. .
. . . . . . . . . .
. . . .
. .
.
. .
. .
. . . . . . .
. . . .
. . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . .
. . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . .
. . . . .
. . . . . . .
. . . . . . . .
. . . . . . . . . . . . . . . . . .
.
.
. .
. .
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . .
. . .
. .
. .
. . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .
.
. . .
. . . .
.
.
.
.
.
. . . .
. . .
. . .
. . . . . .
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . .
. . .
. . .
. . . . . . . . . .
. . . .
.
. . . . . . . . . . . . . . . . . . . . . . .
.
.
.
.
.
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . .
.
.
. . . . . . . . . . . . . . . . . . . . .
. . .
.
.
.
.
.
.
. . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . .
.
. . . . . . . .
. . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
.
. . . . . . . . . . . . . . . .
. . . . . . . . . .
. . .
. . .
. .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
xvii
5 .6. Improving Felix's UDP scan results with version detection
. . . .. . . . .. .. ... ... .
. . 1 03
5.7. Improving Scanme's UDP scan results with version detection . . . .
.
. . . .
. .
1 04
5.8. Attempting to disambiguate UDP ports with TIL discrepancies
..
. .. .
. . .
.
1 05
5.9. Optimizing UDP Scan Time
. ..
. . ..
. . . ...
.
1 07
5 . 10. Example FIN and Xmas scans
.
. . .
.
. .
. . .
.
. . 1 09
5 . 1 1 . SYN scan of Docsrv
..
. .
. . .
.
.
. . ...
.
.
1 09
5 . 1 2 . FIN scan of Docsrv
.
...
. .
.
.
. ..
... . 1 10
5 . 1 3 . A SYN/FIN scan of Google
.. . .. . . .
. . .
.
. .. .
.
I 12
5. 14. A custom PSH scan
.
..
. .
. .
.
.
. . .. . 1 12
. .
.. . . 1 14
5 . 1 5 . A typical ACK Scan
. . . ... .
.
. . . . .
5 . 16. An ACK scan of Docsrv .
.
. .
. ... .
.
.
. .. ... 1 15
5 . 17. Window scan of docsrv.caldera.com . . . . . . . .
.
. . . . .
. .
. . .
.
1 16
5 . 1 8 . A failed Maimon scan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 1 7
5. 19. An idle scan against the RIAA .
. .
. .. .. .
. .
. .
.
. . .. . .. .
. 121
5.20. IP protocol scan of a router and a typical Linux 2.4 box
.
. ...
.. .
. .
. 1 27
5.2 1 . Attempting an FTP bounce scan
. . . .
......
..
.
. . . . . . . 1 28
5.22. Successful FTP bounce scan
. . .
. ..... .
. .
.
. 1 28
6. 1 . Bandwidth usage over local 100 Mbps ethernet network . . .
.
.
.
.
. 1 39
6.2. Estimating scan time .
.
.
. . . . . .
.
.
. . .
1 40
7. 1 . Simple usage of version detection . . .
.
. . . . .
.
..
.
. 1 46
7.2. Version detection against www.microsoft.com
. .
.
.
.
.
1 47
7.3. Complex version detection . . . . . . . . .
.
.
. ..
. . . . .
.
... . .
1 48
7.4. NULL probe cheat example output .
.
.
. .. ..
. .
. .
.
. . 151
7.5. Enumerating RPC services with rpcinfo
. . . .
.
. .
.
1 56
7.6. Nmap direct RPC scan . . .
.
.
.
.
. ... .
. . .
. . 1 57
7.7. Version scanning through SSL
. . . .
. .
.
..
1 58
8 . 1 . OS detection with verbosity (-0 -v)
.
. . .
.
.
.
1 73
8.2. Using version scan to detect the OS . . . .
. .
. . . .
. .....
1 75
8.3. A typical subject fingerprint .
.
.
. .
.... .
.
1 92
8.4. A cleaned-up subject fingerprint
.
. . . .
. .
. .
.. .
. .
1 93
8.5. A typical reference fingerprint .
. .
.
.
1 95
8.6. Some typical fingerprint descriptions and corresponding classifications .
.
.
1 97
8. 7. The MatchPoints structure . . .
.
. .
.
. . .
. . . . 1 99
8.8. Scan results against a consumer WAP
. ..
.
.
. .
203
9 . 1 . Typical NSE output . . .
. .
. .
.
.
.
206
9.2. Connect-style 110
242
9.3. Mutex manipulation
. .
.
.
. . .
.
. .
.
244
9.4. Exception handling example .
.
.
.
.
. .
. .
244
9.5. An NSEDoc comment for a function
.
.
.
.
.
. 249
9.6. An NSEDoc comment for a module
.
.
.
. . .
.
249
9.7. An NSEDoc comment for a script
. . .
.
.
. .
. ... ... .
..
250
9.8. A typical version detection cript (Skype version 2 detection) . . .
. .. .. . ..... .... .. .. . ..
252
10.l. Detection of closed and fil tered TCP ports
.
.
.
259
\0.2 . ACK scan against Scanme .
.
.
.
. 260
I0.3. Contrasting SYN and ACK scans against Para
. . .
.
.
. . 26 1
1 0.4. UDP scan against firewalled host
.
.
. .
.
. 264
.
. . .
. . . .
. . 265
10.5. UDP version scan against firewalled host
10.6. FIN scan against stateless firewall
. .
.. . . . . .
.
. .
. . . . 266
I 0.7. Bypassing Windows IPsec filter using source port 88 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 267
. . . .
. .
. .
. .
. .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .
. . .
. . .
. . . . .
. . . . . . . . . .
. . . . . . . . . . .
. . . . . . .
. . . .
. . . . . . . . . . .
. .
. . .
. . . .
. .
. .
. . . . . . . . . . . . . . . . . . . . . . .
. . . . . .
.
. . . . . . . . . . . . . . . . . . . . .
. . . . . .
. . . .
. .
.
. .
.
. . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . .
. .
. .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . .
. . . . .
. . . . . . . . .
. .
. .
. .
. . .
. . . .
. . .
.
. . . . . . . . .
.
. .
. .
.
. . .
.
. . . . .
. . .
.
.
.
.
. . . . . . . . .
.
. .
.
. . . . . .
. . .
. . . . . . .
. .
. . . . . . . . . . . . . .
. . . . . . . . . . . . . . .
. . .
. . . . . . .
. . . . . .
.
.
. .
. . . . . . . . . . . . . . .
.
. .
.
. .
.
. .
. .
.
. . . . . . .
. . . .
. . . . . . . .
. . . . . .
. . . . . .
. . .
.
. . . . . . . . . . . . .
. . . .
. . .
.
.
. .
. . .
. . . . . .
. . . . . . .
. . . . . .
. . . . . .
. . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . .
.
. . . . . . . . . . . . . . . . . . . . . .
.
. .
. . . .
. . . . . .
. . .
.
. . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . .
.
. . . . . . . .
. . . . . . . .
. . . . .
.
. . . .
.
. .
.
. . . .
.
. . .
.
.
.
. . .
. . . . . . . . . . . . . . . .
.
. . . . . . . . . .
.
. . . .
. . . .
. . .
. . . .
. . .
.
. .
.
.
. . . .
. .
. .
. . . .
. .
. . . .
. . .
. . .
. . .
. . . .
.
. . .
.
.
. . .
. .
.
. .
.
. . .
. . .
. .
. . . . . .
.
. . . . . . . . . .
. . . .
.
. .
. . . . . .
. .
. . .
. .
. .
. .
. . . .
. . . . .
.
.
. . . . . . . . . .
. . . . . . . . .
. . .
.
. . . . . . . . . .
. . . . .
. .
. . .
. .
. . .
. . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . .
. . . . . . .
. .
. .
. . . .
. . . . . . . . .
. . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . .
.
.
. . . . .
. . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . .
. . . . . . . . . .
. .
. . . . . . . . .
. . . . . . . . . . . . . . .
. .
. . . .
. . . . . .
. . .
. . . . . . . . . . . .
.
. . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . .
. . .
. . . .
. . . . . .
. . .
. . . .
. . . . . . .
.
. . . . . .
. . . . . . . . . . . . . .
. . . . . . .
. .
.
. .
.
.
. . . . .
. . . . . . . . .
. .
. .
.
.
. . . . .
. . . . . . . . . . . .
. . . . . . . . .
.
. . .
. . . . . . .
. . . . . . . . .
. . . . . . . .
. . . . . . . . . . .
. . . .
. . . .
. . . .
. .
. .
. . .
. . . . . . . . . . . . . . . . .
.
. . . . . . .
. . . . . .
. . .
. . . . .
. . .
. .
. . . . . . . . . . . . . . . . .
. . . . . . .
. . . .
. . . .
. . . . . . .
. . . . . . . . . . . . . .
. . . .
. . . . . . .
.
.
. . . . . .
. . . . . . . .
. . . . . . . . . .
. . .
. . .
. . . . . . .
. . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . .
. .
.
. . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . .
. . .
. . .
.
.
. . . .
. . . . . . . . . .
. . . . . .
. . . . . . . .
.
. .
. . . . . . .
. . . . . . . . . . .
. .
. . .
. . . . . . .
. . . . . . . . . . . . . . . . . . .
.
. . . . . . . . . . . . . . .
.
. . . . . . . .
.
. . . . . . . . . . . . .
. . .
.
. . .
. . . . . . . .
. . . .
. . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . .
. . .
.
.
. . .
. . . . . . . . . . . . . . . . . . . . . . . .
.
.
.
. .
. .
. . . .
. . . . . . .
.
. . . . .
. . . . . . . . . . . . . . . . . . . . . . . . .
. . . .
.
.
. . . . . . . . . . . . . . . . . . . . . . . . . . .
.
. . .
.
.
. . .
.
. . . . . . . . . . . . . . . . . .
.
. .
.
.
. . . .
. . . .
. . . . . . . . . . . . . . . . .
. . . .
. .
. .
. . . . . . . . .
. . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
.
. . . . .
. . . . . . . . . . . . . . . . . . .
. . . . . . .
. . . . . . . . . . . .
. .
. . . . . . . . . . . .
. . . . . .
. . . . . . . . . . . . . . . . . . .
. . .
.
. . . . .
. . . . . . . .
.
. .
. . . . . .
. . . . . .
. .
. . . . . . . . . . . . . . . . . . . . .
. . . . .
. . . . .
. . .
. . . . . . . . . . . . . .
. . .
. .
. .
. .
. . . . .
. . . . . . .
. . . . . . . . . . . . . . .
. .
. . .
. . . . . . . . . . . . . . . . .
. . . . . .
. .
. . . . . .
. . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . .
. . .
.
. . . . . . . . . . . .
. . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . .
. . . .
.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . .
. . . . . . .
.
.
.
. . . .
. . . . . . . . . . . . . . . . .
. . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . .
. . . . . . . . . .
. . . . . .
. . . . . . . . . . . . . .
. . . . . . . . . .
. . . . . . . . .
xviii
.
. . . . . . . .
.
. .
.
. . . . . .
. . . . .
. . . .
. . . . . .
. . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . .
. . . . . . . . .
. . .
. . . . . . . .
. . .
. .
.
.
. . . . . .
. .
.
.
.
. .
. .
. . .
. .
. .
. . . . . . . . . . . . . . . . . . .
. . .
. .
. . . .
. . . . . .
.
. . . . . . . . .
. . . . . . . . . . . . .
. . . . . . . .
.
.
.
. .
. .
...
. . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . .
. . . . .
.
. . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . .
. .
. . . . . .
. . . . . . .
. . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . .
. .
.
. . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . .
. . . . .
.
. . . .
. . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . .
. . . .
. . . .
...
. . . . . .
. . . . . . . .
. . . . . .
. . . . . . . . . . . . . . . . . . . . . . . .
. .
.
. . . . .
.
. .
. . . . . . .
. . . . . .
. .
.
10.8. Comparing IPv4 and IPv6 scans . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 268
10.9. Exploiting a printer with the FfP bounce scan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 272
10. 10. Some interesting hosts and networks at Megacorp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 273
10. 1 1 . Ping scan against the target network . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 273
10.12. Packet trace against a single IP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 273
10.13. Testing an idle scan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 274
10.14. Testing source routing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 275
10.15. Success at last . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 275
10.16. Host names can be deceiving . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 278
10. 17. Noting TTL gaps with traceroute . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 279
10.18. Using the IP record route option . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 279
10.19. Slow scan to bypass the default Snort 2.2.0 Flow-portscan fixed time scan detection
method
28 1
10.20. Default Snort rules referencing Nmap . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 283
10.21. Using DNS Proxies (Recursive DNS) for a Stealth List Scan of SecurityFocus . . . . . . . . . . . . . . . . . . . . . . . 287
10.22. Detection of closed and filtered TCP ports . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 290
10.23. Testing IP ID sequence number consistency . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 1
10.24. Finding a firewall with bad TCP checksums . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 1
I I . I . An all-TCP-port version scan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 299
1 1 .2. Deceiving Nmap with IP Personality . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 303
1 3 . l . Scanrand output against a local network . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 337
13.2. Grepping for verbosity conditionals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34 1
13.3. Interactive output without verbosity enabled . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 342
13.4. Interactive output with verbosity enabled . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 343
13.5. Some representative debugging lines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 344
13.6. Using --packet-trace to detail a ping scan of Scanme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 345
13.7. A typical example of normal output . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 347
1 3.8. A typical example of $crlpt KiDDi3 OutPut . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 348
13.9. An example of Nmap XML output . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 349
13. 10. Nmap XML port elements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 350
1 3 . l l . Nmap::Parser sample code . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 353
13. 12. Nmap:: Scanner sample code . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 354
13.13. A typical example of grepable output . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 357
13.14. Grepable output for IP protocol scan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 359
13.15. Ping scan grepable output . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36 1
13. 16. List scan grepable output . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 361
13. 17. Parsing grepable output on the command line . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 361
14. 1 . Excerpt from nmap-services . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 364
14.2. Excerpt from nmap-service-probes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 365
14.3. Excerpt from nmap-rpc . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 366
14.4. Excerpt from nmap-os-db . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 367
14.5. Excerpt from nmap-mac-prefixes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 368
14.6. Excerpt from nmap-protocols . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 369
15.1. A representative Nmap scan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 374
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
xix
Preface
1 . I ntroduction
On September I , 1997, I released a security scanner named Nmap in the fifty-first issue of Phrack magazine.
My goal was to consolidate the fragmented field of special-purpose port scanners into one powerful and
flexible free tool, providing a consistent interface and efficient implementation of all practical port scanning
techniques. Nmap then consisted of three files (barely 2,000 lines of code) and supported only the Linux
operating system. It was written for my own purposes, and released in the hope that others would find it
useful.
From these humble beginnings, and through the power of Open Source development, Nmap grew into the
world's most popular network security scanner 1 , with millions of users worldwide. Over the years, Nmap
has continued to add advanced functionality such as remote OS detection, version/service detection, IP ID
idle scanning, the Nmap Scripting Engine, and fast multi-probe ping scanning. It now supports all major
Unix, Windows, and Mac OS platforms. Both console and graphical versions are available. Publications
including Linux Journal, Info World, LinuxQuestions. Org, and the Codetalker Digest have recognized Nmap
as "security tool of the year". It was even featured in several movies2, including The Matrix Reloaded, The
Bourne Ultimatum, and Die Hard 4.
Nmap ("Network Mapper") is a free and open source utility for network exploration and security auditing.
Many systems and network administrators also fi nd it useful for tasks such as network inventory, managing
service upgrade schedules, and monitoring host or service uptime. Nmap uses raw IP packets in novel ways
to determine what hosts are available on the network, what services (application name and version) those
hosts are offering, what operating systems (and OS versions) they are running, what type of packet
filters/firewalls are in use, and dozens of other characteristics. It was designed to rapidly scan large networks,
but works fine against single hosts.
While Nmap is extremely powerful, 1t 1s also complex. More than 100 command-line options add
expressiveness for networking gurus, but can confound novices. Some of its options have never even been
documented. This book documents all Nmap features and, more i mportantly, teaches the most effective ways
of using them. It has taken nearly four years to write, with constant updating as Nmap has evolved.
This book is dedicated to the Nmap community of users and developers. Your passion, ideas, patches, feature
requests, flame wars, bug reports, and midnight rants have shaped Nmap into what it is today.
-Gordon "Fyodor" Lyon < f yodor @ i n s ecure . org>
2. Intended Aud ience and Organ ization
This book documents the free Nmap Security Scanner, from port scanning basics for novices to the types of
packet crafting used by advanced hackers. It should benefit Nmap users (or potential users) of all experience
levels.
1 Ba�ed on download frequency, number of Google hits, and Freshrneat.Net software "popularity" ranking.
2
http://nmap.org/movies.html
1 . Introduction
xxi
Starting with the basics, this book gives an overview of Nmap by example in Chapter I . Then Chapter 2
covers obtaining, compiling and installing Nmap. Chapters 3 through 5 cover features in the order you might
use them when conducting a penetration test. First comes host discovery ("ping scanning"), which determines
the avai lable hosts on a network. Next, port scanning is covered in depth. In Chapter 5, all the Nmap scanning
techniques are detailed, with advice and examples. Scanning a large network can take a long time, so Chapter
6 is full of performance optimization advice. Chapter 7 details service and application version detection, in
which Nmap queries ports to determine exactly what is running rather than simply guessing based on the
port number. Chapter 8 covers one of Nmap's most loved features: remote OS detection. Chapter 9 details
one of Nmap's newest features: the Nmap Scripting Engine. NSE allows users and developers to easily extend
Nmap with new features by writing simple scripts to be efficiently executed against target machines. My
favorite chapter is number 10: Detecting and Subverting Firewalls and lnt.rusion Detection Systems. For
balance, that is followed by a chapter on defending against Nmap scans. Chapter 1 2 then fully documents
the Zenmap multi-platform Nmap GUI and results viewer. The next two chapters cover output formats and
data files. The fi nal and longest chapter is the Nmap Reference Guide, a quick resource for looking up specific
Nmap options.
Scattered throughout the book are detailed instructions for performing common tasks such as scanning a
network for a certain single open TCP port or detecting wireless access points by scanning from the wired
side. First each problem is described, then an effective solution is provided. A final discussion section
describes the solution in more depth and may provide alternative solutions and insights into similar problems.
3. Conventions
Nmap output is used throughout this book to demonstrate principles and features. The output is often edited
to cut out lines which are irrelevant to the point being made. The dates/times and version numbers printed
by Nmap are generally removed as well, since some readers find them distracting. Sensitive information
such as hostnames, IP addresses, and MAC addresses may be changed or removed. Other information may
be cut or li nes wrapped so that they fit on a printed page. Similar editing is done for the output of other
applications. Example I gives a glimpse at Nmap's capabilities while also demonstrating output formatting.
xx ii
3. Conventions
Example 1. A typical Nmap scan
# nmap -A -T4 s canme . nmap . or g
Start ing Nmap ( http : / / nmap . or g
I ntere s t i ng por t s on s canme . nmap . or g ( 6 4 . 1 3 . 1 3 4 . 5 2 ) :
Not shown : 9 9 4 f i ltered port s
PORT
STATE SERV I CE VERS I ON
2 2 / t cp open
ssh
OpenSSH 4 . 3 ( protocol 2 . 0 )
2 5 / t cp c l o sed smtp
5 3 / tcp open
doma i n I SC B I ND 9 . 3 . 4
7 0 /tcp c losed gopher
8 0 /tcp open
http
Apa che httpd 2 . 2 . 2 ( ( Fedor a ) }
I _ HTML t i t l e : Go ahead and S canMe !
1 1 3 / t cp c l osed auth
Device type : general purpose
Runn ing : Linux 2 . 6 . X
OS deta i l s : L i nux 2 . 6 . 2 0 - 1 ( Fedora Core 5 )
TRACEROUTE ( u s i ng port 8 0 / t cp }
HOP RTT
ADDRESS
[ Cut f i r s t seven hops for brev i t y )
1 0 . 5 9 so-4 - 2 - 0 . mpr3 . pa o l . us . above . ne t ( 6 4 . 1 2 5 . 2 8 . 1 4 2 )
8
9
1 1 . 0 0 metroO . sv . svco l o . com ( 2 0 8 . 1 8 5 . 1 6 8 . 1 7 3 )
1 0 9 . 9 3 scanme . nmap . or g ( 6 4 . 1 3 . 1 3 4 . 5 2 )
Nmap done : 1 I P addre s s ( 1 host up } s canned i n 1 7 . 0 0 s e conds
Special formatting is provided for certain tokens, such as filenames and application commands. Table
demonstrates the most common formatting conventions.
Table 1. Formatting style conventions
Token type
Example
literal string
I get much more excited by ports in the open state than those reported as
c l o s e d or f i l t ered.
Command-line options
One of the coolest, yet least understood Nmap options is --pack e t - t r a c e .
Filenames
Follow
the
-iL
option
with
the
input
filename
such
as
C : \ n e t \dhcp- l e a s e s . t x t or / home / h 4 x / ho s t s -t o-pwn . l s t .
Emphasis
Using Nmap from your work or school computer to attack banks and military
targets is a bad idea.
Application commands
Trinity scanned the Matrix with the command nmap v -sS -0 10.2.2.2.
Replaceable variables
-
Let