Third-party open source software and libraries used by Nmap
The Nmap Security Scanner uses 3rd party open source software and libraries for various functions. All are open source with BSD-style licenses that allow royalty-free redistribution within other software (including commercial/proprietary software). They may have other redistribution requirements though, such as including an acknowledgment or warranty disclaimer in product documentation. We’ve put them all together in this document mostly for the benefit of our customers who license Nmap technology for redistribution within their commercial software. Some of this 3rd party software is only needed on certain platforms (such as Windows or Mac) or to enable optional functionality. These details are discussed in the sections below for each dependency. If 3rd party dependency software is included, than its license must be followed. This is the case whether the licensed product calls the library functions directly, incorporates Nmap source code that calls the functions, or bundles an Nmap executable which links to or includes source code of the given library or dependency.This Some or all of these may be necessary or desirable to implement in Licensed Products utilizing Nmap.
This document only covers 3rd party open source software and libraries used by Nmap proper. It does not cover our related tools such as Zenmap, Ncat, Nping, or Ndiff because those are generally not included in the licenses we sell. We do track the components of those for our own license compliance purposes in a separate XML document.
This document covers Nmap 7.12. Licensees or potential licensees who want this information for a different Nmap release should contact sales@nmap.com.
LibPcap Raw Packet Capture Library
Description: LibPcap is used by Nmap on UNIX for raw packet reading during host discovery, port scanning, and OS detection. It is available from http://www.tcpdump.org. It is bundled with the Nmap Security Scanner in the libpcap subdirectory. LibPcap is also used on Windows as part of the WinPcap library (which has its own section in this document).
Software URL: http://www.tcpdump.org/
Version used: 1.73
License Summary: Modified BSD license (3-clause)
License Text Location: BSD-modified.txt
WinPcap Windows Packet Library
Description: WinPcap is used by Nmap on Windows for raw packet reading during host discovery, port scanning, and OS detection. It is available from http://www.winpcap.org. It is a derivative of LibPcap, so that license (see LibPcap section) must be followed as well. It is only needed and used on Windows.
Software URL: http://www.winpcap.org/
Version used: 4.1.3
License Summary: BSD-style license which also includes the BSD-style licenses of contributed software
License Text Location: winpcap-license.txt
Libdnet Raw Networking Library
Description: Libdnet is bundled with Nmap and is required on all platforms for low-level tasks such as sending raw Ethernet frames. We have made many changes and so it is important that our version (distributed with Nmap) be used.
Software URL: http://libdnet.sourceforge.net/
Version used: 1.12
Copyright: Dug Song
License Summary: Modified BSD license (3-clause)
License Text Location: Libdnet-license.txt
LibPCRE Perl Compatible Regular Expressions Library
Description: LibPCRE is used for regular expression matching as part of Nmap version detection. It is bundled with Nmap in the libpcre subdirectory.
Software URL: http://www.pcre.org/
Version used: 7.6
License Summary: Modified BSD license (3-clause)
License Text Location: PCRE-license.txt
Lua Programming Language
Description: The LUA programming language may optionally be embedded into Nmap as part of the Nmap Scripting Engine functionality. LUA will not be included if the –without-liblua configuration option is given. If Lua is included, Nmap also includes some LUA libraries which also fall under the free LUA license (they have their own section in this document).
Software URL: https://www.lua.org/
Version used: 5.2.4
License Summary: MIT license
License Text Location: Lua-license.txt
Lua libraries
Description: If Lua is included in an Nmap build, four 3rd party Lua libraries are included as well. They are SLAXML (an XML parsing library), LuaFileSystem (for filesystem operations), LPeg (Lua Parsing Expression Grammars), and Base3264 for base 32 and 64 encoding and decoding. They are all under the Lua license (which is the MIT license) although the copyright statement referred to by the license is different because they were created by different authors. All four of those libraries are included in this section
SLAXML URL: https://github.com/Phrogz/SLAXML
SLAXML Version: 0.7
SLAXML Copyright Statement: Copyright (c) 2013 Gavin Kistner
LuaFileSystem URL: https://keplerproject.github.io/luafilesystem/
LuaFileSystem Version: 1.2
LuaFileSystem Copyright Statement: Copyright © 2003 Kepler Project.
LPeg URL: http://www.inf.puc-rio.br/~roberto/lpeg/lpeg.html
LPeg Version: 0.12
LPeg Copyright Statement: Copyright © 2007-2015 Lua.org, PUC-Rio.
Base3264 URL: https://nmap.org/nsedoc/lib/base32.html https://nmap.org/nsedoc/lib/base64.html
Base3264 Version: Unversioned
Base3264 Copyright Statement: Copyright (c) 2016 Patrick Joseph Donnelly (batrick@batbytes.com)
License Summary: All packages use the Lua license (MIT license) with the copyright statements listed above
License Text Location: Lua-license.txt
OpenSSL SSL encryption library
Description: OpenSSL can optionally be used by Nmap Service Detection to communicate with SSL-enabled protocols such as https, pop3-s, imaps, etc. It is not included in the Nmap source tree, but you can choose to link to it when compiling Nmap (and we do so for the binaries we distribute).
Software URL: https://www.openssl.org/
Version used: 1.0.2g in the binaries we distribute. If you build Nmap yourself and include OpenSSL, you supply your own preferred version.
License Summary: 4-clause BSD style
License Text Location: OpenSSL-license.txt
LIBLINEAR Linear Classification Library
Description: LIBLINEAR is used as part of Nmap’s machine-learning based IPv6 OS detection system. It’s included in the “liblinear” directory in the Nmap source tree.
Software URL: https://www.csie.ntu.edu.tw/~cjlin/liblinear/
Version used: 1.7
License Summary: Modified BSD license (3-clause)
License Text Location: LIBLINEAR-license.txt
Ike-scan Fingerprinting Data
Description: This is a small data file used by an obscure Nmap NSE script named ike-version. The contents were provided to us under a BSD license by the author of a tool named Ike-scan.
Software URL: http://www.nta-monitor.com/wiki/index.php/Ike-scan_program_notes
Version used: Unversioned
License Summary: Simplified (2-clause) BSD license
License Text Location: BSD-simplified
3