summaryrefslogtreecommitdiffstats
path: root/CHANGELOG
diff options
context:
space:
mode:
Diffstat (limited to 'CHANGELOG')
-rw-r--r--CHANGELOG16842
1 files changed, 16842 insertions, 0 deletions
diff --git a/CHANGELOG b/CHANGELOG
new file mode 100644
index 0000000..ee9ab92
--- /dev/null
+++ b/CHANGELOG
@@ -0,0 +1,16842 @@
+#Nmap Changelog ($Id$); -*-text-*-
+
+o [NSE] Fixed DNS TXT record parsing which caused asn-query to fail in Nmap
+ 7.80 and later. [David Fifield, Mike Pattrick]
+
+Nmap 7.94 [2023-05-19]
+
+o Zenmap and Ndiff now use Python 3! Thanks to the many contributors who made
+ this effort possible:
+ + [GH#2088][GH#1176][Zenmap] Updated Zenmap to Python 3 and PyGObject. [Jakub Kulík]
+
+ + [GH#1807][GH#1176][Ndiff] Updated Ndiff to Python 3. [Brian Quigley]
+
+ + Additional Python 3 update fixes by Sam James, Daniel Miller. Special thanks
+ to those who opened Python 3-related issues and pull requests: Eli
+ Schwartz, Romain Leonard, Varunram Ganesh, Pavel Zhukov, Carey Balboa,
+ Hasan Aliyev, and others.
+
+o [Windows] Upgraded Npcap (our Windows raw packet capturing and
+ transmission driver) from version 1.71 to the latest version 1.75. It
+ includes dozens of performance improvements, bug fixes and feature
+ enhancements described at https://npcap.com/changelog.
+
+o Nmap now prints vendor names based on MAC address for MA-S (24-bit), MA-M
+ (28-bit), and MA-L (36-bit) registrations instead of the fixed 3-byte MAC
+ prefix used previously for lookups.
+
+o Added partial silent-install support to the Nmap Windows
+ installer. It previously didn't offer silent mode (/S) because the
+ free/demo version of Npcap Windoes packet capturing driver that it
+ needs and ships with doesn't include a silent installer. Now with
+ the /S option, Nmap checks whether Npcap is already installed
+ (either the free version or OEM) and will silently install itself if
+ so. This is similar to how the Wireshark installer works and is
+ particularly helpful for organizations that want to fully automate
+ their Nmap (and Npcap) deployments. See
+ https://nmap.org/nmap-silent-install for more details.
+
+o Lots of profile-guided memory and processing improvements for Nmap, including
+ OS fingerprint matching, probe matching and retransmission lookups for large
+ hostgroups, and service name lookups. Overhauled Nmap's string interning and
+ several other startup-related procedures to speed up start times, especially
+ for scans using OS detection. [Daniel Miller]
+
+o Integrated many of the most-submitted IPv4 OS fingerprints for recent
+ versions of Windows, iOS, macOS, Linux, and BSD. Added 22 fingerprints,
+ bringing the new total to 5700!
+
+o [NSE][GH#548] Added the tftp-version script which requests a
+ nonexistent file from a TFTP server and matches the error message
+ to a database of known software. [Mak Kolybabi]
+
+o [Ncat][GH#1223] Ncat can now accept "connections" from multiple UDP hosts in
+ listen mode with the --keep-open option. This also enables --broker and
+ --chat via UDP. [Daniel Miller]
+
+o [GH#2575] Upgraded OpenSSL binaries (for the Windows builds and for
+ RPM's) to version 3.0.8. This resolves some CVE's (CVE-2022-3602;
+ CVE-2022-3786) which don't impact Nmap proper since it doesn't do
+ certificate validation, but could possibly impact Ncat when the
+ --ssl-verify option is used.
+
+o Upgrade included libraries: zlib 1.2.13, Lua 5.4.4, libpcap 1.10.4
+
+o [GH#2532] Removed the bogus OpenSSL message from the Windows Nmap
+ executable which looked like "NSOCK ERROR ssl_init_helper(): OpenSSL
+ legacy provider failed to load." We actually already have the legacy
+ provider built-in to our OpenSSL builds, and that's why loading the
+ external one fails.
+
+o [GH#2541] UDP port scan (-sU) and version scan (-sV) now both use the same
+ data source, nmap-service-probes, for data payloads. Previously, the
+ nmap-payloads file was used for port scan. Port scan responses will be used
+ to kick-start the version matching process. [Daniel Miller]
+
+o Nmap's service scan (-sV) can now probe the UDP service behind a DTLS tunnel,
+ the same as it already does for TCP services with SSL/TLS encryption. The
+ DTLSSessionReq probe has had its rarity lowered to 2 to allow it to be sent
+ sooner in the scan. [Daniel Miller]
+
+o [Ncat] Ncat in listen mode with --udp --ssl will use DTLS to secure incoming
+ connections. [Daniel Miller]
+
+o [GH#1023] Handle Internationalized Domain Names (IDN) like Яндекс.рф on
+ platforms where getaddrinfo supports the AI_IDN flag. [Daniel Miller]
+
+o [Ncat] Addressed an issue from the Debian bug tracker
+ (https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=969314) regarding data
+ received immediately after a SOCKS CONNECT response. Ncat can now be
+ correctly used in the ProxyCommand option of OpenSSH.
+
+o Improved DNS domain name parsing to avoid recursion and enforce name length
+ limits, avoiding a theoretical stack overflow issue with certain crafted DNS
+ server responses, reported by Philippe Antoine.
+
+o [GH#2338][NSE] Fix mpint packing in ssh2 library, which was causing OpenSSH
+ errors like "ssh_dispatch_run_fatal: bignum is negative" [Sami Loone]
+
+o [GH#2507] Updates to the Japanese manpage translation by Taichi Kotake.
+
+o [Ncat][GH#1026][GH#2426] Dramatically speed up Ncat transfers on
+ Windows by avoiding a 125ms wait for every read from
+ STDIN. [scriptjunkie]
+
+o [GH#1192][Windows] Periodically reset the system idle timer to keep the
+ system from going to sleep while scans are in process. This only affects port
+ scans and OS detection scans, since NSE and version scan do not rely on
+ timing data to adjust speed.
+
+o Updated the Nmap Public Source License (NPSL) to Version 0.95. This
+ just clarifies that the derivative works definition and all other
+ license clauses only apply to parties who choose to accept the
+ license in return for the special rights granted (such as Nmap
+ redistribution rights). If a party can do everything they need to
+ using copyright provisions outside of this license such as fair use,
+ we support that and aren't trying to claim any control over their
+ work. Versions of Nmap released under previous versions of the NPSL
+ may also be used under the NPSL 0.95 terms.
+
+o Avoid storing many small strings from IPv4 OS detection results in the global
+ string_pool. These were effectively leaked after a host is done being
+ scanned, since string_pool allocations are not freed until Nmap quits.
+
+Nmap 7.93 [2022-09-01]
+
+o This release commemorates Nmap's 25th anniversary! It all started with this
+ September 1, 1997 Phrack article by Fyodor: https://nmap.org/p51-11.html.
+
+o [Windows] Upgraded Npcap (our Windows raw packet capturing and
+ transmission driver) from version 1.50 to the latest version 1.71. It
+ includes dozens of performance improvements, bug fixes and feature
+ enhancements described at https://npcap.com/changelog.
+
+o Ensure Nmap builds with OpenSSL 3.0 using no deprecated API functions.
+ Binaries for this release include OpenSSL 3.0.5.
+
+o Upgrade included libraries: libssh2 1.10.0, zlib 1.2.12, Lua 5.3.6, libpcap 1.10.1
+
+o [GH#2416] Fix a bug that prevented Nmap from discovering interfaces on Linux
+ when no IPv4 addresses were configured. [Daniel Miller, nnposter]
+
+o [NSE][GH#2463] NSE "exception handling" with nmap.new_try() will no longer
+ result in a stack traceback in debug output nor a "ERROR: script execution
+ failed" message in script output, since the intended behavior has always been
+ to end the script immediately without output. [Daniel Miller]
+
+o [GH#2494] Update the Nmap output DTD to match actual output since the
+ `<hosthint>` element was added in Nmap 7.90.
+
+o [NSE][GH#2496] Fix newtargets support: since Nmap 7.92, scripts could not add
+ targets in script pre-scanning phase. [Daniel Miller]
+
+o [GH#2468] Scripts dhcp-discover and broadcast-dhcp-discover now support
+ setting a client identifier. [nnposter]
+
+o [GH#2331][GH#2471] Script oracle-tns-version was not reporting the version
+ correctly for Oracle 19c or newer [linholmes]
+
+o [GH#2296][GH#2342] Script redis-info was crashing or producing inaccurate
+ information about client connections and/or cluster nodes. [nnposter]
+
+o [GH#2379] Nmap and Nping were unable to obtain system routes on FreeBSD
+ [benpratt, nnposter]
+
+o [GH#2464] Script ipidseq was broken due to calling an unreachable library
+ function. [nnposter]
+
+o [GH#2420][GH#2436] Support for EC crypto was not properly enabled if Nmap
+ was compiled with OpenSSL in a custom location. [nnposter]
+
+o [NSE] Improvements to event handling and pcap socket garbage collection,
+ fixing potential hangs and crashes. [Daniel Miller]
+
+o We ceased creating the Nmap win32 binary zipfile. It was useful back when
+ you could just unzip it and run Nmap from there, but that hasn't worked well
+ for many years. The win32 self-installer handles Npcap installation and many
+ other dependencies and complexities. Anyone who needs the binaries for some
+ reason can still install Nmap on any system and retrieve them from there.
+ For now we're keeping the Win32 zipfile in the Nmap OEM Edition
+ (https://nmap.org/oem) for companies building Nmap into their own
+ products. But even in that case we believe that running the Nmap OEM
+ self-installer in silent mode is a better approach.
+
+o [GH#2388] Fix TDS7 password encoding for mssql.lua, which had been assuming
+ ASCII input even though other parts of the library had been passing it Unicode.
+
+o [GH#2402] Replace deprecated CPEs for IIS with their updated identifier,
+ cpe:/a:microsoft:internet_information_services [Esa Jokinen]
+
+o [NSE][GH#2393] Fix script-terminating error when unknown BSON data types are
+ encountered. Added parsers for most standard data types. [Daniel Miller]
+
+o [Ncat] Fix hostname/certificate comparison and matching to handle ASN.1
+ strings without null terminators, a similar bug to OpenSSL's CVE-2021-3712.
+
+o [Ncat][GH#2365] Added support for SOCKS5 proxies that return bind addresses
+ as hostnames, instead of IPv4/IPv6 addresses. [pomu0325]
+
+Nmap 7.92 [2021-08-07]
+
+o [Windows] Upgraded Npcap (our Windows raw packet capturing and
+ transmission driver) from version 1.00 to the latest version 1.50. You can
+ read about the dozens of performance improvements, bug fixes and feature
+ enhancements at https://npcap.com/changelog.
+
+o [Windows] Thanks to the Npcap 1.50 upgrade, Nmap now works on the Windows
+ ARM architecture so you can run it on lightweight and power-efficient
+ tablets like the Microsoft Surface Pro X and Samsung Galaxy Book Go. More
+ ARM devices are on the way along with the upcoming Windows 11 release. See
+ the Npcap on ARM announcement at
+ https://seclists.org/nmap-announce/2021/2.
+
+o [Windows] Updated our Windows builds to Visual Studio 2019, Windows 10
+ SDK, and the UCRT. This prevents Nmap from working on Windows Vista and
+ earlier, but they can still use older versions of Nmap on their ancient
+ operating system.
+
+o New Nmap option --unique will prevent Nmap from scanning the same IP
+ address twice, which can happen when different names resolve to the same
+ address. [Daniel Miller]
+
+o [NSE][GH#1691] TLS 1.3 now supported by most scripts for which it is
+ relevant, such as ssl-enum-ciphers. Some functions like ssl tunnel
+ connections and certificate parsing will require OpenSSL 1.1.1 or later to
+ fully support TLS 1.3. [Daniel Miller]
+
+o [NSE] Added 3 NSE scripts, from 4 authors, bringing the total up to 604!
+ They are all listed at https://nmap.org/nsedoc/, and the summaries are
+ below:
+ + [GH#2201] nbns-interfaces queries NetBIOS name service (NBNS) to gather
+ IP addresses of the target's network interfaces [Andrey Zhukov]
+
+ + [GH#711] openflow-info gathers preferred and supported protocol versions
+ from OpenFlow devices [Jay Smith, Mak Kolybabi]
+
+ + port-states prints a list of ports that were found in each state,
+ including states that were summarized as "Not shown: X closed ports"
+ [Daniel Miller]
+
+o Several changes to UDP payloads to improve accuracy:
+ + [GH#2269] Fix an issue with -sU where payload data went out-of-scope
+ before it was used, causing corrupted payloads to be sent. [Mariusz
+ Ziulek]
+
+ + Nmap's retransmission limits were preventing some UDP payloads from
+ being tried with -sU and -PU. Now, Nmap sends each payload for a
+ particular port at the same time without delay. [Daniel Miller]
+
+ + New UDP payloads:
+ - [GH#1279] TS3INIT1 for UDP 3389 [colcrunch]
+ - [GH#1895] DTLS for UDP 3391 (RD Gateway) [Arnim Rupp]
+
+o [NSE][GH#2208][GH#2203] SMB2 dialect handling has been
+ redesigned. Visible changes include:
+ * Notable improvement in speed of script smb-protocols and others
+ * Some SMB scripts are no longer using a hardcoded dialect, improving
+ target interoperability
+ * Dialect names are aligned with Microsoft, such as 3.0.2, instead of
+ 3.02 [nnposter]
+
+o [GH#2350] Upgraded OpenSSL to version 1.1.1k. This addresses some
+ CVE's which don't affect Nmap in a material way. Details:
+ https://github.com/nmap/nmap/issues/2350
+
+o Removed support for the ancient WinPcap library since we already include
+ our own Npcap library (https://npcap.com) supporting the same API. WinPcap
+ was abandoned years ago and it's official download page says that "WE
+ RECOMMEND USING Npcap INSTEAD" for security, stability, compatibility, and
+ support reasons.
+
+o [GH#2257] Fix an issue in addrset matching that was causing all targets to
+ be excluded if the --excludefile listed a CIDR range that contains an
+ earlier, smaller CIDR range. [Daniel Miller]
+
+o [GH#1922] Fix an issue that would cause Nmap to hang during scans
+ with a host timeout, such as -T5. Any active probes when a target timed out
+ were counting towards the global congestion window.
+
+o [GH#2153] Do not count host discovery phase time against the host timeout,
+ since Nmap may wait a long time between sending probes to a target while it
+ processes other targets instead.
+
+o [GH#2153] Fix issues with matching ICMP Time Exceeded messages that led to
+ ignored responses and long scan times when scanning distant targets.
+
+o Upgrade the Windows NSIS installer to use the latest NSIS 3 (version
+ 3.07) instead of the previous NSIS 2 generation.
+
+o Setting --host-timeout=0 will disable the host timeout, which is set by
+ -T5 to 15 minutes. Earlier versions of Nmap require the user to specify a
+ very long timeout instead.
+
+o Improvements to Nmap's XML output:
+ + If a host times out, the XML <host> element will have the attribute
+ timedout="true" and the host's timing info (srtt etc.) will still be
+ printed.
+
+ + The "extrareasons" element now includes a list of port numbers for each
+ "ignored" state. The "All X ports" and "Not shown:" lines in normal
+ output have been changed slightly to provide more detail. [Daniel
+ Miller]
+
+o [NSE][GH#2237] Prevent the ssl-* NSE scripts from probing ports that were
+ excluded from version scan, usually 9100-9107, since JetDirect will print
+ anything sent to these ports. [Daniel Miller]
+
+o [GH#2206] Nmap no longer produces cryptic message "Failed to convert
+ source address to presentation format" when unable to find useable route
+ to the target. [nnposter]
+
+o [Ncat][GH#2202] Use safety-checked versions of FD_* macros to abort early
+ if number of connections exceeds FD_SETSIZE. [Pavel Zhukov]
+
+o [Ncat] Connections proxied via SOCKS4/SOCKS5 were intermittently dropping
+ server data sent right after the connection got established, such as port
+ banners. [Sami Pönkänen]
+
+o [Ncat][GH#2149] Fixed a bug in proxy connect mode which would close the
+ connection as soon as it was opened in Nmap 7.90 and 7.91.
+
+o [NSE][GH#2175] Fixed NSE so it will not consolidate all port script output
+ for targets which share an IP (e.g. HTTP vhosts) under one target. [Daniel
+ Miller]
+
+o [Zenmap][GH#2157] Fixed an issue where a failure to execute Nmap would
+ result in a Zenmap crash with "TypeError: coercing to Unicode" exception.
+
+o Nmap no longer considers an ICMP Host Unreachable as confirmation that a
+ target is down, in accordance with RFC 1122 which says these errors may be
+ transient. Instead, the probe will be destroyed and other probes used to
+ determine aliveness. [Daniel Miller]
+
+o [Ncat][GH#2154] Ncat no longer crashes when used with Unix domain sockets.
+
+o [Ncat][GH#2167][GH#2168] Ncat is now again generating certificates with
+ the duration of one year. Due to a bug, recent versions of Ncat were using
+ only one minute. [Tobias Girstmair]
+
+o [NSE][GH#2281] URL/percent-encoding is now using uppercase hex digits to
+ align with RFC 3986, section 2.1, and to improve compatibility with some
+ real-world web servers. [nnposter]
+
+o [NSE][GH#2174] Script hostmap-crtsh got improved in several ways. The most
+ visible are that certificate SANs are properly split apart and that
+ identities that are syntactically incorrect to be hostnames are now
+ ignored. [Michel Le Bihan, nnposter]
+
+o [NSE] Loading of a Nikto database failed if the file was referenced
+ relative to the Nmap directory [nnposter]
+
+o We're no longer building and distributing 32-bit Linux binary RPMs since
+ the vast majority of users are on x64 systems now. Nmap still works on
+ 32-bit systems and so users can build it themselves from the source
+ RPMs or tarball, or obtain it from their distribution's repository.
+
+o [GH#2199] Updated Nmap's NPSL license to rewrite a poorly-worded clause
+ about "proprietary software companies". The new license version 0.93 is
+ still available from https://nmap.org/npsl/. As described on that page, we
+ are also still offering Nmap 7.90, 7.91, and 7.92 under the previous Nmap
+ 7.80 license. Finally, we still offer the Nmap OEM program for companies
+ who want a non-copyleft license allowing them to redistribute Nmap with
+ their products at https://nmap.org/oem/.
+
+o [NSE] Script smb2-vuln-uptime no longer reports false positives when the
+ target does not provide its boot time. [nnposter]
+
+o [NSE][GH#2197] Client packets composed by the DHCP library will now
+ contain option 51 (IP address lease time) only when requested. [nnposter]
+
+o [NSE][GH#2192] XML decoding in library citrixxml no longer crashes when
+ encountering a character reference with codepoint greater than 255. (These
+ references are now left unmodified.) [nnposter]
+
+o [NSE] Script mysql-audit now defaults to the bundled mysql-cis.audit for
+ the audit rule base. [nnposter]
+
+o [NSE][GH#1473] It is now possible to control whether the SNMP library uses
+ v1 (default) or v2c by setting script argument snmp.version. [nnposter]
+
+Nmap 7.91 [2020-10-09]
+
+o [NSE][GH#2136][GH#2137] Fix several places where Lua's os.time was being used
+ to represent dates prior to January 1, 1970, which fails on Windows. Notably,
+ NSE refused to run in UTC+X timezones with the error "time result cannot be
+ represented in this installation" [Clément Notin, nnposter, Daniel Miller]
+
+o [GH#2148][Zenmap] Fix a crash in the profile editor due to a missing import.
+
+o [GH#2139][Nsock][Windows] Demote the IOCP Nsock engine because of some known
+ issues that will take longer to resolve. The previous default "poll" engine
+ will be used instead.
+
+o [GH#2140][Nsock][Windows] Fix a crash in service scan due to a previously-unknown
+ error being returned from the IOCP Nsock engine. [Daniel Miller]
+
+o [NSE][GH#2128] MySQL library was not properly parsing server responses,
+ resulting in script crashes. [nnposter]
+
+o [GH#2135] Silence the irrelevant warning, "Your ports include 'T:' but you
+ haven't specified any TCP scan type" when running nmap -sUV
+
+Nmap 7.90 [2020-10-03]
+
+o [Windows] Upgraded Npcap, our Windows packet capturing (and sending)
+ library to the milestone 1.00 release! It's the culmination of 7 years of
+ development with 170 public pre-releases. This includes dozens of
+ performance improvements, bug fixes, and feature enhancements described
+ at https://npcap.com/changelog.
+
+o Integrated over 800 service/version detection fingerprints submitted since
+ August 2017. The signature count went up 1.8% to 11,878, including 17 new
+ softmatches. We now detect 1237 protocols from airmedia-audio, banner-ivu,
+ and control-m to insteon-plm, pi-hole-stats, and ums-webviewer. A
+ significant number of submissions remain to be integrated in the next
+ release.
+
+o Integrated over 330 of the most-frequently-submitted IPv4 OS fingerprints
+ since August 2017. Added 26 fingerprints, bringing the new total to 5,678.
+ Additions include iOS 12 & 13, macOS Catalina & Mojave, Linux 5.4, FreeBSD
+ 13, and more.
+
+o Integrated all 67 of your IPv6 OS fingerprint submissions from August 2017 to
+ September 2020. Added new groups for FreeBSD 12, Linux 5.4, and Windows 10,
+ and consolidated several weak groups to improve classification accuracy.
+
+o [NSE] Added 3 NSE scripts, from 2 authors, bringing the total up to 601!
+ They are all listed at https://nmap.org/nsedoc/, and the summaries are
+ below:
+
+ + dicom-brute attempts to brute force the called Application Entity Title
+ of DICOM servers. [Paulino Calderon]
+
+ + dicom-ping discovers DICOM servers and determines if any Application
+ Entity Title is allowed to connect. [Paulino Calderon]
+
+ + uptime-agent-info collects system information from an Idera Uptime
+ Infrastructure Monitor agent. [Daniel Miller]
+
+o [GH#1834] Addressed over 250 code quality issues identified by LGTM.com,
+ improving our code quality score from "C" to "A+"
+
+o Released Npcap OEM Edition. For more than 20 years, the Nmap Project has
+ been funded by selling licenses for companies to distribute Nmap with
+ their products, along with commercial support. Hundreds of commercial
+ products now use Nmap for network discovery tasks like port scanning,
+ host discovery, OS detection, service/version detection, and of course
+ the Nmap Scripting Engine (NSE). Until now they have just used standard
+ Nmap, but this new OEM Edition is customized for use within other Windows
+ software. Nmap OEM contains the OEM version of our Npcap driver, which
+ allows for silent installation. It also removes the Zenmap GUI, which
+ cuts the installer size by more than half. And it reports itself as Nmap
+ OEM so customers know it's a properly licensed Nmap. See
+ https://nmap.org/oem for more details. We will be reaching out to all
+ existing licensees with Nmap OEM access credentials, but any licensees
+ who wants it quicker should see https://nmap.org/oem.
+
+o Upgraded the Nmap license form a sort of hacked-up version of GPLv2 to a
+ cleaner and better organized version (still based on GPLv2) now called the
+ Nmap Public Source License to avoid confusion. See https://nmap.org/npsl/
+ for more details and annotated license text. This NPSL project was started
+ in 2006 (community discussion here:
+ https://seclists.org/nmap-dev/2006/q4/126) and then it lost momentum for 7
+ years until it was restarted in 2013
+ (https://seclists.org/nmap-dev/2013/q1/399) and then we got distracted by
+ development again. We still have some ideas for improving the NPSL, but
+ it's already much better than the current license, so we're applying NPSL
+ Version 0.92 to the code now and can make improvements later if
+ needed. This does not change the license of previous Nmap releases.
+
+o Removed nmap-update. This program was intended to provide a way to update
+ data files and NSE scripts, but the infrastructure was never fielded. It
+ depended on Subversion version control and would have required maintaining
+ separate versions of NSE scripts for compatibility.
+
+o Removed the silent-install command-line option (/S) from the Windows
+ installer. It causes several problems and there were no objections when we
+ proposed removing it in 2016 (https://seclists.org/nmap-dev/2016/q4/168).
+ It will remain in Nmap OEM since its main use was for customers who
+ redistribute Nmap with other software. If anyone else has a strong need
+ for an Nmap silent installer, please contact sales@nmap.com and we'll see
+ what we can do.
+
+o [GH#1860] 23 new UDP payloads and dozens more default ports for existing
+ payloads developed for Rapid7's InsightVM scan engine. These speed up and
+ ensure detection of open UDP services. [Paul Miseiko, Rapid7]
+
+o [GH#2051] Restrict Nmap's search path for scripts and data files.
+ NMAPDATADIR, defined on Unix and Linux as ${prefix}/share/nmap, will not be
+ searched on Windows, where it was previously defined as C:\Nmap .
+ Additionally, the --script option will not interpret names as directory names
+ unless they are followed by a '/'. [Daniel Miller]
+
+o [GH#1764] Fix an assertion failure when unsolicited ARP response is received:
+ nmap: Target.cc:503: void Target::stopTimeOutClock(const timeval*): Assertion `htn.toclock_running == true' failed.
+
+o [NSE] New outlib library consolidates functions related to NSE output,
+ both string formatting conventions and structured output. [Daniel Miller]
+
+o [NSE] New dicom library implements the DICOM protocol used for
+ storing and transfering medical images. [Paulino Calderon]
+
+o [GH#92] Fix a regression in ARP host discovery left over from the move from
+ massping to ultra_scan in Nmap 4.22SOC8 (2007) that sometimes resulted in
+ missing ARP responses from targets near the end of a scan. Accuracy and speed
+ are both improved. [Daniel Miller]
+
+o [GH#2126] Fix the "iocp" Nsock engine for Windows to be able to correctly
+ handle PCAP read events. This engine is now the default for Windows, which
+ should greatly improve performance over the previous default, the "poll"
+ engine. [Daniel Miller]
+
+o [GH#2050] Reduced CPU usage of OS scan by 50% by avoiding string copy
+ operations and removing undocumented fingerprint syntax unused in nmap-os-db
+ ('&' and '+' in expressions). [Daniel Miller]
+
+o [GH#1859] Allow multiple UDP payloads to be specified for a port in
+ nmap-payloads. If the first payload does not get a response, the remaining
+ payloads are tried round-robin. [Paul Miseiko, Rapid7]
+
+o [GH#1616] New option --discovery-ignore-rst tells Nmap to ignore TCP RST
+ responses when determining if a target is up. Useful when firewalls are
+ spoofing RST packets. [Tom Sellers, Rapid7]
+
+o [Ncat][GH#2087][GH#1927][GH#1928][GH#1974] It is now possible to override
+ the value of TLS SNI via --ssl-servername [Hank Leininger, nnposter]
+
+o [GH#2104] Fixed parsing of TCP options which would hang (infinite loop) if an
+ option had an explicit length of 0. Affects Nmap 7.80 only.
+ [Daniel Miller, Imed Mnif]
+
+o Added a UDP payload for STUN (Session Traversal Utilities for NAT).
+ [David Fifield]
+
+o [NSE] Fixed an off-by-one bug in the stun.lua library that prevented
+ parsing a server response. [David Fifield]
+
+o [NSE][GH#1460] Script ssh2-enum-algos would fail if the server initiated
+ the key exchange before completing the protocol version exchange
+ [Scott Ellis, nnposter]
+
+o [NSE][GH#2105] Fetching of SSH2 keys might fail because of key exchange
+ confusion [nnposter]
+
+o [NSE][GH#2098] Performance of script afp-ls has been dramatically improved
+ [nnposter]
+
+o [NSE][GH#2091] Parsing of AFP FPGetFileDirParms and
+ FPEnumerateExt2FPEnumerateExt2 responses was not working correctly [nnposter]
+
+o [NSE][GH#2089] Eliminated false positives in script http-shellshock caused by
+ simple reflection of HTTP request data [Anders Kaseorg]
+
+o [NSE][GH#1473] SNMP scripts are now enabled on non-standard ports where SNMP
+ has been detected [usd-markus, nnposter]
+
+o [NSE][GH#2084] MQTT library was using incorrect position when parsing
+ received responses [tatulea]
+
+o [NSE][GH#2086] IPMI library was using incorrect position when parsing
+ received responses [Star Salzman]
+
+o [NSE][GH#2086] Scripts ipmi-brute and deluge-rpc-brute were not capturing
+ successfully brute-forced credentials [Star Salzman]
+
+o Allow resuming IPv6 scans with --resume. The address parsing was assuming IPv4
+ addresses, leading to "Unable to parse ip" error. In a related fix, MAC addresses
+ will not be parsed as IP addresses when resuming from XML. [Daniel Miller]
+
+o [GH#1622][GH#2068] Fix reverse-DNS handling of PTR records that are not lowercase.
+ Nmap was failing to identify reverse-DNS names when the DNS server delivered
+ them like ".IN-ADDR.ARPA". [Lucas Nussbaum, Richard Schütz, Daniel Miller]
+
+o [NSE][GH#1999][GH#2005] IKE library was not properly populating the protocol
+ number in aggressive mode requests. [luc-x41]
+
+o [GH#1963] Added service fingerprinting for MySQL 8.x, Microsoft SQL
+ Server 2019, MariaDB, and Crate.io CrateDB. Updated PostreSQL coverage and
+ added specific detection of recent versions running in Docker. [Tom Sellers]
+
+o New XML output "hosthint" tag emitted during host discovery when a target is
+ found to be up. This gives earlier notification than waiting for the
+ hostgroup to finish all scan phases. [Paul Miseiko]
+
+o [GH#917] New UDP payloads for GPRS Tunneling Protocol (GTP) on ports 2123,
+ 2152, and 3386. [Guillaume Teissier]
+
+o [NSE][GH#1825] SSH scripts now run on several ports likely to be SSH based on
+ empirical data from Shodan.io, as well as the netconf-ssh service.
+ [Lim Shi Min Jonathan, Daniel Miller]
+
+o [Zenmap][GH#1777] Stop creating a debugging output file 'tmp.txt' on the
+ desktop in macOS. [Roland Linder]
+
+o [Nping] Address build failure under libc++ due to "using namespace std;" in
+ several headers, resulting in conflicting definitions of bind(). Reported by
+ StormBytePP and Rosen Penev. [Daniel Miller]
+
+o [Ncat][GH#1868] Fix a fatal error when connecting to a Linux VM socket with
+ verbose output enabled. [Stefano Garzarella]
+
+o [Ncat][GH#2060] Proxy credentials can be alternatively passed onto Ncat by
+ setting environment variable NCAT_PROXY_AUTH, which reduces the risk of the
+ credentials getting captured in process logs. [nnposter]
+
+o [NSE][GH#1723] Fixed a crash on Windows when processing a GZIP-encoded HTTP
+ body. [Daniel Miller]
+
+o Upgrade libpcap to 1.9.1, which addresses several CVE vulnerabilities.
+
+o Upgrade libssh2 to 1.9.0, fixing compilation with OpenSSL 1.1.0 API.
+
+o [GH#1717][GH#1718] Processing of IP address CIDR blocks was not working
+ correctly on ppc64, ppc64le, and s390x architectures. [rfrohl, nnposter]
+
+o [Windows] Add support for the new loopback behavior in Npcap 0.9983 and
+ later. This enables Nmap to scan localhost on Windows without needing the
+ Npcap Loopback Adapter to be installed, which was a source of problems for
+ some users. [Daniel Miller]
+
+o [NSE] MS SQL library has improved version resolution, from service pack level
+ to individual cumulative updates [nnposter]
+
+o [NSE][GH#2077] With increased verbosity, script http-default-accounts now
+ reports matched target fingerprints even if no default credentials were found
+ [nnposter]
+
+o [NSE][GH#2063] IPP request object conversion to string was not working
+ correctly [nnposter]
+
+o [NSE][GH#2063] IPP response parser was not correctly processing
+ end-of-attributes-tag [nnposter]
+
+o [NSE] Script cups-info was failing due to erroneous double-decoding
+ of the IPP printer status [nnposter]
+
+o [NSE][GH#2010] Oracle TNS parser was incorrectly unmarshalling DALC byte
+ arrays [nnposter]
+
+o [NSE] The password hashing function for Oracle 10g was not working correctly
+ for non-alphanumeric characters [nnposter]
+
+o [NSE] Virtual host probing list, vhosts-full.lst, was missing numerous
+ entries present in vhosts-default.lst [nnposter]
+
+o [NSE][GH#1931][GH#1932] Script http-grep was not correctly calculating Luhn
+ checksum [Colleen Li, nnposter]
+
+o [NSE][GH#1838] Scripts dhcp-discover and broadcast-dhcp-discover now support
+ new argument "mac" to force a specific client MAC address [nnposter]
+
+o [NSE] Code improvements in RPC Dump, benefitting NFS-related scripts
+ [nnposter]
+
+o [NSE] RPC code was using incorrect port range, which was causing some calls,
+ such as NFS mountd, to fail intermittently [nnposter]
+
+o [NSE][GH#1876] XML output from script ssl-cert now includes RSA key modulus
+ and exponent [nnposter]
+
+o [NSE][GH#1837] Nmap no longer crashes when SMB scripts, such as smb-ls, call
+ smb.find_files [nnposter]
+
+o [NSE][GH#1802] The MongoDB library was causing errors when assembling protocol
+ payloads. [nnposter]
+
+o [NSE][GH#1781][GH#1796] The RTSP library was not correctly generating request
+ strings. [nnposter]
+
+o [NSE][GH#1706] VNC handshakes were failing with insert position out of bounds
+ error. [nnposter]
+
+o [NSE][GH#1720] Function marshall_dom_sid2 in library msrpctypes was not
+ correctly populating ID Authority. [nnposter]
+
+o [NSE][GH#1720] Unmarshalling functions in library msrpctypes were attempting
+ arithmetic on a nil argument. [Ivan Ivanov, nnposter]
+
+o [NSE][GH#1720] Functions lsa_lookupnames2 and lsa_lookupsids2 in library
+ msrpc were incorrectly referencing function strjoin when called with debug
+ level 2 or higher. [Ivan Ivanov]
+
+o [NSE][GH#1755][GH#2096] Added HTTP default account fingerprints for Tomcat
+ Host Manager and Dell iDRAC9. [Clément Notin]
+
+o [NSE][GH#1476][GH#1707] A MS-SMB spec non-compliance in Samba was causing
+ protocol negotiation to fail with data string too short error.
+ [Clément Notin, nnposter]
+
+o [NSE][GH#1480][GH#1713][GH#1714] A bug in SMB library was causing scripts to
+ fail with bad format argument error. [Ivan Ivanov]
+
+o [NSE][GH#1665] The HTTP library no longer crashes when code requests digest
+ authentication but the server does not provide the necessary authentication
+ header. [nnposter]
+
+o [NSE] Fixed a bug in http-wordpress-users.nse that could cause
+ extraneous output to be captured as part of a username. [Duarte Silva]
+
+Nmap 7.80 [2019-08-10]
+
+o [Windows] The Npcap Windows packet capturing library (https://npcap.com/)
+ is faster and more stable than ever. Nmap 7.80 updates the bundled Npcap
+ from version 0.99-r2 to 0.9982, including all of these changes from the
+ last 15 Npcap releases: https://npcap.com/changelog
+
+o [NSE] Added 11 NSE scripts, from 8 authors, bringing the total up to 598!
+ They are all listed at https://nmap.org/nsedoc/, and the summaries are
+ below:
+
+ + [GH#1232] broadcast-hid-discoveryd discovers HID devices on a LAN by
+ sending a discoveryd network broadcast probe. [Brendan Coles]
+
+ + [GH#1236] broadcast-jenkins-discover discovers Jenkins servers on a LAN
+ by sending a discovery broadcast probe. [Brendan Coles]
+
+ + [GH#1016][GH#1082] http-hp-ilo-info extracts information from HP
+ Integrated Lights-Out (iLO) servers. [rajeevrmenon97]
+
+ + [GH#1243] http-sap-netweaver-leak detects SAP Netweaver Portal with the
+ Knowledge Management Unit enabled with anonymous access. [ArphanetX]
+
+ + https-redirect detects HTTP servers that redirect to the same port, but
+ with HTTPS. Some nginx servers do this, which made ssl-* scripts not run
+ properly. [Daniel Miller]
+
+ + [GH#1504] lu-enum enumerates Logical Units (LU) of TN3270E servers.
+ [Soldier of Fortran]
+
+ + [GH#1633] rdp-ntlm-info extracts Windows domain information from RDP
+ services. [Tom Sellers]
+
+ + smb-vuln-webexec checks whether the WebExService is installed and allows
+ code execution. [Ron Bowes]
+
+ + smb-webexec-exploit exploits the WebExService to run arbitrary commands
+ with SYSTEM privileges. [Ron Bowes]
+
+ + [GH#1457] ubiquiti-discovery extracts information from the Ubiquiti
+ Discovery service and assists version detection. [Tom Sellers]
+
+ + [GH#1126] vulners queries the Vulners CVE database API using CPE
+ information from Nmap's service and application version detection.
+ [GMedian, Daniel Miller]
+
+o [GH#1371] The macOS installer is now built for x86_64 architecture, not i386.
+
+o [GH#1396] Fixed the Windows installer, which would replace the entire PATH
+ system variable with the path for Nmap if it exceeded 1024 bytes. This was
+ fixed by using the "large strings" build of NSIS to build the new installer.
+ [Daniel Miller]
+
+o Replaced the addrset matching code that is used by --exclude and
+ --excludefile with a much faster implementation using a radix tree (trie).
+ https://seclists.org/nmap-dev/2018/q4/13
+
+o [GH#1291][GH#34][GH#1339] Use pcap_create instead of pcap_live_open in
+ Nmap, and set immediate mode on the pcap descriptor. This solves packet
+ loss problems on Linux and may improve performance on other platforms.
+ [Daniel Cater, Mike Pontillo, Daniel Miller]
+
+o [NSE][GH#1330] Fixed an infinite loop in tls-alpn when the server forces a
+ particular protocol. [Daniel Miller]
+
+o [NSE] Collected utility functions for string processing into a new
+ library, stringaux.lua. [Daniel Miller]
+
+o [NSE] New rand.lua library uses the best sources of random available on
+ the system to generate random strings. [Daniel Miller]
+
+o [NSE] New library, oops.lua, makes reporting errors easy, with plenty of
+ debugging detail when needed, and no clutter when not. [Daniel Miller]
+
+o [NSE] Collected utility functions for manipulating and searching tables
+ into a new library, tableaux.lua. [Daniel Miller]
+
+o [NSE] New knx.lua library holds common functions and definitions for
+ communicating with KNX/Konnex devices. [Daniel Miller]
+
+o [NSE][GH#1571] The HTTP library now provides transparent support for gzip-
+ encoded response body. (See https://github.com/nmap/nmap/pull/1571 for an
+ overview.) [nnposter]
+
+o [Nsock][Ncat][GH#1075] Add AF_VSOCK (Linux VM sockets) functionality to
+ Nsock and Ncat. VM sockets are used for communication between virtual
+ machines and the hypervisor. [Stefan Hajnoczi]
+
+o [Security][Windows] Address CVE-2019-1552 in OpenSSL by building with the
+ prefix "C:\Program Files (x86)\Nmap\OpenSSL". This should prevent
+ unauthorized users from modifying OpenSSL defaults by writing
+ configuration to this directory.
+
+o [Security][GH#1147][GH#1108] Reduced LibPCRE resource limits so that
+ version detection can't use as much of the stack. Previously Nmap could
+ crash when run on low-memory systems against target services which are
+ intentionally or accidentally difficult to match. Someone assigned
+ CVE-2018-15173 for this issue. [Daniel Miller]
+
+o [GH#1361] Deprecate and disable the -PR (ARP ping) host discovery
+ option. ARP ping is already used whenever possible, and the -PR option
+ would not force it to be used in any other case. [Daniel Miller]
+
+o [NSE] bin.lua is officially deprecated. Lua 5.3, added 2 years ago in Nmap
+ 7.25BETA2, has native support for binary data packing via string.pack and
+ string.unpack. All existing scripts and libraries have been updated.
+ [Daniel Miller]
+
+o [NSE] Completely removed the bit.lua NSE library. All of its functions are
+ replaced by native Lua bitwise operations, except for `arshift`
+ (arithmetic shift) which has been moved to the bits.lua library. [Daniel
+ Miller]
+
+o [NSE][GH#1571] The HTTP library is now enforcing a size limit on the
+ received response body. The default limit can be adjusted with a script
+ argument, which applies to all scripts, and can be overridden case-by-case
+ with an HTTP request option. (See https://github.com/nmap/nmap/pull/1571
+ for details.) [nnposter]
+
+o [NSE][GH#1648] CR characters are no longer treated as illegal in script
+ XML output. [nnposter]
+
+o [GH#1659] Allow resuming nmap scan with lengthy command line [Clément
+ Notin]
+
+o [NSE][GH#1614] Add TLS support to rdp-enum-encryption. Enables determining
+ protocol version against servers that require TLS and lays ground work for
+ some NLA/CredSSP information collection. [Tom Sellers]
+
+o [NSE][GH#1611] Address two protocol parsing issues in rdp-enum-encryption
+ and the RDP nse library which broke scanning of Windows XP. Clarify
+ protocol types [Tom Sellers]
+
+o [NSE][GH#1608] Script http-fileupload-exploiter failed to locate its
+ resource file unless executed from a specific working
+ directory. [nnposter]
+
+o [NSE][GH#1467] Avoid clobbering the "severity" and "ignore_404" values of
+ fingerprints in http-enum. None of the standard fingerprints uses these
+ fields. [Kostas Milonas]
+
+o [NSE][GH#1077] Fix a crash caused by a double-free of libssh2 session data
+ when running SSH NSE scripts against non-SSH services. [Seth Randall]
+
+o [NSE][GH#1565] Updates the execution rule of the mongodb scripts to be
+ able to run on alternate ports. [Paulino Calderon]
+
+o [Ncat][GH#1560] Allow Ncat to connect to servers on port 0, provided that
+ the socket implementation allows this. [Daniel Miller]
+
+o Update the included libpcap to 1.9.0. [Daniel Miller]
+
+o [NSE][GH#1544] Fix a logic error that resulted in scripts not honoring the
+ smbdomain script-arg when the target provided a domain in the NTLM
+ challenge. [Daniel Miller]
+
+o [Nsock][GH#1543] Avoid a crash (Protocol not supported) caused by trying
+ to reconnect with SSLv2 when an error occurs during DTLS connect. [Daniel
+ Miller]
+
+o [NSE][GH#1534] Removed OSVDB references from scripts and replaced them
+ with BID references where possible. [nnposter]
+
+o [NSE][GH#1504] Updates TN3270.lua and adds argument to disable TN3270E
+ [Soldier of Fortran]
+
+o [GH#1504] RMI parser could crash when encountering invalid input [Clément
+ Notin]
+
+o [GH#863] Avoid reporting negative latencies due to matching an ARP or ND
+ response to a probe sent after it was recieved. [Daniel Miller]
+
+o [Ncat][GH#1441] To avoid confusion and to support non-default proxy ports,
+ option --proxy now requires a literal IPv6 address to be specified using
+ square-bracket notation, such as --proxy [2001:db8::123]:456. [nnposter]
+
+o [Ncat][GH#1214][GH#1230][GH#1439] New ncat option provides control over
+ whether proxy destinations are resolved by the remote proxy server or
+ locally, by Ncat itself. See option --proxy-dns. [nnposter]
+
+o [NSE][GH#1478] Updated script ftp-syst to prevent potential endless
+ looping. [nnposter]
+
+o [GH#1454] New service probes and match lines for v1 and v2 of the Ubiquiti
+ Discovery protocol. Devices often leave the related service open and it
+ exposes significant amounts of information as well as the risk of being
+ used as part of a DDoS. New nmap-payload entry for v1 of the
+ protocol. [Tom Sellers]
+
+o [NSE] Removed hostmap-ip2hosts.nse as the API has been broken for a while
+ and the service was completely shutdown on Feb 17th, 2019. [Paulino
+ Calderon]
+
+o [NSE][GH#1318] Adds TN3270E support and additional improvements to
+ tn3270.lua and updates tn3270-screen.nse to display the new
+ setting. [mainframed]
+
+o [NSE][GH#1346] Updates product codes and adds a check for response length
+ in enip-info.nse. The script now uses string.unpack. [NothinRandom]
+
+o [Ncat][GH#1310][GH#1409] Temporary RSA keys are now 2048-bit to resolve a
+ compatibility issue with OpenSSL library configured with security level 2,
+ as seen on current Debian or Kali. [Adrian Vollmer, nnposter]
+
+o [NSE][GH#1227] Fix a crash (double-free) when using SSH scripts against
+ non-SSH services. [Daniel Miller]
+
+o [Zenmap] Fix a crash when Nmap executable cannot be found and the system
+ PATH contains non-UTF-8 bytes, such as on Windows. [Daniel Miller]
+
+o [Zenmap] Fix a crash in results search when using the dir: operator:
+ AttributeError: 'SearchDB' object has no attribute 'match_dir'
+ [Daniel Miller]
+
+o [Ncat][GH#1372] Fixed an issue with Ncat -e on Windows that caused early
+ termination of connections. [Alberto Garcia Illera]
+
+o [NSE][GH#1359] Fix a false-positive in http-phpmyadmin-dir-traversal when
+ the server responds with 200 status to a POST request to any
+ URI. [Francesco Soncina]
+
+o [NSE] New vulnerability state in vulns.lua, UNKNOWN, is used to indicate
+ that testing could not rule out vulnerability. [Daniel Miller]
+
+o [GH#1355] When searching for Lua header files, actually use them where
+ they are found instead of forcing /usr/include. [Fabrice Fontaine, Daniel
+ Miller]
+
+o [NSE][GH#1331] Script traceroute-geolocation no longer crashes when
+ www.GeoPlugin.net returns null coordinates [Michal Kubenka, nnposter]
+
+o Limit verbose -v and debugging -d levels to a maximum of 10. Nmap does not
+ use higher levels internally. [Daniel Miller]
+
+o [NSE] tls.lua when creating a client_hello message will now only use a
+ SSLv3 record layer if the protocol version is SSLv3. Some TLS
+ implementations will not handshake with a client offering less than
+ TLSv1.0. Scripts will have to manually fall back to SSLv3 to talk to
+ SSLv3-only servers. [Daniel Miller]
+
+o [NSE][GH#1322] Fix a few false-positive conditions in
+ ssl-ccs-injection. TLS implementations that responded with fatal alerts
+ other than "unexpected message" had been falsely marked as
+ vulnerable. [Daniel Miller]
+
+o Emergency fix to Nmap's birthday announcement so Nmap wishes itself a
+ "Happy 21st Birthday" rather than "Happy 21th" in verbose mode (-v) on
+ September 1, 2018. [Daniel Miller]
+
+o [GH#1150] Start host timeout clocks when the first probe is sent to a
+ host, not when the hostgroup is started. Sometimes a host doesn't get
+ probes until late in the hostgroup, increasing the chance it will time
+ out. [jsiembida]
+
+o [NSE] Support for edns-client-subnet (ECS) in dns.lua has been improved by:
+ - [GH#1271] Using ECS code compliant with RFC 7871 [John Bond]
+ - Properly trimming ECS address, as mandated by RFC 7871 [nnposter]
+ - Fixing a bug that prevented using the same ECS option table more than
+ once [nnposter]
+
+o [Ncat][GH#1267] Fixed communication with commands launched with -e or -c
+ on Windows, especially when --ssl is used. [Daniel Miller]
+
+o [NSE] Script http-default-accounts can now select more than one
+ fingerprint category. It now also possible to select fingerprints by name
+ to support very specific scanning. [nnposter]
+
+o [NSE] Script http-default-accounts was not able to run against more than
+ one target host/port. [nnposter]
+
+o [NSE][GH#1251] New script-arg `http.host` allows users to force a
+ particular value for the Host header in all HTTP requests.
+
+o [NSE][GH#1258] Use smtp.domain script arg or target's domain name instead
+ of "example.com" in EHLO command used for STARTTLS. [gwire]
+
+o [NSE][GH#1233] Fix brute.lua's BruteSocket wrapper, which was crashing
+ Nmap with an assertion failure due to socket mixup [Daniel Miller]: nmap:
+ nse_nsock.cc:672: int receive_buf(lua_State*, int, lua_KContext):
+ Assertion `lua_gettop(L) == 7' failed.
+
+o [NSE][GH#1254] Handle an error condition in smb-vuln-ms17-010 caused by
+ IPS closing the connection. [Clément Notin]
+
+o [Ncat][GH#1237] Fixed literal IPv6 URL format for connecting through HTTP
+ proxies. [Phil Dibowitz]
+
+o [NSE][GH#1212] Updates vendors from ODVA list for enip-info. [NothinRandom]
+
+o [NSE][GH#1191] Add two common error strings that improve MySQL detection
+ by the script http-sql-injection. [Robert Taylor, Paulino Calderon]
+
+o [NSE][GH#1220] Fix bug in http-vuln-cve2006-3392 that prevented the script
+ to generate the vulnerability report correctly. [rewardone]
+
+o [NSE][GH#1218] Fix bug related to screen rendering in NSE library
+ tn3270. This patch also improves the brute force script
+ tso-brute. [mainframed]
+
+o [NSE][GH#1209] Fix SIP, SASL, and HTTP Digest authentication when the
+ algorithm contains lowercase characters. [Jeswin Mathai]
+
+o [GH#1204] Nmap could be fooled into ignoring TCP response packets if they
+ used an unknown TCP Option, which would misalign the validation, causing
+ it to fail. [Clément Notin, Daniel Miller]
+
+o [NSE]The HTTP response parser now tolerates status lines without a reason
+ phrase, which improves compatibility with some HTTP servers. [nnposter]
+
+o [NSE][GH#1169][GH#1170][GH#1171]][GH#1198] Parser for HTTP Set-Cookie header
+ is now more compliant with RFC 6265:
+ - empty attributes are tolerated
+ - double quotes in cookie and/or attribute values are treated literally
+ - attributes with empty values and value-less attributes are parsed equally
+ - attributes named "name" or "value" are ignored
+ [nnposter]
+
+o [NSE][GH#1158] Fix parsing http-grep.match script-arg. [Hans van den
+ Bogert]
+
+o [Zenmap][GH#1177] Avoid a crash when recent_scans.txt cannot be written
+ to. [Daniel Miller]
+
+o Fixed --resume when the path to Nmap contains spaces. Reported on Windows
+ by Adriel Desautels. [Daniel Miller]
+
+o New service probe and match lines for adb, the Android Debug Bridge, which
+ allows remote code execution and is left enabled by default on many
+ devices. [Daniel Miller]
+
+Nmap 7.70 [2018-03-20]
+
+o [Windows] We made a ton of improvements to our Npcap Windows packet
+ capturing library (https://npcap.com/) for greater performance and
+ stability, as well as smoother installer and better 802.11 raw frame
+ capturing support. Nmap 7.70 updates the bundled Npcap from version 0.93 to
+ 0.99-r2, including all these changes from the last seven Npcap releases:
+ https://npcap.com/changelog
+
+o Integrated all of your service/version detection fingerprints submitted from
+ March 2017 to August 2017 (728 of them). The signature count went up 1.02%
+ to 11,672, including 26 new softmatches. We now detect 1224 protocols from
+ filenet-pch, lscp, and netassistant to sharp-remote, urbackup, and
+ watchguard. We will try to integrate the remaining submissions in the next
+ release.
+
+o Integrated all of your IPv4 OS fingerprint submissions from September 2016
+ to August 2017 (667 of them). Added 298 fingerprints, bringing the new total
+ to 5,652. Additions include iOS 11, macOS Sierra, Linux 4.14, Android 7, and
+ more.
+
+o Integrated all 33 of your IPv6 OS fingerprint submissions from September
+ 2016 to August 2017. New groups for OpenBSD 6.0 and FreeBSD 11.0 were added,
+ as well as strengthened groups for Linux and OS X.
+
+o Added the --resolve-all option to resolve and scan all IP addresses of a
+ host. This essentially replaces the resolveall NSE script. [Daniel Miller]
+
+o [NSE][SECURITY] Nmap developer nnposter found a security flaw (directory
+ traversal vulnerability) in the way the non-default http-fetch script
+ sanitized URLs. If a user manualy ran this NSE script against a malicious
+ web server, the server could potentially (depending on NSE arguments used)
+ cause files to be saved outside the intended destination directory. Existing
+ files couldn't be overwritten. We fixed http-fetch, audited our other
+ scripts to ensure they didn't make this mistake, and updated the httpspider
+ library API to protect against this by default. [nnposter, Daniel Miller]
+
+o [NSE] Added 9 NSE scripts, from 8 authors, bringing the total up to 588!
+ They are all listed at https://nmap.org/nsedoc/, and the summaries are
+ below:
+
+ + deluge-rpc-brute performs brute-force credential testing against Deluge
+ BitTorrent RPC services, using the new zlib library. [Claudiu Perta]
+
+ + hostmap-crtsh lists subdomains by querying Google's Certificate
+ Transparency logs. [Paulino Calderon]
+
+ + [GH#892] http-bigip-cookie decodes unencrypted F5 BIG-IP cookies and
+ reports back the IP address and port of the actual server behind the
+ load-balancer. [Seth Jackson]
+
+ + http-jsonp-detection Attempts to discover JSONP endpoints in web servers.
+ JSONP endpoints can be used to bypass Same-origin Policy restrictions in
+ web browsers. [Vinamra Bhatia]
+
+ + http-trane-info obtains information from Trane Tracer SC controllers and
+ connected HVAC devices. [Pedro Joaquin]
+
+ + [GH#609] nbd-info uses the new nbd.lua library to query Network Block
+ Devices for protocol and file export information. [Mak Kolybabi]
+
+ + rsa-vuln-roca checks for RSA keys generated by Infineon TPMs
+ vulnerable to Return Of Coppersmith Attack (ROCA) (CVE-2017-15361). Checks
+ SSH and TLS services. [Daniel Miller]
+
+ + [GH#987] smb-enum-services retrieves the list of services running on a
+ remote Windows machine. Modern Windows systems requires a privileged domain
+ account in order to list the services. [Rewanth Cool]
+
+ + tls-alpn checks TLS servers for Application Layer Protocol Negotiation
+ (ALPN) support and reports supported protocols. ALPN largely replaces NPN,
+ which tls-nextprotoneg was written for. [Daniel Miller]
+
+o [GH#978] Fixed Nsock on Windows giving errors when selecting on STDIN. This
+ was causing Ncat 7.60 in connect mode to quit with error: libnsock
+ select_loop(): nsock_loop error 10038: An operation was attempted on
+ something that is not a socket. [nnposter]
+
+o [Ncat][GH#197][GH#1049] Fix --ssl connections from dropping on
+ renegotiation, the same issue that was partially fixed for server mode in
+ [GH#773]. Reported on Windows with -e by pkreuzt and vinod272. [Daniel
+ Miller]
+
+o [NSE][GH#1062][GH#1149] Some changes to brute.lua to better handle
+ misbehaving or rate-limiting services. Most significantly,
+ brute.killstagnated now defaults to true. Thanks to xp3s and Adamtimtim for
+ reporing infinite loops and proposing changes.
+
+o [NSE] VNC scripts now support Apple Remote Desktop authentication (auth type
+ 30) [Daniel Miller]
+
+o [NSE][GH#1111] Fix a script crash in ftp.lua when PASV connection timed out.
+ [Aniket Pandey]
+
+o [NSE][GH#1114] Update bitcoin-getaddr to receive more than one response
+ message, since the first message usually only has one address in it. [h43z]
+
+o [Ncat][GH#1139] Ncat now selects the correct default port for a given proxy
+ type. [Pavel Zhukov]
+
+o [NSE] memcached-info can now gather information from the UDP memcached
+ service in addition to the TCP service. The UDP service is frequently used as
+ a DDoS reflector and amplifier. [Daniel Miller]
+
+o [NSE][GH#1129] Changed url.absolute() behavior with respect to dot and
+ dot-dot path segments to comply with RFC 3986, section 5.2. [nnposter]
+
+o Removed deprecated and undocumented aliases for several long options that
+ used underscores instead of hyphens, such as --max_retries. [Daniel Miller]
+
+o Improved service scan's treatment of soft matches in two ways. First of all,
+ any probes that could result in a full match with the soft matched service
+ will now be sent, regardless of rarity. This improves the chances of
+ matching unusual services on non-standard ports. Second, probes are now
+ skipped if they don't contain any signatures for the soft matched service.
+ Previously the probes would still be run as long as the target port number
+ matched the probe's specification. Together, these changes should make
+ service/version detection faster and more accurate. For more details on how
+ it works, see https://nmap.org/book/vscan.html. [Daniel Miller]
+
+o --version-all now turns off the soft match optimization, ensuring that all
+ probes really are sent, even if there aren't any existing match lines for
+ the softmatched service. This is slower, but gives the most comprehensive
+ results and produces better fingerprints for submission. [Daniel Miller]
+
+o [NSE][GH#1083] New set of Telnet softmatches for version detection based on
+ Telnet DO/DON'T options offered, covering a wide variety of devices and
+ operating systems. [D Roberson]
+
+o [GH#1112] Resolved crash opportunities caused by unexpected libpcap version
+ string format. [Gisle Vanem, nnposter]
+
+o [NSE][GH#1090] Fix false positives in rexec-brute by checking responses for
+ indications of login failure. [Daniel Miller]
+
+o [NSE][GH#1099] Fix http-fetch to keep downloaded files in separate
+ destination directories. [Aniket Pandey]
+
+o [NSE] Added new fingerprints to http-default-accounts:
+ - Hikvision DS-XXX Network Camera and NUOO DVR [Paulino Calderon]
+ - [GH#1074] ActiveMQ, Purestorage, and Axis Network Cameras [Rob Fitzpatrick, Paulino Calderon]
+
+o Added a new service detection match for WatchGuard Authentication Gateway.
+ [Paulino Calderon]
+
+o [NSE][GH#1038][GH#1037] Script qscan was not observing interpacket delays
+ (parameter qscan.delay). [nnposter]
+
+o [NSE][GH#1046] Script http-headers now fails properly if the target does not
+ return a valid HTTP response. [spacewander]
+
+o [Ncat][Nsock][GH#972] Remove RC4 from the list of TLS ciphers used by
+ default, in accordance with RFC 7465. [Codarren Velvindron]
+
+o [NSE][GH#1022] Fix a false positive condition in ipmi-cipher-zero caused by
+ not checking the error code in responses. Implementations which return an
+ error are not vulnerable. [Juho Jokelainen]
+
+o [NSE][GH#958] Two new libraries for NSE.
+ - idna - Support for internationalized domain names in applications (IDNA)
+ - punycode (a transfer encoding syntax used in IDNA)
+ [Rewanth Cool]
+
+o [NSE] New fingerprints for http-enum:
+ - [GH#954] Telerik UI CVE-2017-9248 [Harrison Neal]
+ - [GH#767] Many WordPress version detections [Rewanth Cool]
+
+o [GH#981][GH#984][GH#996][GH#975] Fixed Ncat proxy authentication issues:
+ - Usernames and/or passwords could not be empty
+ - Passwords could not contain colons
+ - SOCKS5 authentication was not properly documented
+ - SOCKS5 authentication had a memory leak
+ [nnposter]
+
+o [GH#1009][GH#1013] Fixes to autoconf header files to allow autoreconf to be
+ run. [Lukas Schwaighofer]
+
+o [GH#977] Improved DNS service version detection coverage and consistency
+ by using data from a Project Sonar Internet wide survey. Numerouse false
+ positives were removed and reliable softmatches added. Match lines for
+ version.bind responses were also conslidated using the technique below.
+ [Tom Sellers]
+
+o [GH#977] Changed version probe fallbacks so as to work cross protocol
+ (TCP/UDP). This enables consolidating match lines for services where the
+ responses on TCP and UDP are similar. [Tom Sellers]
+
+o [NSE][GH#532] Added the zlib library for NSE so scripts can easily
+ handle compression. This work started during GSOC 2014, so we're
+ particularly pleased to finally integrate it! [Claudiu Perta, Daniel
+ Miller]
+
+o [NSE][GH#1004] Fixed handling of brute.retries variable. It was being treated
+ as the number of tries, not retries, and a value of 0 would result in
+ infinite retries. Instead, it is now the number of retries, defaulting to 2
+ (3 total tries), with no option for infinite retries.
+
+o [NSE] http-devframework-fingerprints.lua supports Jenkins server detection
+ and returns extra information when Jenkins is detected [Vinamra Bhatia]
+
+o [GH#926] The rarity level of MS SQL's service detection probe was decreased.
+ Now we can find MS SQL in odd ports without increasing version intensity.
+ [Paulino Calderon]
+
+o [GH#957] Fix reporting of zlib and libssh2 versions in "nmap --version". We
+ were always reporting the version number of the included source, even when a
+ different version was actually linked. [Pavel Zhukov]
+
+o Add a new helper function for nmap-service-probes match lines: $I(1,">") will
+ unpack an unsigned big-endian integer value up to 8 bytes wide from capture
+ 1. The second option can be "<" for little-endian. [Daniel Miller]
+
+Nmap 7.60 [2017-07-31]
+
+o [Windows] Updated the bundled Npcap from 0.91 to 0.93, fixing several issues
+ with installation and compatibility with the Windows 10 Creators Update.
+
+o [NSE][GH#910] NSE scripts now have complete SSH support via libssh2,
+ including password brute-forcing and running remote commands, thanks to the
+ combined efforts of three Summer of Code students: [Devin Bjelland, Sergey
+ Khegay, Evangelos Deirmentzoglou]
+
+o [NSE] Added 14 NSE scripts from 6 authors, bringing the total up to 579!
+ They are all listed at https://nmap.org/nsedoc/, and the summaries are below:
+
+ + ftp-syst sends SYST and STAT commands to FTP servers to get system version
+ and connection information. [Daniel Miller]
+
+ + [GH#916] http-vuln-cve2017-8917 checks for an SQL injection vulnerability affecting
+ Joomla! 3.7.x before 3.7.1. [Wong Wai Tuck]
+
+ + iec-identify probes for the IEC 60870-5-104 SCADA protocol. [Aleksandr
+ Timorin, Daniel Miller]
+
+ + [GH#915] openwebnet-discovery retrieves device identifying information and
+ number of connected devices running on openwebnet protocol. [Rewanth Cool]
+
+ + puppet-naivesigning checks for a misconfiguration in the Puppet CA where
+ naive signing is enabled, allowing for any CSR to be automatically signed.
+ [Wong Wai Tuck]
+
+ + [GH#943] smb-protocols discovers if a server supports dialects NT LM 0.12
+ (SMBv1), 2.02, 2.10, 3.00, 3.02 and 3.11. This replaces the old
+ smbv2-enabled script. [Paulino Calderon]
+
+ + [GH#943] smb2-capabilities lists the supported capabilities of SMB2/SMB3
+ servers. [Paulino Calderon]
+
+ + [GH#943] smb2-time determines the current date and boot date of SMB2
+ servers. [Paulino Calderon]
+
+ + [GH#943] smb2-security-mode determines the message signing configuration of
+ SMB2/SMB3 servers. [Paulino Calderon]
+
+ + [GH#943] smb2-vuln-uptime attempts to discover missing critical patches in
+ Microsoft Windows systems based on the SMB2 server uptime. [Paulino Calderon]
+
+ + ssh-auth-methods lists the authentication methods offered by an SSH server.
+ [Devin Bjelland]
+
+ + ssh-brute performs brute-forcing of SSH password credentials. [Devin Bjelland]
+
+ + ssh-publickey-acceptance checks public or private keys to see if they could
+ be used to log in to a target. A list of known-compromised key pairs is
+ included and checked by default. [Devin Bjelland]
+
+ + ssh-run uses user-provided credentials to run commands on targets via SSH.
+ [Devin Bjelland]
+
+o [NSE] Removed smbv2-enabled, which was incompatible with the new SMBv2/3
+ improvements. It was fully replaced by the smb-protocols script.
+
+o [Ncat][GH#446] Added Datagram TLS (DTLS) support to Ncat in connect (client)
+ mode with --udp --ssl. Also added Application Layer Protocol Negotiation
+ (ALPN) support with the --ssl-alpn option. [Denis Andzakovic, Daniel Miller]
+
+o Updated the default ciphers list for Ncat and the secure ciphers list for
+ Nsock to use "!aNULL:!eNULL" instead of "!ADH". With the addition of ECDH
+ ciphersuites, anonymous ECDH suites were being allowed. [Daniel Miller]
+
+o [NSE][GH#930] Fix ndmp-version and ndmp-fs-info when scanning Veritas Backup
+ Exec Agent 15 or 16. [Andrew Orr]
+
+o [NSE][GH#943] Added new SMB2/3 library and related scripts. [Paulino Calderon]
+
+o [NSE][GH#950] Added wildcard detection to dns-brute. Only hostnames that
+ resolve to unique addresses will be listed. [Aaron Heesakkers]
+
+o [NSE] FTP scripts like ftp-anon and ftp-brute now correctly handle
+ TLS-protected FTP services and use STARTTLS when necessary. [Daniel Miller]
+
+o [NSE][GH#936] Function url.escape no longer encodes so-called "unreserved"
+ characters, including hyphen, period, underscore, and tilde, as per RFC 3986.
+ [nnposter]
+
+o [NSE][GH#935] Function http.pipeline_go no longer assumes that persistent
+ connections are supported on HTTP 1.0 target (unless the target explicitly
+ declares otherwise), as per RFC 7230. [nnposter]
+
+o [NSE][GH#934] The HTTP response object has a new member, version, which
+ contains the HTTP protocol version string returned by the server, e.g. "1.0".
+ [nnposter]
+
+o [NSE][GH#938] Fix handling of the objectSID Active Directory attribute
+ by ldap.lua. [Tom Sellers]
+
+o [NSE] Fix line endings in the list of Oracle SIDs used by oracle-sid-brute.
+ Carriage Return characters were being sent in the connection packets, likely
+ resulting in failure of the script. [Anant Shrivastava]
+
+o [NSE][GH#141] http-useragent-checker now checks for changes in HTTP status
+ (usually 403 Forbidden) in addition to redirects to indicate forbidden User
+ Agents. [Gyanendra Mishra]
+
+Nmap 7.50 [2017-06-13]
+
+o [Windows] Updated the bundled Npcap from 0.78 to 0.91, with several bugfixes
+ for WiFi connectivity problems and stability issues. [Daniel Miller, Yang Luo]
+
+o Integrated all of your service/version detection fingerprints submitted from
+ September to March (855 of them). The signature count went up 2.9% to 11,418.
+ We now detect 1193 protocols from apachemq, bro, and clickhouse to jmon,
+ slmp, and zookeeper. Highlights: http://seclists.org/nmap-dev/2017/q2/140
+
+o [NSE] Added 14 NSE scripts from 12 authors, bringing the total up to 566!
+ They are all listed at https://nmap.org/nsedoc/, and the summaries are below:
+
+ + [GH#743] broadcast-ospf2-discover discovers OSPF 2 routers and neighbors.
+ OSPFv2 authentication is supported. [Emiliano Ticci]
+
+ + [GH#671] cics-info checks IBM TN3270 services for CICS transaction services
+ and extracts useful information. [Soldier of Fortran]
+
+ + [GH#671] cics-user-brute does brute-force enumeration of CICS usernames on
+ IBM TN3270 services. [Soldier of Fortran]
+
+ + [GH#669] http-cookie-flags checks HTTP session cookies for HTTPOnly and
+ Secure flags. [Steve Benson]
+
+ + http-security-headers checks for the HTTP response headers related to
+ security given in OWASP Secure Headers Project, giving a brief description
+ of the header and its configuration value. [Vinamra Bhatia, Ícaro Torres]
+
+ + [GH#740][GH#759] http-vuln-cve2017-5638 checks for the RCE bug in Apache
+ Struts2. [Seth Jackson]
+
+ + [GH#876] http-vuln-cve2017-5689 detects a privilege escalation
+ vulnerability (INTEL-SA-00075) in Intel Active Management Technology (AMT)
+ capable systems. [Andrew Orr]
+
+ + http-vuln-cve2017-1001000 detects a privilege escalation vulnerability in
+ Wordpress 4.7.0 and 4.7.1 (CVE-2017-1001000) [Vinamra Bhatia]
+
+ + [GH#713] impress-remote-discover attempts to pair with the LibreOffice
+ Impress presentation remote service and extract version info. Pairing is
+ PIN-protected, and the script can optionally brute-force the PIN. New
+ service probe and match line also added. [Jeremy Hiebert]
+
+ + [GH#854] smb-double-pulsar-backdoor detects the Shadow Brokers-leaked
+ Double Pulsar backdoor in Windows SMB servers. [Andrew Orr]
+
+ + smb-vuln-cve-2017-7494 detects a remote code execution vulnerability
+ affecting Samba versions 3.5.0 and greater with writable shares.
+ [Wong Wai Tuck]
+
+ + smb-vuln-ms17-010 detects a critical remote code execution vulnerability
+ affecting SMBv1 servers in Microsoft Windows systems (ms17-010). The
+ script also reports patched systems. [Paulino Calderon]
+
+ + [GH#686] tls-ticketbleed checks for the Ticketbleed vulnerability
+ (CVE-2016-9244) in F5 BIG-IP appliances. [Mak Kolybabi]
+
+ + vmware-version queries VMWare SOAP API for version and product information.
+ Submitted in 2011, this was mistakenly turned into a service probe that was
+ unable to elicit any matches. [Aleksey Tyurin]
+
+o [Ncat] A series of changes and fixes based on feedback from the Red Hat community:
+
+ + [GH#157] Ncat will now continue trying to connect to each resolved address
+ for a hostname before declaring the connection refused, allowing it to
+ fallback from IPv6 to IPv4 or to connect to names that use DNS failover.
+ [Jaromir Koncicky, Michal Hlavinka]
+
+ + The --no-shutdown option now also works in connect mode, not only in listen mode.
+
+ + Made -i/--idle-timeout not cause Ncat in server mode to close while
+ waiting for an initial connection. This was also causing -i to interfere
+ with the HTTP proxy server mode. [Carlos Manso, Daniel Miller]
+
+ + [GH#773] Ncat in server mode properly handles TLS renegotiations and other
+ situations where SSL_read returns a non-fatal error. This was causing
+ SSL-over-TCP connections to be dropped. [Daniel Miller]
+
+ + Enable --ssl-ciphers to be used with Ncat in client mode, not only in
+ server (listen) mode. [Daniel Miller]
+
+o [NSE] New fingerprints for http-enum:
+ - Endpoints for Spring MVC and Boot Actuator [Paulino Calderon]
+ - [GH#620][GH#715] 8 fingerprints for Hadoop infrastructure components
+ [Thomas Debize, Varunram Ganesh]
+
+o [NSE][GH#266][GH#704][GH#238][GH#883] NSE libraries smb and msrpc now use
+ fully qualified paths. SMB scripts now work against all modern versions
+ of Microsoft Windows. [Paulino Calderon]
+
+o [NSE] smb library's share_get_list now properly uses anonymous connections
+ first before falling back authenticating as a known user.
+
+o New service probes and matches for Apache HBase and Hadoop MapReduce.
+ [Paulino Calderon]
+
+o Extended Memcached service probe and added match for Apache ZooKeeper.
+ [Paulino Calderon]
+
+o [NSE] New script argument "vulns.short" will reduce vulns library script
+ output to a single line containing the target name or IP, the vulnerability
+ state, and the CVE ID or title of the vulnerability. [Daniel Miller]
+
+o [NSE][GH#862] SNMP scripts will now take a community string provided like
+ `--script-args creds.snmp=private`, which previously did not work because it
+ was interpreted as a username. [Daniel Miller]
+
+o [NSE] Resolved several issues in the default HTTP redirect rules:
+ - [GH#826] A redirect is now cancelled if the original URL contains
+ embedded credentials
+ - [GH#829] A redirect test is now more careful in determining whether
+ a redirect destination is related to the original host
+ - [GH#830] A redirect is now more strict in avoiding possible redirect
+ loops
+ [nnposter]
+
+o [NSE][GH#766] The HTTP Host header will now include the port unless it is
+ the default one for a given scheme. [nnposter]
+
+o [NSE] The HTTP response object has a new member, fragment, which contains
+ a partially received body (if any) when the overall request fails to
+ complete. [nnposter]
+
+o [NSE][GH#866] NSE now allows cookies to have arbitrary attributes, which
+ are silently ignored (in accordance with RFC 6265). Unrecognized attributes
+ were previously causing HTTP requests with such cookies to fail. [nnposter]
+
+o [NSE][GH#844] NSE now correctly parses a Set-Cookie header that has unquoted
+ whitespace in the cookie value (which is allowed per RFC 6265). [nnposter]
+
+o [NSE][GH#731] NSE is now able to process HTTP responses with a Set-Cookie
+ header that has an extraneous trailing semicolon. [nnposter]
+
+o [NSE][GH#708] TLS SNI now works correctly for NSE HTTP requests initiated
+ with option any_af. As an added benefit, option any_af is now available for
+ all connections via comm.lua, not just HTTP requests. [nnposter]
+
+o [NSE][GH#781] There is a new common function, url.get_default_port(),
+ to obtain the default port number for a given scheme. [nnposter]
+
+o [NSE][GH#833] Function url.parse() now returns the port part as a number,
+ not a string. [nnposter]
+
+o No longer allow ICMP Time Exceeded messages to mark a host as down during
+ host discovery. Running traceroute at the same time as Nmap was causing
+ interference. [David Fifield]
+
+o [NSE][GH#807] Fixed a JSON library issue that was causing long integers
+ to be expressed in the scientific/exponent notation. [nnposter]
+
+o [NSE] Fixed several potential hangs in NSE scripts that used
+ receive_buf(pattern), which will not return if the service continues to send
+ data that does not match pattern. A new function in match.lua, pattern_limit,
+ is introduced to limit the number of bytes consumed while searching for the
+ pattern. [Daniel Miller, Jacek Wielemborek]
+
+o [Nsock] Handle any and all socket connect errors the same: raise as an Nsock
+ error instead of fatal. This prevents Nmap and Ncat from quitting with
+ "Strange error from connect:" [Daniel Miller]
+
+o [NSE] Added several commands to redis-info to extract listening addresses,
+ connected clients, active channels, and cluster nodes. [Vasiliy Kulikov]
+
+o [NSE][GH#679][GH#681] Refreshed script http-robtex-reverse-ip, reflecting
+ changes at the source site (www.robtex.com). [aDoN]
+
+o [NSE][GH#629] Added two new fingerprints to http-default-accounts
+ (APC Management Card, older NetScreen ScreenOS) [Steve Benson, nnposter]
+
+o [NSE][GH#716] Fix for oracle-tns-version which was sending an invalid TNS
+ probe due to a string escaping mixup. [Alexandr Savca]
+
+o [NSE][GH#694] ike-version now outputs information about supported attributes
+ and unknown vendor ids. Also, a new fingerprint for FortiGate VPNs was
+ submitted by Alexis La Goutte. [Daniel Miller]
+
+o [GH#700] Enabled support for TLS SNI on the Windows platform. [nnposter]
+
+o [GH#649] New service probe and match lines for the JMON and RSE services of
+ IBM Explorer for z/OS. [Soldier of Fortran]
+
+o Removed a duplicate service probe for Memcached added in 2011 (the original
+ probe was added in 2008) and reported as duplicate in 2013 by Pavel Kankovsky.
+
+o New service probe and match line for NoMachine NX Server remote desktop.
+ [Justin Cacak]
+
+o [Zenmap] Fixed a recurring installation problem on OS X/macOS where Zenmap
+ was installed to /Applications/Applications/Zenmap.app instead of
+ /Applications/Zenmap.app.
+
+o [Zenmap][GH#639] Zenmap will no longer crash when no suitable temporary
+ directory is found. Patches contributed by [Varunram Ganesh] and [Sai Sundhar]
+
+o [Zenmap][GH#626] Zenmap now properly handles the -v0 (no output) option,
+ which was added in Nmap 7.10. Previously, this was treated the same as not
+ specifying -v at all. [lymanZerga11]
+
+o [GH#630] Updated or removed some OpenSSL library calls that were deprecated
+ in OpenSSL 1.1. [eroen]
+
+o [NSE] Script ssh-hostkey now recognizes and reports Ed25519 keys [nnposter]
+
+o [NSE][GH#627] Fixed script hang in several brute scripts due to the "threads"
+ script-arg not being converted to a number. Error message was
+ "nselib/brute.lua:1188: attempt to compare number with string" [Arne Beer]
+
+Nmap 7.40 [2016-12-20]
+
+o [Windows] Updated the bundled Npcap from 0.10r9 to 0.78r5, with an
+ improved installer experience, driver signing updates to work with
+ Windows 10 build 1607, and bugfixes for WiFi connectivity
+ problems. [Yang Luo, Daniel Miller]
+
+o Integrated all of your IPv4 OS fingerprint submissions from April to
+ September (568 of them). Added 149 fingerprints, bringing the new total to
+ 5,336. Additions include Linux 4.6, macOS 10.12 Sierra, NetBSD 7.0, and more.
+ Highlights: http://seclists.org/nmap-dev/2016/q4/110 [Daniel Miller]
+
+o Integrated all of your service/version detection fingerprints submitted from
+ April to September (779 of them). The signature count went up 3.1% to 11,095.
+ We now detect 1161 protocols, from airserv-ng, domaintime, and mep to
+ nutcracker, rhpp, and usher. Highlights: http://seclists.org/nmap-dev/2016/q4/115
+ [Daniel Miller]
+
+o Fix reverse DNS on Windows which was failing with the message "mass_dns:
+ warning: Unable to determine any DNS servers." This was because the interface
+ GUID comparison needed to be case-insensitive. [Robert Croteau]
+
+o [NSE] Added 12 NSE scripts from 4 authors, bringing the total up to 552!
+ They are all listed at https://nmap.org/nsedoc/, and the summaries are below:
+
+ + cics-enum enumerates CICS transaction IDs, mapping to screens in TN3270
+ services. [Soldier of Fortran]
+
+ + cics-user-enum brute-forces usernames for CICS users on TN3270 services.
+ [Soldier of Fortran]
+
+ + fingerprint-strings will print the ASCII strings it finds in the service
+ fingerprints that Nmap shows for unidentified services. [Daniel Miller]
+
+ + [GH#606] ip-geolocation-map-bing renders IP geolocation data as an image
+ via Bing Maps API. [Mak Kolybabi]
+
+ + [GH#606] ip-geolocation-map-google renders IP geolocation data as an image
+ via Google Maps API. [Mak Kolybabi]
+
+ + [GH#606] ip-geolocation-map-kml records IP geolocation data in a KML file
+ for import into other mapping software [Mak Kolybabi]
+
+ + nje-pass-brute brute-forces the password to a NJE node, given a valid RHOST
+ and OHOST. Helpfully, nje-node-brute can now brute force both of those
+ values. [Soldier of Fortran]
+
+ + [GH#557] ssl-cert-intaddr will search for private IP addresses in TLS
+ certificate fields and extensions. [Steve Benson]
+
+ + tn3270-screen shows the login screen from mainframe TN3270 Telnet services,
+ including any hidden fields. The script is accompanied by the new tn3270
+ library. [Soldier of Fortran]
+
+ + tso-enum enumerates usernames for TN3270 Telnet services. [Soldier of Fortran]
+
+ + tso-brute brute-forces passwords for TN3270 Telnet services. [Soldier of Fortran]
+
+ + vtam-enum brute-forces VTAM application IDs for TN3270 services.
+ [Soldier of Fortran]
+
+o [NSE][GH#518] Brute scripts are faster and more accurate. New feedback and
+ adaptivity mechanisms in brute.lua help brute scripts use resources more
+ efficiently, dynamically changing number of threads based on protocol
+ messages like FTP 421 errors, network errors like timeouts, etc.
+ [Sergey Khegay]
+
+o [GH#353] New option --defeat-icmp-ratelimit dramatically reduces UDP scan
+ times in exchange for labeling unresponsive (and possibly open) ports as
+ "closed|filtered". Ports which give a UDP protocol response to one of Nmap's
+ scanning payloads will be marked "open". [Sergey Khegay]
+
+o [NSE][GH#533] Removed ssl-google-cert-catalog, since Google shut off that
+ service at some point. Reported by Brian Morin.
+
+o [NSE][GH#606] New NSE library, geoip.lua, provides a common framework for
+ storing and retrieving IP geolocation results. [Mak Kolybabi]
+
+o [Ncat] Restore the connection success message that Ncat prints with -v. This
+ was accidentally suppressed when not using -z.
+
+o [GH#316] Added scan resume from Nmap's XML output. Now you can --resume a
+ canceled scan from all 3 major output formats: -oN, -oG, and -oX.
+ [Tudor Emil Coman]
+
+o [Ndiff][GH#591] Fix a bug where hosts with the same IP but different
+ hostnames were shown as changing hostnames between scans. Made sort stable
+ with regard to hostnames. [Daniel Miller]
+
+o [NSE][GH#540] Add tls.servername script-arg for forcing a name to be used for
+ TLS Server Name Indication extension. The argument overrides the default use
+ of the host's targetname. [Bertrand Bonnefoy-Claudet]
+
+o [GH#505] Updated Russian translation of Zenmap by Alexander Kozlov.
+
+o [NSE][GH#588] Fix a crash in smb.lua when using smb-ls due to a
+ floating-point number being passed to os.time ("bad argument").
+ [Dallas Winger]
+
+o [NSE][GH#596] Fix a bug in mysql.lua that caused authentication failures in
+ mysql-brute and other scripts due to including a null terminator in the salt
+ value. This bug affects Nmap 7.25BETA2 and later releases. [Daniel Miller]
+
+o The --open option now implies --defeat-rst-ratelimit. This may result in
+ inaccuracies in the numbers of "Not shown:" closed and filtered ports, but
+ only in situations where it also speeds up scan times. [Daniel Miller]
+
+o [NSE] Added known Diffie-Hellman parameters for haproxy, postfix, and
+ IronPort to ssl-dh-params. [Frank Bergmann]
+
+o Added service probe for ClamAV servers (clam),
+ an open source antivirus engine used in mail scanning. [Paulino Calderon]
+
+o Added service probe and UDP payload for Quick UDP Internet Connection (QUIC),
+ a secure transport developed by Google and used with HTTP/2. [Daniel Miller]
+
+o [NSE] Enabled resolveall to run against any target provided as a hostname, so
+ the resolveall.hosts script-arg is no longer required. [Daniel Miller]
+
+o [NSE] Revised script http-default-accounts in several ways [nnposter]:
+ - Added 21 new fingerprints, plus broadened 5 to cover more variants.
+ - [GH#577] It can now can test systems that return status 200 for
+ non-existent pages.
+ - [GH#604] Implemented XML output. Layout of the classic text output has also
+ changed, including reporting blank usernames or passwords as "<blank>",
+ instead of just empty strings.
+ - Added CPE entries to individual fingerprints (where known). They are
+ reported only in the XML output.
+
+o [NSE][GH#573] Updated http.lua to allow processing of HTTP responses with
+ malformed header names. Such header lines are still captured in the rawheader
+ list but skipped otherwise. [nnposter]
+
+o [GH#416] New service probe and match line for iperf3. [Eric Gershman]
+
+o [NSE][GH#555] Add Drupal to the set of web apps brute forced by
+ http-form-brute. [Nima Ghotbi]
+
+Nmap 7.31 [2016-10-20]
+
+o [Windows] Updated the bundled Npcap from 0.10r2 to 0.10r9, bringing
+ increased stability, bug fixes, and raw 802.11 WiFi capture (unused
+ by Nmap). Further details on these changes can be found at
+ https://github.com/nmap/npcap/releases. [Yang Luo]
+
+o Fixed the way Nmap handles scanning names that resolve to the same IP. Due to
+ changes in 7.30, the IP was only being scanned once, with bogus results
+ displayed for the other names. The previous behavior is now restored.
+ [Tudor Emil Coman]
+
+o [Nping][GH#559] Fix Nping's ability to use Npcap on Windows. A privilege
+ check was performed too late, so the Npcap loading code assumed the user had no
+ rights. [Yang Luo, Daniel Miller]
+
+o [GH#350] Fix an assertion failure due to floating point error in equality
+ comparison, which triggered mainly on OpenBSD:
+ assertion "diff <= interval" failed: file "timing.cc", line 440
+ This was reported earlier as [GH#472] but the assertion fixed there was a
+ different one. [David Carlier]
+
+o [Zenmap] Fix a crash in the About page in the Spanish translation due to a
+ missing format specifier:
+ File "zenmapGUI\About.pyo", line 217, in __init__
+ TypeError: not all arguments converted during string formatting
+ [Daniel Miller]
+
+o [Zenmap][GH#556] Better visual indication that display of hostname is tied to
+ address in the Topology page. You can show numeric addresses with hostnames
+ or without, but you can't show hostnames without numeric addresses when they
+ are not available. [Daniel Miller]
+
+o To increase the number of IPv6 fingerprint submissions, a prompt for
+ submission will be shown with some random chance for successful matches of OS
+ classes that are based on only a few submissions. Previously, only
+ unsuccessful matches produced such a prompt. [Daniel Miller]
+
+Nmap 7.30 [2016-09-29]
+
+o Integrated all 12 of your IPv6 OS fingerprint submissions from June to
+ September. No new groups, but several classifications were strengthened,
+ especially Windows localhost and OS X. [Daniel Miller]
+
+o [NSE] Added 7 NSE scripts, from 3 authors, bringing the total up to 541!
+ They are all listed at https://nmap.org/nsedoc/, and the summaries are below
+ (authors are listed in brackets):
+
+ + [GH#369] coap-resources grabs the list of available resources from CoAP
+ endpoints. [Mak Kolybabi]
+
+ + fox-info retrieves detailed version and configuration info from Tridium
+ Niagara Fox services. [Stephen Hilt]
+
+ + ipmi-brute performs authentication brute-forcing on IPMI services.
+ [Claudiu Perta]
+
+ + ipmi-cipher-zero checks IPMI services for Cipher Zero support, which allows
+ connection without a password. [Claudiu Perta]
+
+ + ipmi-version retrieves protocol version and authentication options from
+ ASF-RMCP (IPMI) services. [Claudiu Perta]
+
+ + [GH#352] mqtt-subscribe connects to a MQTT broker, subscribes to topics,
+ and lists the messages received. [Mak Kolybabi]
+
+ + pcworx-info retrieves PLC model, firmware version, and date from Phoenix
+ Contact PLCs. [Stephen Hilt]
+
+o Upgraded Npcap, our new Windows packet capturing driver/library,
+ from version to 0.09 to 0.10r2. This includes many bug fixes, with a
+ particular on emphasis on concurrency issues discovered by running
+ hundreds of Nmap instances at a time. More details are available
+ from https://github.com/nmap/npcap/releases. [Yang Luo, Daniel
+ Miller, Fyodor]
+
+o New service probes and match lines for DTLS, IPMI-RMCP, MQTT, PCWorx,
+ ProConOS, and Tridium Fox, [Stephen Hilt, Mak Kolybabi, Daniel Miller]
+
+o Improved some output filtering to remove or escape carriage returns ('\r')
+ that could allow output spoofing by overwriting portions of the screen. Issue
+ reported by Adam Rutherford. [Daniel Miller]
+
+o [NSE] Fixed a few bad Lua patterns that could result in denial of service due
+ to excessive backtracking. [Adam Rutherford, Daniel Miller]
+
+o Fixed a discrepancy between the number of targets selected with -iR and the
+ number of hosts scanned, resulting in output like "Nmap done: 1033 IP
+ addresses" when the user specified -iR 1000. [Daniel Miller]
+
+o Fixed a bug in port specification parsing that could cause extraneous
+ 'T', 'U', 'S', and 'P' characters to be ignored when they should have
+ caused an error. [David Fifield]
+
+o [GH#543] Restored compatibility with LibreSSL, which was lost in adding
+ library version checks for OpenSSL 1.1. [Wonko7]
+
+o [Zenmap] Fixed a bug in the Compare Scans window of Zenmap on OS X resulting
+ in this message instead of Ndiff output:
+ ImportError: dlopen(/Applications/Zenmap.app/Contents/Resources/lib/python2.7/lib-dynload/datetime.so, 2): no suitable image found. Did find:
+ /Applications/Zenmap.app/Contents/Resources/lib/python2.7/lib-dynload/datetime.so: mach-o, but wrong architecture
+ Reported by Kyle Gustafson. [Daniel Miller]
+
+o [NSE] Fixed a bug in ssl-enum-ciphers and ssl-dh-params which caused them to
+ not output TLSv1.2 info with DHE ciphersuites or others involving
+ ServerKeyExchange messages. [Daniel Miller]
+
+o [NSE] Added X509v3 extension parsing to NSE's sslcert code. ssl-cert now
+ shows the Subject Alternative Name extension; all extensions are shown in the
+ XML output. [Daniel Miller]
+
+Nmap 7.25BETA2 [2016-09-01]
+
+o [GH#376] Windows binaries are now code-signed with our "Insecure.Com LLC"
+ SHA256 certificate. This should give our users extra peace-of-mind and avoid
+ triggering Microsoft's ever-increasing security warnings.
+
+o [NSE] Upgraded NSE to Lua 5.3, adding bitwise operators, integer data type, a
+ utf8 library, and native binary packing and unpacking functions. Removed bit
+ library, added bits.lua, replaced base32, base64, and bin libraries. [Patrick
+ Donnelly]
+
+o [NSE] Added 2 NSE scripts, bringing the total up to 534! They are both listed
+ at https://nmap.org/nsedoc/, and the summaries are below:
+
+ + oracle-tns-version decodes the version number from Oracle Database Server's
+ TNS listener. [Daniel Miller]
+
+ + clock-skew analyzes and reports clock skew between Nmap and services that
+ report timestamps, grouping hosts with similar skews. [Daniel Miller]
+
+o Integrated all of your service/version detection fingerprints submitted from
+ January to April (578 of them). The signature count went up 2.2% to 10760.
+ We now detect 1122 protocols, from elasticsearch, fhem, and goldengate to
+ ptcp, resin-watchdog, and siemens-logo. [Daniel Miller]
+
+o Upgraded Npcap, our new Windows packet capturing driver/library,
+ from version 0.07-r17 to 0.09. This includes many improvements you can
+ read about at https://github.com/nmap/npcap/releases.
+
+o [Nsock][GH#148] Added the new IOCP Nsock engine which uses the Windows
+ Overlapped I/O API to improve performance of version scan and NSE against
+ many targets on Windows. [Tudor Emil Coman]
+
+o [GH#376] Windows binaries are now code-signed with our "Insecure.Com LLC"
+ SHA256 certificate. This should give our users extra peace-of-mind and avoid
+ triggering Microsoft's ever-increasing security warnings.
+
+o Various performance improvements for large-scale high-rate scanning,
+ including increased ping host groups, faster probe matching, and ensuring
+ data types can handle an Internet's-worth of targets. [Tudor Emil Coman]
+
+o [Zenmap] Long-overdue Spanish language translation has been added! Muy bien!
+ [Vincent Dumont, Marta Garcia De La Paz, Paulino Calderon, Patricio Castagnaro]
+
+o [Zenmap][GH#449] Fix a crash when closing Zenmap due to a read-only
+ zenmap.conf. User will be warned that config cannot be saved and that they
+ should fix the file permissions. [Daniel Miller]
+
+o [NSE] Fix a crash when parsing TLS certificates that OpenSSL doesn't support,
+ like DH certificates or corrupted certs. When this happens, ssl-enum-ciphers
+ will label the ciphersuite strength as "unknown." Reported by Bertrand
+ Bonnefoy-Claudet. [Daniel Miller]
+
+o [NSE][GH#531] Fix two issues in sslcert.lua that prevented correct operations
+ against LDAP services when version detection or STARTTLS were used.
+ [Tom Sellers]
+
+o [GH#426] Remove a workaround for lack of selectable pcap file descriptors on
+ Windows, which required including pcap-int.h and locking us to a single
+ version of libpcap. The new method, using WaitForSingleObject should work
+ with all versions of both WinPcap and Npcap. [Daniel Miller]
+
+o [NSE][GH#234] Added a --script-timeout option for limiting run time for
+ every individual NSE script. [Abhishek Singh]
+
+o [Ncat][GH#444] Added a -z option to Ncat. Just like the -z option in
+ traditional netcat, it can be used to quickly check the status of a
+ port. Port ranges are not supported since we recommend a certain other tool
+ for port scanning. [Abhishek Singh]
+
+o Fix checking of Npcap/WinPcap presence on Windows so that "nmap -A" and
+ "nmap" with no options result in the same behaviors as on Linux (and no
+ crashes) [Daniel Miller]
+
+o [NSE] ssl-enum-ciphers will now warn about 64-bit block ciphers in CBC mode,
+ which are vulnerable to the SWEET32 attack.
+
+o [NSE][GH#117] tftp-enum now only brute-forces IP-address-based Cisco filenames when
+ the wordlist contains "{cisco}". Previously, custom wordlists would still end
+ up sending these extra 256 requests. [Sriram Raghunathan]
+
+o [GH#472] Avoid an unnecessary assert failure in timing.cc when printing estimated
+ completion time. Instead, we'll output a diagnostic error message:
+ Timing error: localtime(n) is NULL
+ where "n" is some number that is causing problems. [Jean-Guilhem Nousse]
+
+o [NSE][GH#519] Removed the obsolete script ip-geolocation-geobytes. [Paulino Calderon]
+
+o [NSE] Added 9 new fingerprints for script http-default-accounts.
+ (Motorola AP, Lantronix print server, Dell iDRAC6, HP StorageWorks, Zabbix,
+ Schneider controller, Xerox printer, Citrix NetScaler, ESXi hypervisor)
+ [nnposter]
+
+o [NSE] Completed a refresh and validation of almost all fingerprints for
+ script http-default-accounts. Also improved the script speed. [nnposter]
+
+o [GH#98] Added support for decoys in IPv6. Earlier we supported decoys only in
+ IPv4. [Abhishek Singh]
+
+o Various performance improvements for large-scale high-rate scanning,
+ including increased ping host groups, faster probe matching, and ensuring
+ data types can handle an Internet's-worth of targets. [Tudor Emil Coman]
+
+o [GH#484] Allow Nmap to compile on some older Red Hat distros that disable EC
+ crypto support in OpenSSL. [Jeroen Roovers, Vincent Dumont]
+
+o [GH#439] Nmap now supports OpenSSL 1.1.0-pre5 and previous versions. [Vincent Dumont]
+
+o [Ncat] Fix a crash ("add_fdinfo() failed.") when --exec was used with --ssl
+ and --max-conns, due to improper accounting of file descriptors. [Daniel
+ Miller]
+
+o FTP Bounce scan: improved some edge cases like anonymous login without
+ password, 500 errors used to indicate port closed, and timeouts for LIST
+ command. Also fixed a 1-byte array overrun (read) when checking for
+ privileged ports. [Daniel Miller]
+
+o [GH#140] Allow target DNS names up to 254 bytes. We previously imposed an
+ incorrect limit of 64 bytes in several parts of Nmap. [Vincent Dumont]
+
+o [NSE] The hard limit on number of concurrently running scripts can now
+ increase above 1000 to match a high user-set --min-parallelism value. [Tudor
+ Emil Coman]
+
+o [NSE] Solved a memory corruption issue that would happen if a socket connect
+ operation produced an error immediately, such as Network Unreachable. The
+ event handler was throwing a Lua error, preventing Nsock from cleaning up
+ properly, leaking events. [Abhishek Singh, Daniel Miller]
+
+o [NSE] Added the datetime library for performing date and time calculations,
+ and as a helper to the clock-skew script.
+
+o [GH#103][GH#364] Made Nmap's parallel reverse DNS resolver more robust, fully
+ handling truncated replies. If a response is too long, we now fall back to
+ using the system resolver to answer it. [Abhishek Singh]
+
+o [Zenmap][GH#279] Added a legend for the Topography window. [Suraj Hande]
+
+Nmap 7.25BETA1 [2016-07-15]
+
+o Nmap now ships with and uses Npcap, our new packet sniffing library
+ for Windows. It's based on WinPcap (unmaintained for years), but
+ uses modern Windows APIs for better performance. It also includes
+ security improvements and many bug fixes. See https://npcap.com. And
+ it enables Nmap to perform SYN scans and OS detection against
+ localhost, which we haven't been able to do on Windows since
+ Microsoft removed the raw sockets API in 2003. [Yang Luo, Daniel
+ Miller, Fyodor]
+
+o [NSE] Added 6 NSE scripts, from 5 authors, bringing the total up to 533!
+ They are all listed at https://nmap.org/nsedoc/, and the summaries are below
+ (authors are listed in brackets):
+
+ + clamav-exec detects ClamAV servers vulnerable to unauthorized clamav
+ command execution. [Paulino Calderon]
+
+ + http-aspnet-debug detects ASP.NET applications with debugging enabled.
+ [Josh Amishav-Zlatin]
+
+ + http-internal-ip-disclosure determines if the web server leaks its internal
+ IP address when sending an HTTP/1.0 request without a Host header. [Josh
+ Amishav-Zlatin]
+
+ + [GH#304] http-mcmp detects mod_cluster Management Protocol (MCMP) and dumps
+ its configuration. [Frank Spierings]
+
+ + [GH#365] sslv2-drown detects vulnerability to the DROWN attack, including
+ CVE-2016-0703 and CVE-2016-0704 that enable fast attacks on OpenSSL.
+ [Bertrand Bonnefoy-Claudet]
+
+ + vnc-title logs in to VNC servers and grabs the desktop title, geometry, and
+ color depth. [Daniel Miller]
+
+o Integrated all of your IPv4 OS fingerprint submissions from January
+ to April (539 of them). Added 98 fingerprints, bringing the new total
+ to 5187. Additions include Linux 4.4, Android 6.0, Windows Server
+ 2016, and more. [Daniel Miller]
+
+o Integrated all 31 of your IPv6 OS fingerprint submissions from January to
+ June. The classifier added 2 groups and expanded several others. Several
+ Apple OS X groups were consolidated, reducing the total number of groups to
+ 93. [Daniel Miller]
+
+o Update oldest supported Windows version to Vista (Windows 6.0). This enables
+ the use of the poll Nsock engine, which has significant performance and
+ accuracy advantages. Windows XP users can still use Nmap 7.12, available from
+ https://nmap.org/dist/?C=M&O=D [Daniel Miller]
+
+o [NSE] Fix a crash that happened when trying to print the percent done of 0
+ NSE script threads:
+ timing.cc:710 bool ScanProgressMeter::printStats(double, const timeval*): Assertion 'ltime' failed.
+ This would happen if no scripts were scheduled in a scan phase and the user
+ pressed a key or specified a short --stats-every interval. Reported by
+ Richard Petrie. [Daniel Miller]
+
+o [GH#283][Nsock] Avoid "unknown protocol:0" debug messages and an "Unknown
+ address family 0" crash on Windows and other platforms that do not set the
+ src_addr argument to recvfrom for TCP sockets. [Daniel Miller]
+
+o Retrieve the correct network prefix length for an adapter on Windows. If more
+ than one address was configured on an adapter, the same prefix length would
+ be used for both. This incorrect behavior is still used on Windows XP and
+ earlier. Reported by Niels Bohr. [Daniel Miller]
+
+o Changed libdnet-stripped to avoid bailing completely when an interface is
+ encountered with an unsupported hardware address type. Caused "INTERFACES:
+ NONE FOUND!" bugs in Nmap whenever Linux kernel added new hardware address
+ types. [Daniel Miller]
+
+o Improved service detection of Docker and fixed a bug in the output of
+ docker-version script. [Tom Sellers]
+
+o Fix detection of Microsoft Terminal Services (RDP). Our improved TLS service
+ probes were matching on port 3389 before our specific Terminal Services
+ probe, causing the port to be labeled as "ssl/unknown". Reported by Josh
+ Amishav-Zlatin.
+
+o [NSE] Update to enable smb-os-discovery to augment version detection
+ for certain SMB related services using data that the script discovers.
+ [Tom Sellers]
+
+o Improved version detection and descriptions for Microsoft and Samba
+ SMB services. Also addresses certain issues with OS identification.
+ [Tom Sellers]
+
+o [NSE] ssl-enum-ciphers will give a failing score to any server with an RSA
+ certificate whose public key uses an exponent of 1. It will also cap the
+ score of an RC4-ciphersuite handshake at C and output a warning referencing
+ RFC 7465. [Daniel Miller]
+
+o [NSE] Refactored some SSLv2 functionality into a new library, sslv2.lua .
+ [Daniel Miller]
+
+o [GH#399] Zenmap's authorization wrapper now uses an AppleScript method for
+ privilege escalation on OS X, avoiding the deprecated
+ AuthorizationExecuteWithPrivileges method previously used. [Vincent Dumont]
+
+o [GH#454] The OS X binary package is distributed in a .dmg disk image that now
+ features an instructive background image. [Vincent Dumont]
+
+o [GH#420] Our OS X build system now uses gtk-mac-bundler and jhbuild to
+ provide all dependencies. We no longer use Macports for this purpose.
+ [Vincent Dumont]
+
+o [GH#345][Zenmap] On Windows, save Zenmap's stderr output to a writeable
+ location (%LOCALAPPDATA%\zenmap.exe.log or %TEMP%\zenmap.exe.log) instead of
+ next to the zenmap.exe executable. This avoids a warning message when closing
+ Zenmap if it produced any stderr output. [Daniel Miller]
+
+o [GH#379][NSE] Fix http-iis-short-name-brute to report non vulnerable hosts.
+ Reported by alias1. [Paulino Calderon]
+
+o [NSE][GH#371] Fix mysql-audit by adding needed library requires to the
+ mysql-cis.audit file. The script would fail with "Failed to load rulebase"
+ message. [Paolo Perego]
+
+o [NSE][GH#362] Added support for LDAP over udp to ldap-rootdse.nse.
+ Also added version detection and information extraction to match the
+ new LDAP LDAPSearchReq and LDAPSearchReqUDP probes. [Tom Sellers]
+
+o [GH#354] Added new version detection Probes for LDAP services, LDAPSearchReq
+ and LDAPSearchReqUDP. The second is Microsoft Active Directory specific. The
+ Probes will elicit responses from target services that allow better finger
+ -printing and information extraction. Also added nmap-payload entry for
+ detecting LDAP on udp. [Tom Sellers]
+
+o [NSE] More VNC updates: Support for VeNCrypt and Tight auth types, output of
+ authentication sub-types in vnc-info, and all zero-authentication types are
+ recognized and reported. [Daniel Miller]
+
+Nmap 7.12 [2016-03-29]
+
+o [Zenmap] Avoid file corruption in zenmap.conf, reported as files containing
+ many null ("\x00") characters. Example exceptions:
+ TypeError: int() argument must be a string or a number, not 'list'
+ ValueError: unable to parse colour specification
+
+o [NSE] VNC updates including vnc-brute support for TLS security type and
+ negotiating a lower RFB version if the server sends an unknown higher
+ version. [Daniel Miller]
+
+o [NSE] Added STARTTLS support for VNC, NNTP, and LMTP [Daniel Miller]
+
+o Added new service probes and match lines for OpenVPN on UDP and TCP.
+
+Nmap 7.11 [2016-03-22]
+
+o [NSE][GH#341] Added support for diffie-hellman-group-exchange-* SSH key
+ exchange methods to ssh2.lua, allowing ssh-hostkey to run on servers that
+ only support custom Diffie-Hellman groups. [Sergey Khegay]
+
+o [NSE] Added support in sslcert.lua for Microsoft SQL Server's TDS protocol,
+ so you can now grab certs with ssl-cert or check ciphers with
+ ssl-enum-ciphers. [Daniel Miller]
+
+o [Zenmap] Fix a crash when setting default window geometry:
+ TypeError: argument of type 'int' is not iterable
+
+o [Zenmap] Fix a crash when displaying the date from an Nmap XML file due to an
+ empty or unknown locale:
+ File "zenmapCore/NmapParser.py", line 627, in get_formatted_date
+ locale.getpreferredencoding())
+ LookupError: unknown encoding:
+
+o [Zenmap] Fix a crash due to incorrect file paths when installing to
+ /usr/local prefix. Example:
+ Exception: File '/home/blah/.zenmap/scan_profile.usp' does not exist or could not be found!
+
+Nmap 7.10 [2016-03-17]
+
+o [NSE] Added 12 NSE scripts from 7 authors, bringing the total up to 527!
+ They are all listed at https://nmap.org/nsedoc/, and the summaries are below
+ (authors are listed in brackets):
+
+ + [GH#322] http-apache-server-status parses the server status page of
+ Apache's mod_status. [Eric Gershman]
+
+ + http-vuln-cve2013-6786 detects a XSS and URL redirection vulnerability in
+ Allegro RomPager web server. Also added a fingerprint for detecting
+ CVE-2014-4019 to http-fingerprints.lua. [Vlatko Kosturjak]
+
+ + [GH#226] http-vuln-cve2014-3704 detects and exploits the "Drupalgeddon"
+ pre-auth SQL Injection vulnerability in Drupal. [Mariusz Ziulek]
+
+ + imap-ntlm-info extracts hostname and sometimes OS version from
+ NTLM-auth-enabled IMAP services. [Justin Cacak]
+
+ + ipv6-multicast-mld-list discovers IPv6 multicast listeners with MLD probes.
+ The discovery is the same as targets-ipv6-multicast-mld, but the subscribed
+ addresses are decoded and listed. [Alexandru Geana, Daniel Miller]
+
+ + ms-sql-ntlm-info extracts OS version and sometimes hostname from MS SQL
+ Server instances via the NTLM challenge message. [Justin Cacak]
+
+ + nntp-ntlm-info extracts hostname and sometimes OS version from
+ NTLM-auth-enabled NNTP services. [Justin Cacak]
+
+ + pop3-ntlm-info extracts hostname and sometimes OS version from
+ NTLM-auth-enabled POP3 services. [Justin Cacak]
+
+ + rusers retrieves information about logged-on users from the rusersd RPC
+ service. [Daniel Miller]
+
+ + [GH#333] shodan-api queries the Shodan API (https://www.shodan.io) and
+ retrieves open port and service info from their Internet-wide scan data.
+ [Glenn Wilkinson]
+
+ + smtp-ntlm-info extracts hostname and sometimes OS version from
+ NTLM-auth-enabled SMTP and submission services. [Justin Cacak]
+
+ + telnet-ntlm-info extracts hostname and sometimes OS version from
+ NTLM-auth-enabled Telnet services. [Justin Cacak]
+
+o Updated the OpenSSL shipped with our binary builds (Windows, OS X, and Linux
+ RPM) to 1.0.2g with SSLv2 enabled.
+
+o Integrated all of your IPv4 OS fingerprint submissions from October to
+ January (536 of them). Added 104 fingerprints, bringing the new total to
+ 5089. Additions include Linux 4.2, more Windows 10, IBM i 7, and more.
+ Highlights: http://seclists.org/nmap-dev/2016/q1/270 [Daniel Miller]
+
+o Integrated all of your service/version detection fingerprints submitted from
+ October to January (508 of them). The signature count went up 2.2% to 10532.
+ We now detect 1108 protocols, from icy, finger, and rtsp to ipfs,
+ basestation, and minecraft-pe. Highlights:
+ http://seclists.org/nmap-dev/2016/q1/271 [Daniel Miller]
+
+o Integrated all 12 of your IPv6 OS fingerprint submissions from October to
+ January. The classifier added 3 new groups, including new and expanded groups
+ for OS X, bringing the new total to 96. Highlights:
+ http://seclists.org/nmap-dev/2016/q1/273 [Daniel Miller]
+
+o [NSE] Upgrade to http-form-brute allowing correct handling of token-based
+ CSRF protections and cookies. Also, a simple database of common login forms
+ supports Django, Wordpress, MediaWiki, Joomla, and others. [Daniel Miller]
+
+o [Zenmap] [GH#247] Remember window geometry (position and size) from the
+ previous time Zenmap was run. [isjing]
+
+o New service probe for CORBA GIOP (General Inter-ORB Protocol) detection
+ should elicit a not-found exception from GIOP services that do not respond to
+ non-GIOP probes. [Quentin Hardy]
+
+o [GH#284] Fix retrieval of route netmasks on FreeBSD. IPv6 routes were given
+ /32 netmasks regardless of actual netmask configured, resulting in failed
+ routing. Reported by Martin Gysi. [Daniel Miller]
+
+o [GH#272][GH#269] Give option parsing errors after the usage statement, or
+ avoid printing the usage statement in some cases. The options summary has
+ grown quite large, requiring users to scroll to the top to see the error
+ message. [Abhishek Singh]
+
+o [GH#249][Nsock] Avoid a crash on Windows reported by users using Zenmap's
+ Slow Comprehensive Scan profile. In the case of unknown OpenSSL errors,
+ ERR_reason_error_string would return NULL, which could not be printed with
+ the "%s" format string. Reported by Dan Baxter. [Gisle Vanem, Daniel Miller]
+
+o [GH#293][Zenmap] Fix a regression in our build that caused copy-and-paste to
+ not work in Zenmap on Windows.
+
+o Changed Nmap's idea of reserved and private IP addresses to include
+ 169.254/16 (RFC3927) and remove 6/8, 7/8, and 55/8 networks. This list, in
+ libnetutil's isipprivate function, is used to filter -iR randomly generated
+ targets. The newly-valid address ranges belong to the U.S. Department of
+ Defense, so users wanting to avoid those ranges should use their own
+ exclusion lists with --exclude or --exclude-file. [Bill Parker, Daniel
+ Miller]
+
+o Allow the -4 option for Nmap to indicate IPv4 address family. This is the
+ default, and using the option doesn't change anything, but does make it more
+ explicit which address family you want to scan. Using -4 with -6 is an error.
+ [Daniel Miller]
+
+o [GH#265] When provided a verbosity of 0 (-v0), Nmap will not output any text to the
+ screen. This happens at the time of argument parsing, so the usual meaning of
+ "verbosity 0" is preserved. [isjing]
+
+o [NSE][GH#314] Fix naming of SSL2_RC2_128_CBC_WITH_MD5 and
+ SSL2_RC2_128_CBC_EXPORT40_WITH_MD5 ciphers in sslv2 in order to match the
+ draft specification from Mozilla. [Bertrand Bonnefoy-Claudet]
+
+o [NSE][GH#320] Add STARTTLS support to sslv2 to enable SSLv2 detection
+ against services that are not TLS encrypted by default but that support
+ post connection upgrade. This will enable more comprehensive detection
+ of SSLv2 and DROWN (CVE-2016-0800) attack oracles. [Tom Sellers]
+
+o [NSE][GH#301] Added default credential checks for RICOH Web Image Monitor and
+ BeEF to http-default-accounts. [nnposter]
+
+o Properly display Next-hop MTU value from ICMP Type 3 Code 4 Fragmentation
+ Required messages when tracing packets or in Nping output. Improper offset
+ meant we were printing the total IP length. [Sławomir Demeszko]
+
+o [NSE] Added support for DHCP options "TFTP server name" and "Bootfile name"
+ to dhcp.lua and enabled checking for options with a code above 61 by default.
+ [Mike Rykowski]
+
+o [NSE] whois-ip: Don't request a remote IANA assignments data file when the
+ local filesystem will not permit the file to cached in a local file. [jah]
+
+o [NSE] Updated http-php-version hash database to cover all versions from PHP
+ 4.1.0 to PHP 5.4.45. Based on scans of a few thousand PHP web servers pulled
+ from Shodan API (https://www.shodan.io/) [Daniel Miller]
+
+o Use the same ScanProgressMeter for FTP bounce scan (-b) as for the other scan
+ types, allowing periodic status updates with --stats-every or keypress
+ events. [Daniel Miller]
+
+o [GH#274] Use a shorter pcap_select timeout on OpenBSD, just as we do for OS
+ X, old FreeBSD, and Solaris, which use BPF for packet capture and do not have
+ properly select-able fds. Fix by OpenBSD port maintainer [David Carlier]
+
+o Print service info in grepable output for ports which are not listed in
+ nmap-services when a service tunnel (SSL) is detected. Previously, the
+ service info ("ssl|unknown") was not printed unless the service inside the
+ tunnel was positively identified. http://seclists.org/nmap-dev/2015/q4/260
+ [Daniel Miller]
+
+o [NSE] [GH#242] Fix multiple false-positive sources in http-backup-agent.
+ [Tom Sellers]
+
+Nmap 7.01 [2015-12-09]
+
+o Switch to using gtk-mac-bundler and jhbuild for building the OS X installer.
+ This promises to reduce a lot of the problems we've had with local paths and
+ dependencies using the py2app and macports build system. [Daniel Miller]
+
+o The Windows installer is now built with NSIS 2.47 which features LoadLibrary
+ security hardening to prevent DLL hijacking and other unsafe use of temporary
+ directories. Thanks to Stefan Kanthak for reporting the issue to NSIS and to
+ us and the many other projects that use it.
+
+o Updated the OpenSSL shipped with our binary builds (Windows, OS X, and RPM)
+ to 1.0.2e.
+
+o [Zenmap] [GH#235] Fix several failures to launch Zenmap on OS X. The new
+ build process eliminates these errors:
+ IOError: [Errno 2] No such file or directory: '/Applications/Zenmap.app/Contents/Resources/etc/pango/pangorc.in'
+ LSOpenURLsWithRole() failed for the application /Applications/Zenmap.app with error -10810.
+
+o [NSE] [GH#254] Update the TLSSessionRequest probe in ssl-enum-ciphers to
+ match the one in nmap-service-probes, which was fixed previously to correct a
+ length calculation error. [Daniel Miller]
+
+o [NSE] [GH#251] Correct false positives and unexpected behavior in http-*
+ scripts which used http.identify_404 to determine when a file was not found
+ on the target. The function was following redirects, which could be an
+ indication of a soft-404 response. [Tom Sellers]
+
+o [NSE] [GH#241] Fix a false-positive in hnap-info when the target responds
+ with 200 OK to any request. [Tom Sellers]
+
+o [NSE] [GH#244] Fix an error response in xmlrpc-methods when run against a
+ non-HTTP service. The expected behavior is no output. [Niklaus Schiess]
+
+o [NSE] Fix SSN validation function in http-grep, reported by Bruce Barnett.
+
+Nmap 7.00 [2015-11-19]
+
+o This is the most important release since Nmap 6.00 back in May 2012!
+ For a list of the most significant improvements and new features,
+ see the announcement at: https://nmap.org/7/
+
+o [NSE] Added 6 NSE scripts from 6 authors, bringing the total up to 515!
+ They are all listed at https://nmap.org/nsedoc/, and the summaries are below
+ (authors are listed in brackets):
+
+ + targets-xml extracts target addresses from previous Nmap XML results files.
+ [Daniel Miller]
+
+ + [GH#232] ssl-dh-params checks for problems with weak, non-safe, and
+ export-grade Diffie-Hellman parameters in TLS handshakes. This includes the
+ LOGJAM vulnerability (CVE-2015-4000). [Jacob Gajek]
+
+ + nje-node-brute does brute-forcing of z/OS JES Network Job Entry node names.
+ [Soldier of Fortran]
+
+ + ip-https-discover detectings support for Microsoft's IP over HTTPS
+ tunneling protocol. [Niklaus Schiess]
+
+ + [GH#165] broadcast-sonicwall-discover detects and extracts information from
+ SonicWall firewalls. [Raphael Hoegger]
+
+ + [GH#38] http-vuln-cve2014-8877 checks for and optionally exploits a
+ vulnerability in CM Download Manager plugin for Wordpress. [Mariusz Ziulek]
+
+o [Ncat] [GH#151] [GH#142] New option --no-shutdown prevents Ncat from shutting
+ down when it reads EOF on stdin. This is the same as traditional netcat's
+ "-d" option. [Adam Saponara]
+
+o [NSE] [GH#229] Improve parsing in http.lua for multiple Set-Cookie headers in
+ a single response. [nnposter]
+
+Nmap 6.49BETA6 [2015-11-03]
+
+o Integrated all of your IPv6 OS fingerprint submissions from April to October
+ (only 9 of them!). We are steadily improving the IPv6 database, but we need
+ your submissions. The classifier added 3 new groups, bringing the new total
+ to 93. Highlights: http://seclists.org/nmap-dev/2015/q4/61 [Daniel Miller]
+
+o Integrated all of your IPv4 OS fingerprint submissions from February to
+ October (1065 of them). Added 219 fingerprints, bringing the new total to
+ 4985. Additions include Linux 4.1, Windows 10, OS X 10.11, iOS 9, FreeBSD
+ 11.0, Android 5.1, and more. Highlights:
+ http://seclists.org/nmap-dev/2015/q4/60 [Daniel Miller]
+
+o Integrated all of your service/version detection fingerprints submitted from
+ February to October (800+ of them). The signature count went up 2.5% to
+ 10293. We now detect 1089 protocols, from afp, bitcoin, and caldav to
+ xml-rpc, yiff, and zebra. Highlights: http://seclists.org/nmap-dev/2015/q4/62
+ [Daniel Miller]
+
+o [NSE] Added 10 NSE scripts from 5 authors, bringing the total up to 509!
+ They are all listed at https://nmap.org/nsedoc/, and the summaries are below
+ (authors are listed in brackets):
+
+ + knx-gateway-discover and knx-gateway-info scripts gather information from
+ multicast and unicast KNX gateways, which connect home automation systems
+ to IP networks. [Niklaus Schiess, Dominik Schneider]
+
+ + http-ls parses web server directory index pages with optional recursion.
+ [Pierre Lalet]
+
+ + xmlrpc-methods perfoms introspection of xmlrpc services and lists methods
+ and their descriptions. [Gyanendra Mishra]
+
+ + http-fetch can be used like wget or curl to fetch all files, specific
+ filenames, or files that match a given pattern. [Gyanendra Mishra]
+
+ + http-svn-enum enumerates users of a Subversion repository by examining
+ commit logs. [Gyanendra Mishra]
+
+ + http-svn-info requests information from a Subversion repository, similar to
+ the "svn info" command. [Gyanendra Mishra]
+
+ + hnap-info detects and outputs info for Home Network Administration Protocol
+ devices. [Gyanendra Mishra]
+
+ + http-webdav-scan detects WebDAV servers and reports allowed methods and
+ directory listing. [Gyanendra Mishra]
+
+ + tor-consensus-checker checks the target's address with the Tor directory
+ authorities to determine if a target is a known Tor node. [Jiayi Ye]
+
+o [NSE] Several scripts have been split, combined, or renamed:
+
+ + [GH#171] smb-check-vulns has been split into:
+ * smb-vuln-conficker
+ * smb-vuln-cve2009-3103
+ * smb-vuln-ms06-025
+ * smb-vuln-ms07-029
+ * smb-vuln-regsvc-dos
+ * smb-vuln-ms08-067
+ The scripts now use the vulns library, and the "unsafe" script-arg has been
+ replaced by putting the scripts into the "dos" category. [Paulino Calderon]
+
+ + http-email-harvest was removed, as the new http-grep does email address
+ scraping by default. [Gyanendra Mishra]
+
+ + http-drupal-modules was renamed to http-drupal-enum. Extended to enumerate
+ both themes and modules of Drupal installaions. [Gyanendra Mishra]
+
+o [Ncat] [GH#193] Fix Ncat listen mode over Unix sockets (named pipes) on OS X.
+ This was crashing with the error:
+ Ncat: getnameinfo failed: Undefined error: 0 QUITTING.
+ Fixed by forcing the name to "localhost" [Michael Wallner]
+
+o [Zenmap] Fix a crash in Zenmap when using Compare Results:
+ AttributeError: 'NoneType' object has no attribute 'get_nmap_output'
+ [Daniel Miller]
+
+o [NSE] [GH#194] Add support for reading fragmented TLS messages to
+ ssl-enum-ciphers. [Jacob Gajek]
+
+o [GH#51] Added IPv6 support to nmap_mass_rdns, improved reverse DNS cache,
+ and refactored DNS code to improve readability and
+ extensibility. All in all, this makes the rDNS portion of IPv6 scans
+ much faster. [Gioacchino Mazzurco]
+
+o [NSE] Added NTLM brute support to http-brute. [Gyanendra Mishra]
+
+o [NSE] Added NTLM authentication support to http.lua and a related function to create
+ an ntlm v2 session response in smbauth.lua. [Gyanendra Mishra]
+
+o [NSE] [GH#106] Added a new NSE module, ls.lua, for accumulating and
+ outputting file and directory listings. The afp-ls, nfs-ls, and smb-ls
+ scripts have been converted to use this module. [Pierre Lalet]
+
+o [NSE] bacnet-info.nse and s7-info.nse were added to the version category.
+ [Paulino Calderon]
+
+o [NSE] Added 124 new identifiers to bacnet-info.nse vendor database.
+ [Paulino Calderon]
+
+o [NSE] Fixed bacnet-info.nse to bind to the service port detected
+ during scan instead of fixed port. [Paulino Calderon]
+
+o [NSE] Enhanced reporting of elliptic curve names and strengths in
+ ssl-enum-ciphers. The name of the curve is now reported instead of just "ec"
+ [Brandon Paulsen]
+
+o [GH#75] Normalize Makefile targets to use the same verb-project format, e.g.
+ build-ncat, check-zenmap, install-nping, clean-nsock [Gioacchino Mazzurco]
+
+o [NSE] Added builtin pattern and multiple pattern search to http-grep. [Gyanendra Mishra]
+
+o [NSE] http-crossdomainxml is now http-cross-domain-policy and supports client
+ access policies and uses the new SLAXML parser. [Gyanendra Mishra]
+
+o [NSE] Added a patch for vulns lib that allows list of tables to be submitted
+ to fields in the vulns report. [Jacob Gajek]
+
+o [NSE] Added additional checks for successful PUT request in http-put.
+ [Oleg Mitrofanov]
+
+o [NSE] Added an update for http-methods that checks all possible methods not in
+ Allow or Public header of OPTIONS response. [Gyanendra Mishra]
+
+o [NSE] Added SLAXML, an XML parser in Lua originally written by Gavin Kistner
+ (a.k.a. Phrogz). [Gyanendra Mishra]
+
+o [NSE] [GH#122] Update the snmp-brute and other snmp-* scripts to use the
+ creds library to store brute-forced snmp community strings. This allows Nmap
+ to use the correct brute-forced string for each host. [Gioacchino Mazzurco]
+
+o Several improvements to TLS/SSL detection in nmap-service-probes. A new
+ probe, TLSSessionReq, and improvements to default SSL ports should help speed
+ up -sV scans. http://seclists.org/nmap-dev/2015/q2/17 [Daniel Miller]
+
+o [Nsock] Clean up the API so that nsp_* calls are now nsock_pool_* and nsi_*
+ are nsock_iod_*. Simplify Nsock SSL init API, and make logging global to the
+ library instead of associated with a nspool. [Henri Doreau]
+
+o [GH#181] The configure script now prints a summary of configured options.
+ Most importantly, it warns if OpenSSL was not found, since most users will
+ want this library compiled in. [Gioacchino Mazzurco]
+
+o Define TCP Options for SYN scan in nmap.h instead of literally throughout.
+ This string is used by p0f and other IDS to detect Nmap scans, so having it a
+ compile-time option is a step towards better evasion. [Daniel Miller]
+
+o [GH#51] Nmap's parallel reverse-DNS resolver now handles IPv6 addresses. This
+ should result in faster -6 scans. The old behavior is available with
+ --system-dns. [Gioacchino Mazzurco]
+
+o [NSE] Fix a couple odd bugs in NSE command-line parsing. Most notably,
+ --script broadcast-* will now work (generally, wildcards with scripts whose
+ name begins with a category name were not working properly). [Daniel Miller]
+
+o [NSE] [GH#113] http-form-fuzzer will now stop increasing the size of a
+ request when an HTTP 413 or 414 error indicates the web server will not
+ accept a larger request. [Gioacchino Mazzurco]
+
+o [NSE] [GH#159] Add the ability to tag credentials in the creds library with
+ freeform text for easy retrieval. This gives necessary granularity to track
+ credentials to multiple web apps on a single host+port. [Gioacchino Mazzurco]
+
+Nmap 6.49BETA5 [2015-09-25]
+
+o Work around a bug which could cause Nmap to hang when running
+ multiple instances at once on Windows. The actual bug appears to be
+ in the WinPCAP driver in that it hanges when accessed via
+ OpenServiceA by multiple processes at once. So for now we have added
+ a mutex to prevent even multiple Nmap processes from making
+ concurrent calls to this part of WinPcap. We've received the reports
+ from multiple users on Windows 8.1 and Windows Server 2012 R2 and
+ this fix seems to resolve the hang for them. [Daniel Miller]
+
+o [GH#212][NSE] Fix http.get_url function which was wrongly attempting
+ non-SSL HTTP requests first when passed https URLs. [jah]
+
+o [GH#201] Fix Ndiff interpreter path problems in the OS X .dmg
+ installer which could prevent Ndiff (and the related Zenmap "compare
+ results" window) from working on OS X in some cases. [Daniel Miller]
+
+o Fix Nmap's DTD, which did not recognize that the script element
+ could contain character data when a script returns a number or a
+ boolean. [Jonathan Daugherty]
+
+o [GH#172][NSE] Fix reporting of DH parameter sizes by
+ ssl-enum-ciphers. The number shown was the length in bytes, not bits
+ as it should have been. Reported by Michael Staruch. [Brandon
+ Paulsen]
+
+o Our Windows Nmap packages are now compiled with the older platform
+ toolset (v120_xp rather than v120) and so they may work with Windows
+ XP again for the dwindling number of users still on that operating
+ system.
+
+o [GH#34] Disable TPACKET_V3 in our included libpcap. This version of
+ the Linux kernel packet ring API has problems that result in lots of
+ lost packets. This patch falls back to TPACKET_V2 or earlier
+ versions if available. [nnposter]
+
+o [NSE] Check for socket errors in iscsi.lua. This was causing the
+ iscsi-info script to crash against some services. [Daniel Miller]
+
+o [NSE] Fix http-useragent-tester, which was using cached HTTP
+ responses instead of testing new User-Agent strings. [Daniel Miller]
+
+o Output a warning when deprecated options are used, and suggest the
+ preferred option. Currently deprecated: -i -o -m -sP -P0 -PN -oM
+ -sR. The warning is only visible with -v. [Daniel Miller]
+
+o Add a fatal error for options like -oG- which is interpreted as the
+ deprecated -o option, outputting to a file named "G-", instead of
+ the expected behavior of -oG - (Grepable output to stdout). [Daniel
+ Miller]
+
+o [GH#196] Fix raw packet sending on FreeBSD 10.0 and later. FreeBSD
+ changed byte order of the IPv4 stack, so SYN scan and other raw
+ packet functions were broken. [Edward Napierała] Also reported in
+ [GH#50] by Olli Hauer.
+
+o [GH#183] Fix compilation on Visual Studio 2010, which failed with
+ error: "service_scan.cc(2559): error C2065: 'EOPNOTSUPP' :
+ undeclared identifier" [Daniel Miller]
+
+o [GH#115][NSE] ssl-enum-ciphers will still produce output if OpenSSL
+ (required for certificate parsing) is not available. In cases where
+ handshake strength depends on the certificate, it will be reported
+ as "unknown". [jrchamp]
+
+Nmap 6.49BETA4 [2015-07-06]
+
+o Fix a hang on OS X in Zenmap's Topology page with error
+ zenmap_wrapper.py[857]: GError: Couldn't recognize the image file format for file
+ '/Applications/Zenmap.app/Contents/MacOS/../Resources/share/zenmap/pixmaps/radialnet/padlock.png'
+ http://seclists.org/nmap-dev/2015/q3/8 [Daniel Miller]
+
+o Fix a small memory leak for each target specified as a hostname which fails
+ to resolve. [Daniel Miller]
+
+o Allow 'make check' to succeed when Nmap is configured without OpenSSL
+ support. This was broken due to our NSE unittest library expecting to be able
+ to load every library without error. [Daniel Miller]
+
+o [NSE] Enable ssl-enum-ciphers to safely scan servers with a long handshake
+ intolerance issue which resulted in incomplete results when the handshake was
+ greater than 255 bytes. [Jacob Gajek, Daniel Miller]
+
+o [Ncat] Fix a write overrun in Ncat that could cause a segfault if the -g
+ (source route) option was given too many times. [Daniel Miller]
+
+o [NSE] [GH#168] Allow ssl-enum-ciphers to run on non-typical ports when it is
+ selected by name. It will now send a service detection probe if the port is
+ not a typical SSL port and version scan (-sV) was not used. [Daniel Miller]
+
+Nmap 6.49BETA3 [2015-06-25]
+
+o [GH#166] Fix Ncat listen mode on Solaris and other platforms where struct sockaddr
+ does not have a sa_len member. This also affected use of the -p and -s
+ options. Brandon Haberfeld reported the crash. [Daniel Miller]
+
+o [GH#164] Fix a Zenmap failure ot open on OS X with the error:
+ "dyld: Symbol not found: _iconv Referenced from: /usr/lib/libcups.2.dylib"
+ We had to remove the DYLD_LIBRARY_PATH environment variable from
+ zenmap_wrapper.py. Reported by Robert Strom. [Daniel Miller]
+
+o Report our https URL (https://nmap.org) in more places rather than
+ our non-SSL one. [David Fifield]
+
+o [NSE] Fix Diffie-Hellman parameter extraction in tls.lua. [Jacob Gajek]
+
+Nmap 6.49BETA2 [2015-06-16]
+
+o [GH#154] Fix a crash (assertion error) when Nmap receives an ICMP Host
+ Unreachable message.
+
+o [GH#158] Fix a configure failure when Python is not present, but no Python
+ projects were requested. [Gioacchino Mazzurco]
+
+o [GH#161] [Zenmap] Fix Zenmap on OS X which was failing with
+ zipimport.ZipImportError due to architecture mismatch.
+
+o [NSE] Remove ahbl.org checks from dnsbl.lua, since the service was shut down.
+ [Forrest B.]
+
+Nmap 6.49BETA1 [2015-06-03]
+
+o Integrated all of your IPv4 OS fingerprint submissions from May 2014 to
+ February 2015 (1900+ of them). Added 281 fingerprints, bringing the new total
+ to 4766. Addtions include Linux 3.18, Windows 8.1, OS X 10.10, Android 5.0,
+ FreeBSD 10.1, OpenBSD 5.6, and more. Highlights:
+ http://seclists.org/nmap-dev/2015/q2/169 [Daniel Miller]
+
+o Integrated all of your service/version detection fingerprints submitted from
+ June 2013 to February 2015 (2500+ of them). The signature count soared over
+ the 10000 mark, a 12% increase. We now detect 1062 protocols, from http,
+ telnet, and ftp to jute, bgp, and slurm. Highlights:
+ http://seclists.org/nmap-dev/2015/q2/171 [Daniel Miller]
+
+o Integrated all of your IPv6 OS fingerprint submissions from June 2013 to
+ April 2015 (only 97 of them!). We are steadily improving the IPv6 database,
+ but we need your submissions. The classifier added 9 new groups, bringing the
+ new total to 90. Highlights: http://seclists.org/nmap-dev/2015/q2/170 [Daniel
+ Miller]
+
+o Nmap now has an official bug tracker! We are using Github Issues, which you
+ can reach from http://issues.nmap.org/. We welcome your bug reports,
+ enhancement requests, and code submissions via the Issues and Pull Request
+ features of Github (https://github.com/nmap/nmap), though the repository
+ itself is just a mirror of our authoritative Subversion repository.
+
+o [Zenmap] New Chinese-language (zh) translation from Jie Jiang, new Hindi (hi)
+ translation by Gyanendra Mishra, and updated translations for German (de,
+ Chris Leick), Italian (it, Jan Reister), Polish (pl, Jacek Wielemborek), and
+ French (fr, MaZ)
+
+o Added options --data <hex string> and --data-string <string> to send custom
+ payloads in scan packet data. [Jay Bosamiya]
+
+o --reason is enabled for verbosity > 2, and now includes the TTL of received
+ packets in Normal output (this was already present in XML) [Jay Bosamiya]
+
+o Fix ICMP Echo (-PE) host discovery for IPv6, broken since 6.45, caused by
+ failing to set the ICMP ID for outgoing packets which is used to match
+ incoming responses. [Andrew Waters]
+
+o Solve a crash on Windows (reported on Windows 8.1 on Surface Pro 3) caused by
+ passing a NULL pointer to a WinPcap function that then tries to write an
+ error message to it. [Peter Malecka]
+
+o Enhance Nmap's tcpwrapped service detection by using a shorter timeout for
+ the tcpwrapped designation. This prevents falsely labeling services as
+ tcpwrapped which merely have a read timeout shorter than 6 seconds. Full
+ discussion: http://issues.nmap.org/39 [nnposter, Daniel Miller]
+
+o All nmap.org pages are now available SSL-secured to improve privacy
+ and ensure your binaries can't be tampered with in transit. So be
+ sure to download from https://nmap.org/download.html . We will soon
+ remove the non-SSL version of the site. We still offer GPG-signed
+ binaries as well: https://nmap.org/book/install.html#inst-integrity
+
+o [NSE] Added 25 NSE scripts from 17 authors, bringing the total up to 494!
+ They are all listed at https://nmap.org/nsedoc/, and the summaries are below
+ (authors are listed in brackets):
+
+ + bacnet-info gets device information from SCADA/ICS devices via BACnet
+ (Building Automation and Control Networks) [Stephen Hilt, Michael Toecker]
+
+ + docker-version detects and fingerprints Docker [Claudio Criscione]
+
+ + enip-info gets device information from SCADA/ICS devices via EtherNet/IP
+ [Stephen Hilt]
+
+ + fcrdns performs a Forward-confirmed Reverse DNS lookup and reports
+ anomalous results. [Daniel Miller]
+
+ + http-avaya-ipoffice-users enumerates users in Avaya IP Office 7.x systems.
+ [Paulino Calderon]
+
+ + http-cisco-anyconnect gets version and tunnel information from Cisco SSL
+ VPNs. [Patrik Karlsson]
+
+ + http-crossdomainxml detects overly permissive crossdomain policies and
+ finds trusted domain names available for purchase. [Paulino Calderon]
+
+ + http-shellshock detects web applications vulnerable to Shellshock
+ (CVE-2014-6271). [Paulino Calderon]
+
+ + http-vuln-cve2006-3392 exploits a file disclosure vulnerability in Webmin.
+ [Paul AMAR]
+
+ + http-vuln-cve2014-2126, http-vuln-cve2014-2127, http-vuln-cve2014-2128 and
+ http-vuln-cve2014-2129 detect specific vulnerabilities in Cisco AnyConnect
+ SSL VPNs. [Patrik Karlsson]
+
+ + http-vuln-cve2015-1427 detects Elasticsearch servers vulnerable to remote
+ code execution. [Gyanendra Mishra]
+
+ + http-vuln-cve2015-1635 detects Microsoft Windows systems vulnerable to
+ MS15-034. [Paulino Calderon]
+
+ + http-vuln-misfortune-cookie detects the "Misfortune Cookie" vulnerability
+ in Allegro RomPager 4.07, commonly used in SOHO routers for TR-069 access.
+ [Andrew Orr]
+
+ + http-wordpress-plugins was renamed http-wordpress-enum and extended to
+ enumerate both plugins and themes of Wordpress installations and their
+ versions. http-wordpress-enum is now http-wordpress-users. [Paulino Calderon]
+
+ + mikrotik-routeros-brute performs password auditing attacks against
+ Mikrotik's RouterOS API. [Paulino Calderon]
+
+ + omron-info gets device information from Omron PLCs via the FINS service.
+ [Stephen Hilt]
+
+ + s7-info gets device information from Siemens PLCs via the S7 service,
+ tunneled over ISO-TSAP on TCP port 102. [Stephen Hilt]
+
+ + snmp-info gets the enterprise number and other information from the
+ snmpEngineID in an SNMPv3 response packet. [Daniel Miller]
+
+ + ssl-ccs-injection detects whether a server is vulnerable to the SSL/TLS
+ CCS Injection vulnerability (CVE-2014-0224) [Claudiu Perta]
+
+ + ssl-poodle detects the POODLE bug in SSLv3 (CVE-2014-3566) [Daniel Miller]
+
+ + supermicro-ipmi-conf exploits Supermicro IPMI/BMC controllers. [Paulino
+ Calderon]
+
+ + targets-ipv6-map4to6 generates target IPv6 addresses which correspond to
+ IPv4 addresses mapped within a particular IPv6 subnet. [Raúl Fuentes]
+
+ + targets-ipv6-wordlist generates target IPv6 addresses from a wordlist made
+ of hexadecimal characters. [Raúl Fuentes]
+
+o Update our Windows build system to VS 2013 on Windows 8.1. Also, we now build
+ our included OpenSSL with DEP, ASLR, and SafeSEH enabled. [Daniel Miller]
+
+o Our OS X installer is now built for a minimum supported version of 10.8
+ (Mountain Lion), a much-needed update from 10.5 (Leopard). Additionally,
+ OpenSSL is now statically linked, allowing us to distribute the latest from
+ Macports instead of being subjected to the 0.9.8 branch still in use as of
+ 10.9. [Daniel Miller]
+
+o Add 2 more ASCII-art configure splash images to be rotated randomly with the
+ traditional dragon image. New ideas for other images to use here may be sent
+ to dev@nmap.org. [Jay Bosamiya, Daniel Miller]
+
+o Solve a crash on Windows (reported on Windows 8.1 on Surface Pro 3) caused by
+ passing a NULL pointer to a WinPcap function that then tries to write an
+ error message to it. [Peter Malecka]
+
+o Fix compilation and several bugs on AIX. [Daniel Miller]
+
+o Fix a bug in libdnet-stripped on Solaris that resulted in the wrong MAC
+ address being detected for all interfaces.
+ http://seclists.org/nmap-dev/2015/q2/1 [Daniel Miller]
+
+o New features for the IPv6 OS detection engine allow for better classification
+ of systems: IPv6 guessed initial hop limit (TTL) and ratio of TCP initial
+ window size to maximum segment size. [Alexandru Geana]
+
+o [NSE] Rework ssl-enum-ciphers to actually score the strength of the SSL/TLS
+ handshake, including certificate key size and DH parameters if applicable.
+ This is similar to Qualys's SSL Labs scanner, and means that we no longer
+ maintain a list of scores per ciphersuite. [Daniel Miller]
+
+o [NSE] Improved http-form-brute autodetection and behavior to handle more
+ unusual-but-valid HTML syntax, non-POST forms, success/failure testing on
+ HTTP headers, and more. [nnposter]
+
+o [NSE] Reduce many NSE default timeouts and base them on Nmap's detected
+ timeouts for those hosts from the port scan phase. Scripts which take timeout
+ script-args can now handle 's' and 'ms' suffixes, just like Nmap's own
+ options. [Daniel Miller]
+
+o [NSE] Remove db2-discover, as its functionality was performed by service
+ version detection since the broadcast portion was separated into
+ broadcast-db2-discover. http://seclists.org/nmap-dev/2014/q3/415 [Daniel
+ Miller]
+
+o Cache dnet names not found on Windows when enumerating interfaces in the
+ Windows Registry. Reduces startup times. [Elon Natovich]
+
+o [NSE] Make smb-ls able to leverage results from smb-enum-shares or list of
+ shares specified on command line. [Pierre Lalet]
+
+o [NSE] Fix X509 cert date parsing for dates after 2049. Reported by Teppo
+ Turtiainen. [Daniel Miller]
+
+o Handle a bunch of socket errors that can result from odd ICMP Type 3
+ Destination Unreachable messages received during service scanning. The crash
+ reported was "Unexpected error in NSE_TYPE_READ callback. Error code: 92
+ (Protocol not available)" [Daniel Miller]
+
+o Fixed a crash (NULL pointer dereference) in PortList::isTCPwrapped when using
+ -sV and -O on an unknown service not listed in nmap-services. [Pierre Lalet]
+
+o Fixed a benign TOCTOU race between stat() and open() in mmapfile().
+ Reported by Camille Mougey. [Henri Doreau]
+
+o Reduce CPU consumption when using nsock poll engine with no registered FD,
+ by actually calling Poll() for the time until timeout, instead of directly
+ returning zero and entering the loop again. [Henri Doreau]
+
+o Change the URI for the fingerprint submitter to its new location at
+ https://nmap.org/cgi-bin/submit.cgi
+
+o [NSE] Added a check for Cisco ASA version disclosure, CVE-2014-3398, to
+ http-enum in the 'security' category [Daniel Miller]
+
+o Fixed a bug that caused Nmap to fail to find any network interface when a
+ Prism interface is in monitor mode. The fix was to define the
+ ARP_HRD_IEEE80211_PRISM header identifier in the libdnet-stripped code.
+ [Brad Johnson]
+
+o Added a version probe for Tor. [David Fifield]
+
+o [NSE] Add support to citrix-enum-apps-xml for reporting if Citrix
+ published applications in the list are enforcing/requiring the level
+ of ICA/session data encryption shown in the script result.
+ [Tom Sellers]
+
+o [NSE] Updated our Wordpress plugin list to improve the
+ http-wordpress-enum NSE script. We can now detect 34,077 plugins,
+ up from 18,570. [Danila Poyarkov]
+
+o [NSE] Add the signature algorithm that was used to sign the target port's
+ x509 certificate to the output of ssl-cert.nse [Tom Sellers]
+
+o [NSE] Fixed a bug in the sslcert.lua library that was triggered against
+ certain services when version detection was used. [Tom Sellers]
+
+o [NSE] vulns.Report:make_output() now generates XML structured output
+ reports automatically. [Paulino Calderon]
+
+o [NSE] Add port.reason_ttl, host.reason, host.reason_ttl for use in scripts
+ [Jay Bosamiya]
+
+o [NSE] If a version script is run by name, nmap.version_intensity() returns
+ the maximum value (9) for it [Jay Bosamiya]
+
+o [NSE] shortport.version_port_or_service() takes an optional rarity parameter
+ now to run only when version intensity > rarity [Jay Bosamiya]
+
+o [NSE] Added nmap.version_intensity() function so that NSE version scripts
+ can use the argument to --version-intensity (which can be overridden by the
+ script arg 'script-intensity') in order to decide whether to run or not
+ [Jay Bosamiya]
+
+o Improve OS detection; If a port is detected to be 'tcpwrapped', then it will
+ not be used for OS detection. This helps in cases where a firewall might be
+ the port to be 'tcpwrapped' [Jay Bosamiya]
+
+o [Zenmap] Reduce noise generated in Topology View due to anonymous
+ hops [Jay Bosamiya]
+
+o Added option --exclude-ports to Nmap so that some ports can be excluded from
+ scanning (for example, due to policy) [Jay Bosamiya]
+
+o [Zenmap] Catch the MemoryError caused in Zenmap due to large Nmap Output,
+ and display a more helpful error message [Jay Bosamiya]
+
+o Catch badly named output files (such as those unintentionally caused by
+ "-oX -sV logfile.xml") [Jay Bosamiya]
+
+o [Zenmap] Improved NmapParser to increase speed in opening scans. Large scans
+ now open in seconds instead of hours. [Jay Bosamiya]
+
+o Modify the included libpcap configure script to disable certain unused
+ features: bluetooth, usb, usb-can, and dbus sniffing. Dbus support caused a
+ build problem on CentOS 6.5. [Daniel Miller]
+
+o Updated the bundled libpcap from 1.2.1 to 1.5.3 [Jay Bosamiya]
+
+o Correct the Target MAC Address in Nmap's ARP discovery to conform to what IP
+ stacks in currently popular operating systems use. [Jay Bosamiya]
+
+o Fixed a bug which caused Nmap to be unable to have any runtime interaction
+ when called from sudo or from a shell script. [Jay Bosamiya]
+
+o Improvements to whois-ip.nse: fix an unhandled error when a referred-to
+ response could not be understood; add a new pattern to recognise a
+ LACNIC "record not found" type of response and update the way ARIN is
+ queried. [jah]
+
+Nmap 6.47 [2014-08-23]
+
+o Integrated all of your IPv4 OS fingerprint submissions since June 2013
+ (2700+ of them). Added 366 fingerprints, bringing the new total to 4485.
+ Additions include Linux 3.10 - 3.14, iOS 7, OpenBSD 5.4 - 5.5, FreeBSD 9.2,
+ OS X 10.9, Android 4.3, and more. Many existing fingerprints were improved.
+ Highlights: http://seclists.org/nmap-dev/2014/q3/325 [Daniel Miller]
+
+o (Windows, RPMs) Upgraded the included OpenSSL to version 1.0.1i. [Daniel Miller]
+
+o (Windows) Upgraded the included Python to version 2.7.8. [Daniel Miller]
+
+o Removed the External Entity Declaration from the DOCTYPE in Nmap's XML. This
+ was added in 6.45, and resulted in trouble for Nmap XML parsers without
+ network access, as well as increased traffic to Nmap's servers. The doctype
+ is now:
+ <!DOCTYPE nmaprun>
+
+o [Ndiff] Fixed the installation process on Windows, which was missing the
+ actual Ndiff Python module since we separated it from the driver script.
+ [Daniel Miller]
+
+o [Ndiff] Fixed the ndiff.bat wrapper in the zipfile Windows distribution,
+ which was giving the error, "\Microsoft was unexpected at this time." See
+ https://support.microsoft.com/kb/2524009 [Daniel Miller]
+
+o [Zenmap] Fixed the Zenmap .dmg installer for OS X. Zenmap failed to launch,
+ producing this error:
+ Could not import the zenmapGUI.App module:
+ 'dlopen(/Applications/Zenmap.app/Contents/Resources/lib/python2.6/lib-dynload/glib/_glib.so, 2):
+ Library not loaded: /Users/david/macports-10.5/lib/libffi.5.dylib\n
+ Referenced from:
+ /Applications/Zenmap.app/Contents/Resources/lib/python2.6/lib-dynload/glib/_glib.so\n
+ Reason: image not found'.
+
+o [Ncat] Fixed SOCKS5 username/password authentication. The password length was
+ being written in the wrong place, so authentication could not succeed.
+ Reported with patch by Pierluigi Vittori.
+
+o Avoid formatting NULL as "%s" when running nmap --iflist. GNU libc converts
+ this to the string "(null)", but it caused segfault on Solaris. [Daniel Miller]
+
+o [Zenmap][Ndiff] Avoid crashing when users have the antiquated PyXML package
+ installed. Python tries to be nice and loads it when we import xml, but it
+ isn't compatible. Instead, we force Python to use the standard library xml
+ module. [Daniel Miller]
+
+o Handle ICMP admin-prohibited messages when doing service version detection.
+ Crash reported by Nathan Stocks was: Unexpected error in NSE_TYPE_READ
+ callback. Error code: 101 (Network is unreachable) [David Fifield]
+
+o [NSE] Fix a bug causing http.head to not honor redirects. [Patrik Karlsson]
+
+o [Zenmap] Fix a bug in DiffViewer causing this crash:
+ TypeError: GtkTextBuffer.set_text() argument 1 must be string or read-only
+ buffer, not NmapParserSAX
+ Crash happened when trying to compare two scans within Zenmap. [Daniel Miller]
+
+Nmap 6.46 [2014-04-18]
+
+o [NSE] Made numerous improvements to ssl-heartbleed to provide
+ more reliable detection of the vulnerability.
+
+o [Zenmap] Fixed a bug which caused this crash message:
+ IOError: [Errno socket error] [Errno 10060] A connection attempt failed
+ because the connected party did not properly respond after a period of
+ time, or established connection failed because connected host has
+ failed to
+ respond
+ The bug was caused by us adding a DOCTYPE definition to Nmap's XML
+ output which caused Python's XML parser to try and fetch the DTD
+ every time it parses an XML file. We now override that DTD-fetching
+ behavior. [Daniel Miller]
+
+o [NSE] Fix some bugs which could cause snmp-ios-config and
+ snmp-sysdescr scripts to crash
+ (http://seclists.org/nmap-dev/2014/q2/120) [Patrik Karlsson]
+
+o [NSE] Improved performance of citrix.lua library when handling large XML
+ responses containing application lists. [Tom Sellers]
+
+Nmap 6.45 [2014-04-11]
+
+o Idle scan now supports IPv6. IPv6 packets don't usually come with
+ fragments identifiers like IPv4 packets do, so new techniques had to
+ be developed to make idle scan possible. The implementation is by
+ Mathias Morbitzer, who made it the subject of his master's thesis.
+
+o When doing a ping scan (-sn), the --open option will prevent down hosts from
+ being shown when -v is specified. This aligns with similar output for other
+ scan types. [Daniel Miller]
+
+o Fixed some syntax problems in nmap-os-db that were caused by some automated
+ merging of fingerprints (http://seclists.org/nmap-dev/2013/q4/68) [Daniel
+ Miller]
+
+o New service probes and fingerprints for Quake1, TeamSpeak3, xmlsysd,
+ Freelancer game server, All-Seeing Eye, AndroMouse, and AirHD.
+
+o Update included WinPcap to version 4.1.3 [Rob Nicholls]
+
+o [NSE] Convert many more scripts to emit structured XML output
+ (https://nmap.org/book/nse-api.html#nse-structured-output) [Daniel Miller]
+
+o [NSE] Added 24 NSE scripts from 12 authors, bringing the total up to 470.
+ They are all listed at https://nmap.org/nsedoc/, and the summaries are
+ below (authors are listed in brackets):
+
+ + allseeingeye-info gathers information from games using this query protocol.
+ A version detection probe was also added. [Marin Maržić]
+
+ + freelancer-info gathers information about the Freelancer game server. Also
+ added a related version detection probe and UDP protocol payload for
+ detecting the service. [Marin Maržić]
+
+ + http-csrf detects Cross Site Request Forgeries (CSRF) vulnerabilities by
+ searching for CSRF tokens in HTML forms. [George Chatzisofroniou]
+
+ + http-devframework finds out the technology behind the target website based
+ on HTTP headers, static URLs, and other content and resources. [George
+ Chatzisofroniou]
+
+ + http-dlink-backdoor detects DLink routers with firmware backdoor allowing
+ admin access over HTTP interface. [Patrik Karlsson]
+
+ + http-dombased-xss finds potential DOM-based Cross-site Scripting (XSS)
+ vulnerabilities by searching for specific patterns in JavaScript resources.
+ [George Chatzisofroniou]
+
+ + http-errors crawls for URIs that return error status codes (HTTP 400 and
+ above). [George Chatzisofroniou]
+
+ + http-feed crawls a web site for Atom and RSS feeds. [George Chatzisofroniou]
+
+ + http-iis-short-name-brute detects Microsoft IIS servers vulnerable to a
+ file/folder name disclosure and a denial of service vulnerability. The
+ script obtains the "shortnames" of the files and folders in the webroot
+ folder. [Paulino Calderon]
+
+ + http-mobileversion-checker checks for mobile versions of web pages by
+ setting an Android User-Agent header and checking for HTTP redirects.
+ [George Chatzisofroniou]
+
+ + http-ntlm-info gets server information from Web servers that require NTLM
+ authentication. [Justin Cacak]
+
+ + http-referer-checker finds JavaScript resources that are included from other
+ domains, increasing a website's attack surface. [George Chatzisofroniou]
+
+ + http-server-header grabs the Server header as a last-ditch effort to get a
+ software version. This can't be done as a softmatch because of the need to
+ match non-HTTP services that obey some HTTP requests. [Daniel Miller]
+
+ + http-useragent-tester checks for sites that redirect common Web spider
+ User-Agents to a different page than browsers get. [George Chatzisofroniou]
+
+ + http-vuln-cve2013-7091 (released as http-vuln-zimbra-lfi) looks for
+ CVE-2013-7091, a LFI vulnerability in Zimbra. [Paul AMAR, Ron Bowes]
+
+ + http-xssed searches the xssed.com database of Cross-site Scripting
+ vulnerabilities for previously-reported XSS vulnerabilities in the target.
+ [George Chatzisofroniou]
+
+ + qconn-exec tests the QNX QCONN service for remote command execution.
+ [Brendan Coles]
+
+ + quake1-info retrieves server and player information from Quake 1 game
+ servers. Reports potential DoS amplification factor. [Ulrik Haugen]
+
+ + rfc868-time gets the date and time from an RFC 868 Time server. [Daniel
+ Miller]
+
+ + ssl-heartbleed detects the Heartbleed bug in OpenSSL CVE-2014-0160 [Patrik
+ Karlsson]
+
+ + sstp-discover discovers Microsoft's Secure Socket Tunnelling Protocol
+ (http://msdn.microsoft.com/en-us/library/cc247338.aspx) [Niklaus Schiess]
+
+ + unittest runs unit tests found in NSE libraries. The corresponding
+ unittest.lua library has examples. Run `nmap --script=unittest
+ --script-args=unittest.run -d` to run the tests. [Daniel Miller]
+
+ + weblogic-t3-info detects the T3 RMI protocol used by Oracle/BEA Weblogic
+ and extracts the Weblogic version. [Alessandro Zanni, Daniel Miller]
+
+ + whois-ip and whois-domain replace the whois script, which previously could
+ only collect whois info for IP addresses. [George Chatzisofroniou]
+
+o [NSE] Fixed an error-handling bug in socks-open-proxy that caused it to fail
+ when scanning a SOCKS4-only proxy. Reported on IRC by Husky. [Daniel Miller]
+
+o [NSE] Improved ntp-info script to handle underscores in returned
+ data. [nnposter]
+
+o [NSE] Add unicode library for decoding and encoding UTF-8, UTF-16, CP437 and
+ other character sets to Unicode code points. Scripts that previously just
+ added or skipped nulls in UTF-16 data can use this to support non-ASCII
+ characters. [Daniel Miller]
+
+o Significant code and documentation cleanup effort, fixing file encodings,
+ trailing whitespace, indentation, spelling mistakes, NSEdoc formatting
+ issues, PEP 8 compliance for Python, deprecation cleanup under python -3,
+ cleanup of warnings from LLVM's AddressSanitizer. [Daniel Miller]
+
+o [Ncat] Added support for socks5 and corresponding regression tests.
+ [Marek Lukaszuk, Petr Stodulka]
+
+o Added TCP support to dns.lua. [John Bond]
+
+o Added safe fd_set operations. This makes nmap fail gracefully instead of
+ crashing when the number of file descriptors grows over FD_SETSIZE. Jacek
+ Wielemborek reported the crash. [Henri Doreau]
+
+o [NSE] Added tls library for functions related to SSLv3 and TLS messages.
+ Existing ssl-enum-ciphers, ssl-date, and tls-nextprotoneg scripts were
+ updated to use this library. [Daniel Miller]
+
+o Added NSE and Zenmap unit tests to "make check" [Daniel Miller]
+
+o [NSE] Enable http-enum to use the large Nikto fingerprint database at runtime
+ if provided by the user. For licensing reasons, we do not distribute this
+ database, but the integration effort has the blessing of the Nikto folks.
+ [George Chatzisofroniou]
+
+o Updated bundled liblua from 5.2.2 to 5.2.3 (bugfix release) [Daniel Miller]
+
+o Added version detection signatures and probes for a bunch of Android
+ remote mouse/keyboard servers, including AndroMouse, AirHID,
+ Wifi-mouse, and RemoteMouse. [Paul Hemberger]
+
+o [Ncat] Fixed compilation when --without-liblua is specified in
+ configure (an #include needed an ifdef guard). [Quentin Glidic]
+
+o Fixed a bug in libdnet with handling interfaces with AF_LINK addresses on
+ FreeBSD >9 reported by idwer on IRC. Likely affected other *BSDs. Handled by
+ skipping these non-network addresses. [Daniel Miller]
+
+o Fixed a bug with UDP checksum calculation. When the UDP checksum is zero
+ (0x0000), it must be transmitted as 1's-complement -0 (0xffff) to avoid
+ ambiguity with +0, which indicates no checksum was calculated. This affected
+ UDP on IPv4 only. Reported by Michael Weber. [Daniel Miller]
+
+o [NSE] Removed a fixed value (28428) which was being set for the Request ID in
+ the snmpWalk library function; a value based on nmap.clock_ms will now be set
+ instead. [jah]
+
+o The ICMP ID of ICMP probes is now matched against the sent ICMP ID,
+ to reduce the chance of false matches. Patch by Chris Johnson.
+
+o [NSE] Made telnet-brute support multiple parallel guessing threads,
+ reuse connections, and support password-only logins. [nnposter]
+
+o [NSE] Made the table returned by ssh1.fetch_host_key contain a "key"
+ element, like that of ssh2.fetch_host_key. This fixed a crash in the
+ ssh-hostkey script reported by Dan Farmer and Florian Pelgrim. The
+ "key" element of ssh2.fetch_host_key now is base64-encoded, to match
+ the format used by the known_hosts file. [David Fifield]
+
+o [Nsock] Handle timers and timeouts via a priority queue (using a heap)
+ for improved performance. Nsock now only iterates over events which are
+ completed or expired instead of inspecting the entire event set at each
+ iteration. [Henri Doreau]
+
+o [NSE] Update dns-cache-snoop script to use a new list of top 50
+ domains rather than a 2010 list. [Nicolle Neulist]
+
+o [Zenmap] Fixed a crash that would happen when you entered a search
+ term starting with a colon: "AttributeError:
+ 'FilteredNetworkInventory' object has no attribute 'match_'".
+ Reported by Kris Paernell. [David Fifield]
+
+o [Ncat] Added NCAT_PROTO, NCAT_REMOTE_ADDR, NCAT_REMOTE_PORT, NCAT_LOCAL_ADDR
+ and NCAT_LOCAL_PORT environment variables being set in all --*-exec child
+ processes.
+
+Nmap 6.40 [2013-07-29]
+
+o [Ncat] Added --lua-exec. This feature is basically the equivalent of 'ncat
+ --sh-exec "lua <scriptname>"' and allows you to run Lua scripts with Ncat,
+ redirecting all stdin and stdout operations to the socket connection. See
+ https://nmap.org/book/ncat-man-command-options.html [Jacek Wielemborek]
+
+o Integrated all of your IPv4 OS fingerprint submissions since January
+ (1,300 of them). Added 91 fingerprints, bringing the new total to 4,118.
+ Additions include Linux 3.7, iOS 6.1, OpenBSD 5.3, AIX 7.1, and more.
+ Many existing fingerprints were improved. Highlights:
+ http://seclists.org/nmap-dev/2013/q2/518. [David Fifield]
+
+o Integrated all of your service/version detection fingerprints submitted
+ since January (737 of them)! Our signature count jumped by 273 to 8,979.
+ We still detect 897 protocols, from extremely popular ones like http, ssh,
+ smtp and imap to the more obscure airdroid, gopher-proxy, and
+ enemyterritory. Highlights:
+ http://seclists.org/nmap-dev/2013/q3/80. [David Fifield]
+
+o Integrated your latest IPv6 OS submissions and corrections. We're still
+ low on IPv6 fingerprints, so please scan any IPv6 systems you own or
+ administer and submit them to https://nmap.org/submit/. Both new
+ fingerprints (if Nmap doesn't find a good match) and corrections (if Nmap
+ guesses wrong) are useful. [David Fifield]
+
+o [Nsock] Added initial proxy support to Nsock. Nmap version detection
+ and NSE can now establish TCP connections through chains of one or
+ more CONNECT or SOCKS4 proxies. Use the Nmap --proxies option with a
+ chain of one or more proxies as the argument (example:
+ http://localhost:8080,socks4://someproxy.example.com). Note that
+ only version detection and NSE are supported so far (no port
+ scanning or host discovery), and there are other limitations
+ described in the man page. [Henri Doreau]
+
+o [NSE] Added 14 NSE scripts from 6 authors, bringing the total up to 446.
+ They are all listed at https://nmap.org/nsedoc/, and the summaries are
+ below (authors are listed in brackets):
+
+ + hostmap-ip2hosts finds hostnames that resolve to the target's IP address
+ by querying the online database at http://www.ip2hosts.com (uses Bing
+ search results) [Paulino Calderon]
+
+ + http-adobe-coldfusion-apsa1301 attempts to exploit an authentication
+ bypass vulnerability in Adobe Coldfusion servers (APSA13-01:
+ http://www.adobe.com/support/security/advisories/apsa13-01.html) to
+ retrieve a valid administrator's session cookie. [Paulino Calderon]
+
+ + http-coldfusion-subzero attempts to retrieve version, absolute path of
+ administration panel and the file 'password.properties' from vulnerable
+ installations of ColdFusion 9 and 10. [Paulino Calderon]
+
+ + http-comments-displayer extracts and outputs HTML and JavaScript
+ comments from HTTP responses. [George Chatzisofroniou]
+
+ + http-fileupload-exploiter exploits insecure file upload forms in web
+ applications using various techniques like changing the Content-type
+ header or creating valid image files containing the payload in the
+ comment. [George Chatzisofroniou]
+
+ + http-phpmyadmin-dir-traversal exploits a directory traversal
+ vulnerability in phpMyAdmin 2.6.4-pl1 (and possibly other versions) to
+ retrieve remote files on the web server. [Alexey Meshcheryakov]
+
+ + http-stored-xss posts specially crafted strings to every form it
+ encounters and then searches through the website for those strings to
+ determine whether the payloads were successful. [George Chatzisofroniou]
+
+ + http-vuln-cve2013-0156 detects Ruby on Rails servers vulnerable to
+ object injection, remote command executions and denial of service
+ attacks. (CVE-2013-0156) [Paulino Calderon]
+
+ + ike-version obtains information (such as vendor and device type where
+ available) from an IKE service by sending four packets to the host.
+ This scripts tests with both Main and Aggressive Mode and sends multiple
+ transforms per request. [Jesper Kueckelhahn]
+
+ + murmur-version detects the Murmur service (server for the Mumble voice
+ communication client) versions 1.2.X. [Marin Maržić]
+
+ + mysql-enum performs valid-user enumeration against MySQL server using a
+ bug discovered and published by Kingcope
+ (http://seclists.org/fulldisclosure/2012/Dec/9). [Aleksandar Nikolic]
+
+ + teamspeak2-version detects the TeamSpeak 2 voice communication server
+ and attempts to determine version and configuration information. [Marin
+ Maržić]
+
+ + ventrilo-info detects the Ventrilo voice communication server service
+ versions 2.1.2 and above and tries to determine version and
+ configuration information. [Marin Maržić]
+
+o Updated the Nmap license agreement to close some loopholes and stop some
+ abusers. It's particularly targeted at companies which distribute
+ malware-laden Nmap installers as we caught Download.com doing last
+ year--http://insecure.org/news/download-com-fiasco.html . The updated
+ license is in the all the normal places, including
+ https://svn.nmap.org/nmap/COPYING.
+
+o [NSE][SECURITY] Oops, there was a vulnerability in one of our 437 NSE scripts. If
+ you ran the (fortunately non-default) http-domino-enum-passwords script
+ with the (fortunately also non-default) domino-enum-passwords.idpath
+ parameter against a malicious server, it could cause an arbitrarily named
+ file to to be written to the client system. Thanks to Trustwave researcher
+ Piotr Duszynski for discovering and reporting the problem. We've fixed
+ that script, and also updated several other scripts to use a new
+ stdnse.filename_escape function for extra safety. This breaks our record
+ of never having a vulnerability in the 16 years that Nmap has existed, but
+ that's still a fairly good run! [David, Fyodor]
+
+o Unicast CIDR-style IPv6 range scanning is now supported, so you can
+ specify targets such as en.wikipedia.org/120. Obviously it will take ages
+ if you specify a huge space. For example, a /64 contains
+ 18,446,744,073,709,551,616 addresses. [David Fifield]
+
+o It's now possible to mix IPv4 range notation with CIDR netmasks in target
+ specifications. For example, 192.168-170.4-100,200.5/16 is effectively the
+ same as 192.168.168-170.0-255.0-255. [David Fifield]
+
+o Timeout script-args are now standardized to use the timespec that Nmap's
+ command-line arguments take (5s, 5000ms, 1h, etc.). Some scripts that
+ previously took an integer number of milliseconds will now treat that as a
+ number of seconds if not explicitly denoted as ms. [Daniel Miller]
+
+o Nmap may now partially rearrange its target list for more efficient
+ host groups. Previously, a single target with a different interface,
+ or with an IP address the same as a that of a target already in the
+ group, would cause the group to be broken off at whatever size it
+ was. Now, we buffer a small number of such targets, and keep looking
+ through the input for more targets to fill out the current group.
+ [David Fifield]
+
+o [Ncat] The -i option (idle timeout) now works in listen mode as well as
+ connect mode. [Tomas Hozza]
+
+o [Ncat] Ncat now support chained certificates with the --ssl-cert
+ option. [Greg Bailey]
+
+o [Nping] Nping now checks for a matching ICMP ID on echo replies, to avoid
+ receiving crosstalk from other ping programs running at the same
+ time. [David Fifield]
+
+o [NSE] The ipOps.isPrivate library now considers the deprecated site-local
+ prefix fec0::/10 to be private. [Marek Majkowski]
+
+o Nmap's routing table is now sorted first by netmask, then by metric.
+ Previously it was the other way around, which could cause a very general
+ route with a low metric to be preferred over a specific route with a
+ higher metric.
+
+o Routes are now sorted to prefer those with a lower metric. Retrieval of
+ metrics is supported only on Linux and Windows. [David Fifield]
+
+o Fixed a byte-ordering problem on little-endian architectures when doing
+ idle scan with a zombie that uses broken ID increments. [David Fifield]
+
+o Stop parsing TCP options after reaching EOL in libnetutil. Bug reported by
+ Gustavo Moreira. [Henri Doreau]
+
+o [NSE] The dns-ip6-arpa-scan script now optionally accepts "/" syntax for a
+ network mask. Based on a patch by Indula Nayanamith.
+
+o [Ncat] Reduced the default --max-conns limit from 100 to 60 on Windows, to
+ stay within platform limitations. Suggested by Andrey Olkhin.
+
+o Fixed IPv6 routing table alignment on NetBSD.
+
+o Fixed our NSEDoc system so the author field uses UTF-8 and we can spell
+ people's name properly, even if they use crazy non-ASCII characters like
+ Marin Maržić. [David Fifield]
+
+o UDP protocol payloads were added for detecting the Murmer service (a
+ server for the Mumble voice communication client) and TeamSpeak 2 VoIP
+ software.
+
+o [NSE] Added http-phpmyadmin-dir-traversal by Alexey Meshcheryakov.
+
+o Updated libdnet to not SIOCIFNETMASK before SIOCIFADDR on OpenBSD. This
+ was reported to break on -current as of May 2013. [Giovanni Bechis]
+
+o Fixed address matching for SCTP (-PY) ping. [Marin Maržić]
+
+o Removed some non-ANSI-C strftime format strings ("%F") and
+ locale-dependent formats ("%c") from NSE scripts and libraries.
+ C99-specified %F was noticed by Alex Weber. [Daniel Miller]
+
+o [Zenmap] Improved internationalization support:
+ + Added Polish translation by Jacek Wielemborek.
+ + Updated the Italian translation. [Giacomo]
+
+o [Zenmap] Fixed internationalization files. Running in a language other
+ than the default English would result in the error "ValueError: too many
+ values to unpack". [David Fifield]
+
+o [NSE] Updated the included Liblua from version 5.2.1 to 5.2.2. [Patrick
+ Donnelly]
+
+o [Nsock] Added a minimal regression test suite for Nsock. [Henri Doreau]
+
+o [NSE] Updated the redis-brute and redis-info scripts to work against the
+ latest versions of redis server. [Henri Doreau]
+
+o [Ncat] Fixed errors in connecting to IPv6 proxies. [Joachim Henke]
+
+o [NSE] Updated hostmap-bfk to work with the latest version of their website
+ (bfk.de). [Paulino Calderon]
+
+o [NSE] Added XML structured output support to:
+ + xmpp-info, irc-info, sslv2, address-info [Daniel Miller]
+ + hostmap-bfk, hostmap-robtex, hostmap-ip2hosts. [Paulino Calderon]
+ + http-git.nse. [Alex Weber]
+
+o Added new service probes for:
+ + Erlang distribution nodes [Michael Schierl]
+ + Minecraft servers. [Eric Davisson]
+ + Hazelcast data grid. [Pavel Kankovsky]
+
+o [NSE] Rewrote telnet-brute for better compatibility with a variety of
+ telnet servers. [nnposter]
+
+o Fixed a regression that changed the number of delimiters in machine
+ output. [Daniel Miller]
+
+o Fixed a regression in broadcast-dropbox-listener which prevented it from
+ producing output. [Daniel Miller]
+
+o Handle ICMP type 11 (Time Exceeded) responses to port scan probes. Ports
+ will be reported as "filtered", to be consistent with existing Connect
+ scan results, and will have a reason of time-exceeded. DiabloHorn
+ reported this issue via IRC. [Daniel Miller]
+
+o Add new decoders (BROWSER, DHCP6 and LLMNR) to broadcast-listener and
+ changed output of some of the decoders slightly. [Patrik Karlsson]
+
+o The list of name servers on Windows now ignores those from inactive
+ interfaces. [David Fifield]
+
+o Namespace the pipes used to communicate with subprocesses by PID, to avoid
+ multiple instances of Ncat from interfering with each other. Patch by
+ Andrey Olkhin.
+
+o [NSE] Changed ip-geolocation-geoplugin to use the web service's new output
+ format. Reported by Robin Wood.
+
+o Limited the number of open sockets in ultra_scan to FD_SETSIZE. Very fast
+ connect scans could write past the end of an fd_set and cause a variety of
+ crashes:
+ nmap: scan_engine.cc:978: bool ConnectScanInfo::clearSD(int): Assertion `numSDs > 0' failed.
+ select failed in do_one_select_round(): Bad file descriptor (9)
+ [David Fifield]
+
+o Fixed a bug that prevented Nmap from finding any interfaces when one of
+ them had the type ARP_HDR_APPLETALK; this was the case for AppleTalk
+ interfaces. However, This support is not complete since AppleTalk
+ interfaces use different size hardware addresses than Ethernet. Nmap IP
+ level scans should work without any problem, please refer to the
+ '--send-ip' switch and to the following thread:
+ http://seclists.org/nmap-dev/2013/q1/214. This bug was reported by Steven
+ Gregory Johnson. [Daniel Miller]
+
+o [Nping] Nping on Windows now skips localhost targets for privileged pings
+ on (with an error message) because those generally don't work. [David
+ Fifield]
+
+o [Ncat] Ncat now keeps running in connect mode after receiving EOF from the
+ remote socket, unless --recv-only is in effect. [Tomas Hozza]
+
+o Packet trace of ICMP packets now include the ICMP ID and sequence number
+ by default. [David Fifield]
+
+o [NSE] Fixed various NSEDoc bugs found by David Matousek.
+
+o [Zenmap] Zenmap now understands the NMAP_PRIVILEGED and NMAP_UNPRIVILEGED
+ environment variables. [Tyler Wagner]
+
+o Added an ncat_assert macro. This is similar to assert(), but remains even
+ if NDEBUG is defined. Replaced all Ncat asserts with this. We also moved
+ operation with side effects outside of asserts as yet another layer of
+ bug-prevention [David Fifield].
+
+o Added nmap-fo.xsl, contributed by Tilik Ammon. This converts Nmap XML into
+ XSL-FO, which can be converted into PDF using tools suck as Apache FOP.
+
+o Increased the number of slack file descriptors not used during connect
+ scan. Previously, the calculation did not consider the descriptors used by
+ various open log files. Connect scans using a lot of sockets could fail
+ with the message "Socket creation in sendConnectScanProbe: Too many open
+ files". [David Fifield]
+
+o Changed the --webxml XSL stylesheet to point to the new location of
+ nmap.xsl in the new repository (https://svn.nmap.org/nmap/docs/nmap.xsl).
+ It still may not work in web browsers due to same origin policy (see
+ http://seclists.org/nmap-dev/2013/q1/58). [David Fifield, Simon John]
+
+o [NSE] The vulnerability library can now preserve vulnerability information
+ across multiple ports of the same host. The bug was reported by
+ iphelix. [Djalal Harouni]
+
+o Removed the undocumented -q option, which renamed the nmap process to
+ something like "pine".
+
+o Moved the Japanese man page from man1/jp to man1/ja. JP is a country code
+ while JA is a language code. Reported by Christian Neukirchen.
+
+o [Nsock] Reworked the logging infrastructure to make it more flexible and
+ consistent. Updated Nmap, Nping and Ncat accordingly. Nsock log level can
+ now be adjusted at runtime by pressing d/D in nmap. [Henri Doreau, David
+ Fifield]
+
+o [NSE] Fixed scripts using unconnected UDP sockets. The bug was reported by
+ Dhiru Kholia at http://seclists.org/nmap-dev/2012/q4/422. [David Fifield]
+
+o Made some changes to Ndiff to reduce parsing time when dealing with large
+ Nmap XML output files. [Henri Doreau]
+
+o Clean up the source code a bit to resolve some false positive issues
+ identified by the Parfait static code analysis program. Oracle apparently
+ runs this on programs (including Nmap) that they ship with Solaris. See
+ http://seclists.org/nmap-dev/2012/q4/504. [David Fifield]
+
+o [Zenmap] Fixed a crash that could be caused by opening the About dialog,
+ using the window manager to close it, and opening it again. This was
+ reported by Yashartha Chaturvedi and Jordan Schroeder. [David Fifield]
+
+o [Ncat] Made test-addrset.sh exit with nonzero status if any tests
+ fail. This in turn causes "make check" to fail if any tests fail.
+ [Andreas Stieger]
+
+o Fixed compilation with --without-liblua. The bug was reported by Rick
+ Farina, Nikos Chantziaras, and Alex Turbov. [David Fifield]
+
+o Fixed CRC32c calculation (as used in SCTP scans) on 64-bit
+ platforms. [Pontus Andersson]
+
+o [NSE] Added multicast group name output to
+ broadcast-igmp-discovery.nse. [Vasily Kulikov]
+
+o [NSE] Added new fingerprints for http-enum: Sitecore, Moodle, typo3,
+ SquirrelMail, RoundCube. [Jesper Kückelhahn]
+
+Nmap 6.25 [2012-11-29]
+
+o [NSE] Added CPE to smb-os-discovery output.
+
+o [Ncat] Fixed the printing of warning messages for large arguments to
+ the -i and -w options. [Michal Hlavinka]
+
+o [Ncat] Shut down the write part of connected sockets in listen mode
+ when stdin hits EOF, just as was already done in connect mode.
+ [Michal Hlavinka]
+
+o [Zenmap] Removed a crashing error that could happen when canceling a
+ "Print to File" on Windows:
+ Traceback (most recent call last):
+ File "zenmapGUI\MainWindow.pyo", line 831, in _print_cb
+ File "zenmapGUI\Print.pyo", line 156, in run_print_operation
+ GError: Error from StartDoc
+ This bug was reported by Imre Adácsi. [David Fifield]
+
+o Added some new checks for failed library calls. [Bill Parker]
+
+Nmap 6.20BETA1 [2012-11-16]
+
+o Integrated all of your IPv4 OS fingerprint submissions since January
+ (more than 3,000 of them). Added 373 fingerprints, bringing the new
+ total to 3,946. Additions include Linux 3.6, Windows 8, Windows
+ Server 2012, Mac OS X 10.8, and a ton of new WAPs, printers,
+ routers, and other devices--including our first IP-enabled doorbell!
+ Many existing fingerprints were improved. [David Fifield]
+
+o Integrated all of your service/version detection fingerprints
+ submitted since January (more than 1,500)! Our signature
+ count jumped by more than 400 to 8,645. We now detect 897
+ protocols, from extremely popular ones like http, ssh, smtp and imap
+ to the more obscure airdroid, gopher-proxy, and
+ enemyterritory. [David Fifield]
+
+o Integrated your latest IPv6 OS submissions and corrections. We're
+ still low on IPv6 fingerprints, so please scan any IPv6 systems you
+ own or administer and submit them to https://nmap.org/submit/. Both
+ new fingerprints (if Nmap doesn't find a good match) and corrections
+ (if Nmap guesses wrong) are useful.
+
+o Enabled support for IPv6 traceroute using UDP, SCTP, and IPProto
+ (Next Header) probes. Previously, only TCP and ICMP were
+ supported. [David Fifield]
+
+o Scripts can now return a structured name-value table so that results
+ are query-able from XML output. Scripts can return a string as
+ before, or a table, or a table and a string. In this last case, the
+ table will go to XML output and the string will go to screen output.
+ See https://nmap.org/book/nse-api.html#nse-structured-output [Daniel
+ Miller, David Fifield, Patrick Donnelly]
+
+o [Nsock] Added new poll and kqueue I/O engines for improved
+ performance on Windows and BSD-based systems including Mac OS X.
+ These are in addition to the epoll engine (used on Linux) and the
+ classic select engine fallback for other system. [Henri Doreau]
+
+o [Ncat] Added support for Unix domain sockets. The new -U and
+ --unixsock options activate this mode. These provide compatibility
+ with Hobbit's original Netcat. [Tomas Hozza]
+
+o Moved some Windows dependencies, including OpenSSL, libsvn, and the
+ vcredist files, into a new public Subversion directory
+ /nmap-mswin32-aux and moved it out of the source tarball. This
+ reduces the compressed tarball size from 22 MB to 8 MB and similarly
+ reduces the bandwidth and storage required for an svn checkout.
+ Folks who build Nmap on Windows will need to check out
+ /nmap-mswin32-aux along with /nmap as described at
+ https://nmap.org/book/inst-windows.html#inst-win-source.
+
+o Many of the great features in this release were created by college
+ and grad students generously sponsored by Google's Summer of Code
+ program. Thanks, Google Open Source Department! This year's team
+ of five developers is introduced at
+ http://seclists.org/nmap-dev/2012/q2/204 and their successes
+ documented at http://seclists.org/nmap-dev/2012/q4/138
+
+o [NSE] Replaced old RPC grinder (RPC enumeration, performed as part
+ of version detection when a port seems to run a SunRPC service) with
+ a faster and easier to maintain NSE-based implementation. This also
+ allowed us to remove the crufty old pos_scan scan engine. [Hani
+ Benhabiles]
+
+o Updated our Nmap Scripting Engine to use Lua 5.2 (and then 5.2.1)
+ rather than 5.1. See http://seclists.org/nmap-dev/2012/q2/34 for
+ details. [Patrick Donnelly]
+
+o [NSE] Added 85(!) NSE scripts, bringing the total up to 433. They
+ are all listed at https://nmap.org/nsedoc/, and the summaries are
+ below (authors are listed in brackets):
+
+ + ajp-auth retrieves the authentication scheme and realm of an AJP
+ service (Apache JServ Protocol) that requires authentication. The
+ Apache JServ Protocol is commonly used by web servers to
+ communicate with back-end Java application server
+ containers. [Patrik Karlsson]
+
+ + ajp-brute performs brute force passwords auditing against the
+ Apache JServ protocol. [Patrik Karlsson]
+
+ + ajp-headers performs a HEAD or GET request against either the root
+ directory or any optional directory of an Apache JServ Protocol
+ server and returns the server response headers. [Patrik Karlsson]
+
+ + ajp-methods discovers which options are supported by the AJP
+ (Apache JServ Protocol) server by sending an OPTIONS request and
+ lists potentially risky methods. [Patrik Karlsson]
+
+ + ajp-request requests a URI over the Apache JServ Protocol and
+ displays the result (or stores it in a file). Different AJP
+ methods such as; GET, HEAD, TRACE, PUT or DELETE may be
+ used. [Patrik Karlsson]
+
+ + bjnp-discover retrieves printer or scanner information from a
+ remote device supporting the BJNP protocol. The protocol is known
+ to be supported by network based Canon devices. [Patrik Karlsson]
+
+ + broadcast-ataoe-discover discovers servers supporting the ATA over
+ Ethernet protocol. ATA over Ethernet is an ethernet protocol
+ developed by the Brantley Coile Company and allows for simple,
+ high-performance access to SATA drives over Ethernet. [Patrik
+ Karlsson]
+
+ + broadcast-bjnp-discover attempts to discover Canon devices
+ (Printers/Scanners) supporting the BJNP protocol by sending BJNP
+ Discover requests to the network broadcast address for both ports
+ associated with the protocol. [Patrik Karlsson]
+
+ + broadcast-eigrp-discovery performs network discovery and routing
+ information gathering through Cisco's EIGRP protocol. [Hani
+ Benhabiles]
+
+ + broadcast-igmp-discovery discovers targets that have IGMP
+ Multicast memberships and grabs interesting information. [Hani
+ Benhabiles]
+
+ + broadcast-pim-discovery discovers routers that are running PIM
+ (Protocol Independent Multicast). [Hani Benhabiles]
+
+ + broadcast-tellstick-discover discovers Telldus Technologies
+ TellStickNet devices on the LAN. The Telldus TellStick is used to
+ wirelessly control electric devices such as lights, dimmers and
+ electric outlets. [Patrik Karlsson]
+
+ + cassandra-brute performs brute force password auditing against the
+ Cassandra database. [Vlatko Kosturjak]
+
+ + cassandra-info attempts to get basic info and server status from a
+ Cassandra database. [Vlatko Kosturjak]
+
+ + cups-info lists printers managed by the CUPS printing
+ service. [Patrik Karlsson]
+
+ + cups-queue-info Lists currently queued print jobs of the remote
+ CUPS service grouped by printer. [Patrik Karlsson]
+
+ + dict-info Connects to a dictionary server using the DICT protocol,
+ runs the SHOW SERVER command, and displays the result. [Patrik
+ Karlsson]
+
+ + distcc-cve2004-2687 detects and exploits a remote code execution
+ vulnerability in the distributed compiler daemon distcc. [Patrik
+ Karlsson]
+
+ + dns-check-zone checks DNS zone configuration against best
+ practices, including RFC 1912. The configuration checks are
+ divided into categories which each have a number of different
+ tests. [Patrik Karlsson]
+
+ + dns-ip6-arpa-scan performs a quick reverse DNS lookup of an IPv6
+ network using a technique which analyzes DNS server response codes
+ to dramatically reduce the number of queries needed to enumerate
+ large networks. [Patrik Karlsson]
+
+ + dns-nsec3-enum tries to enumerate domain names from the DNS server
+ that supports DNSSEC NSEC3 records. [Aleksandar Nikolic, John
+ Bond]
+
+ + eppc-enum-processes attempts to enumerate process info over the
+ Apple Remote Event protocol. When accessing an application over
+ the Apple Remote Event protocol the service responds with the uid
+ and pid of the application, if it is running, prior to requesting
+ authentication. [Patrik Karlsson]
+
+ + firewall-bypass detects a vulnerability in Netfilter and other
+ firewalls that use helpers to dynamically open ports for protocols
+ such as ftp and sip. [Hani Benhabiles]
+
+ + flume-master-info retrieves information from Flume master HTTP
+ pages. [John R. Bond]
+
+ + gkrellm-info queries a GKRellM service for monitoring
+ information. A single round of collection is made, showing a
+ snapshot of information at the time of the request. [Patrik
+ Karlsson]
+
+ + gpsd-info retrieves GPS time, coordinates and speed from the GPSD
+ network daemon. [Patrik Karlsson]
+
+ + hostmap-robtex discovers hostnames that resolve to the target's IP
+ address by querying the Robtex service at
+ http://www.robtex.com/dns/. [Arturo Busleiman]
+
+ + http-drupal-enum-users enumerates Drupal users by exploiting a an
+ information disclosure vulnerability in Views, Drupal's most
+ popular module. [Hani Benhabiles]
+
+ + http-drupal-modules enumerates the installed Drupal modules by
+ using a list of known modules. [Hani Benhabiles]
+
+ + http-exif-spider spiders a site's images looking for interesting
+ exif data embedded in .jpg files. Displays the make and model of
+ the camera, the date the photo was taken, and the embedded geotag
+ information. [Ron Bowes]
+
+ + http-form-fuzzer performs a simple form fuzzing against forms
+ found on websites. Tries strings and numbers of increasing length
+ and attempts to determine if the fuzzing was successful. [Piotr
+ Olma]
+
+ + http-frontpage-login checks whether target machines are vulnerable
+ to anonymous Frontpage login. [Aleksandar Nikolic]
+
+ + http-git checks for a Git repository found in a website's document
+ root (/.git/<something>) then retrieves as much repo
+ information as possible, including language/framework, Github
+ username, last commit message, and repository description. [Alex
+ Weber]
+
+ + http-gitweb-projects-enum retrieves a list of Git projects, owners
+ and descriptions from a gitweb (web interface to the Git revision
+ control system). [riemann]
+
+ + http-huawei-hg5xx-vuln detects Huawei modems models HG530x,
+ HG520x, HG510x (and possibly others...) vulnerable to a remote
+ credential and information disclosure vulnerability. It also
+ extracts the PPPoE credentials and other interesting configuration
+ values. [Paulino Calderon]
+
+ + http-icloud-findmyiphone retrieves the locations of all "Find my
+ iPhone" enabled iOS devices by querying the MobileMe web service
+ (authentication required). [Patrik Karlsson]
+
+ + http-icloud-sendmsg sends a message to a iOS device through the
+ Apple MobileMe web service. The device has to be registered with
+ an Apple ID using the Find My iPhone application. [Patrik
+ Karlsson]
+
+ + http-phpself-xss crawls a web server and attempts to find PHP
+ files vulnerable to reflected cross site scripting via the
+ variable $_SERVER["PHP_SELF"]. [Paulino Calderon]
+
+ + http-rfi-spider crawls webservers in search of RFI (remote file
+ inclusion) vulnerabilities. It tests every form field it finds and
+ every parameter of a URL containing a query. [Piotr Olma]
+
+ + http-robtex-shared-ns Finds up to 100 domain names which use the
+ same name server as the target by querying the Robtex service at
+ http://www.robtex.com/dns/. [Arturo Busleiman]
+
+ + http-sitemap-generator spiders a web server and displays its
+ directory structure along with number and types of files in each
+ folder. Note that files listed as having an 'Other' extension are
+ ones that have no extension or that are a root document. [Piotr
+ Olma]
+
+ + http-slowloris-check tests a web server for vulnerability to the
+ Slowloris DoS attack without actually launching a DoS
+ attack. [Aleksandar Nikolic]
+
+ + http-slowloris tests a web server for vulnerability to the
+ Slowloris DoS attack by launching a Slowloris attack. [Aleksandar
+ Nikolic, Ange Gutek]
+
+ + http-tplink-dir-traversal exploits a directory traversal
+ vulnerability existing in several TP-Link wireless
+ routers. Attackers may exploit this vulnerability to read any of
+ the configuration and password files remotely and without
+ authentication. [Paulino Calderon]
+
+ + http-traceroute exploits the Max-Forwards HTTP header to detect
+ the presence of reverse proxies. [Hani Benhabiles]
+
+ + http-virustotal checks whether a file has been determined as
+ malware by virustotal. Virustotal is a service that provides the
+ capability to scan a file or check a checksum against a number of
+ the major antivirus vendors. [Patrik Karlsson]
+
+ + http-vlcstreamer-ls connects to a VLC Streamer helper service and
+ lists directory contents. The VLC Streamer helper service is used
+ by the iOS VLC Streamer application to enable streaming of
+ multimedia content from the remote server to the device. [Patrik
+ Karlsson]
+
+ + http-vuln-cve2010-0738 tests whether a JBoss target is vulnerable
+ to jmx console authentication bypass (CVE-2010-0738). [Hani
+ Benhabiles]
+
+ + http-waf-fingerprint Tries to detect the presence of a web
+ application firewall and its type and version. [Hani Benhabiles]
+
+ + icap-info tests a list of known ICAP service names and prints
+ information about any it detects. The Internet Content Adaptation
+ Protocol (ICAP) is used to extend transparent proxy servers and is
+ generally used for content filtering and antivirus
+ scanning. [Patrik Karlsson]
+
+ + ip-forwarding detects whether the remote device has ip forwarding
+ or "Internet connection sharing" enabled, by sending an ICMP echo
+ request to a given target using the scanned host as default
+ gateway. [Patrik Karlsson]
+
+ + ipv6-ra-flood generates a flood of Router Advertisements (RA) with
+ random source MAC addresses and IPv6 prefixes. Computers, which
+ have stateless autoconfiguration enabled by default (every major
+ OS), will start to compute IPv6 suffix and update their routing
+ table to reflect the accepted announcement. This will cause 100%
+ CPU usage on Windows and platforms, preventing to process other
+ application requests. [Adam Stevko]
+
+ + irc-sasl-brute performs brute force password auditing against IRC
+ (Internet Relay Chat) servers supporting SASL
+ authentication. [Piotr Olma]
+
+ + isns-info lists portals and iSCSI nodes registered with the
+ Internet Storage Name Service (iSNS). [Patrik Karlsson]
+
+ + jdwp-exec attempts to exploit java's remote debugging port. When
+ remote debugging port is left open, it is possible to inject java
+ bytecode and achieve remote code execution. This script abuses
+ this to inject and execute a Java class file that executes the
+ supplied shell command and returns its output. [Aleksandar
+ Nikolic]
+
+ + jdwp-info attempts to exploit java's remote debugging port. When
+ remote debugging port is left open, it is possible to inject java
+ bytecode and achieve remote code execution. This script injects
+ and execute a Java class file that returns remote system
+ information. [Aleksandar Nikolic]
+
+ + jdwp-inject attempts to exploit java's remote debugging port.
+ When remote debugging port is left open, it is possible to inject
+ java bytecode and achieve remote code execution. This script
+ allows injection of arbitrary class files. [Aleksandar Nikolic]
+
+ + llmnr-resolve resolves a hostname by using the LLMNR (Link-Local
+ Multicast Name Resolution) protocol. [Hani Benhabiles]
+
+ + mcafee-epo-agent check if ePO agent is running on port 8081 or
+ port identified as ePO Agent port. [Didier Stevens and Daniel
+ Miller]
+
+ + metasploit-info gathers info from the Metasploit RPC service. It
+ requires a valid login pair. After authentication it tries to
+ determine Metasploit version and deduce the OS type. Then it
+ creates a new console and executes few commands to get additional
+ info. [Aleksandar Nikolic]
+
+ + metasploit-msgrpc-brute performs brute force username and password
+ auditing against Metasploit msgrpc interface. [Aleksandar Nikolic]
+
+ + mmouse-brute performs brute force password auditing against the
+ RPA Tech Mobile Mouse servers. [Patrik Karlsson]
+
+ + mmouse-exec connects to an RPA Tech Mobile Mouse server, starts an
+ application and sends a sequence of keys to it. Any application
+ that the user has access to can be started and the key sequence is
+ sent to the application after it has been started. [Patrik
+ Karlsson]
+
+ + mrinfo queries targets for multicast routing information. [Hani
+ Benhabiles]
+
+ + msrpc-enum queries an MSRPC endpoint mapper for a list of mapped
+ services and displays the gathered information. [Aleksandar
+ Nikolic]
+
+ + ms-sql-dac queries the Microsoft SQL Browser service for the DAC
+ (Dedicated Admin Connection) port of a given (or all) SQL Server
+ instance. The DAC port is used to connect to the database instance
+ when normal connection attempts fail, for example, when server is
+ hanging, out of memory or in other bad states. [Patrik Karlsson]
+
+ + mtrace queries for the multicast path from a source to a
+ destination host. [Hani Benhabiles]
+
+ + mysql-dump-hashes dumps the password hashes from an MySQL server
+ in a format suitable for cracking by tools such as John the
+ Ripper. Appropriate DB privileges (root) are required. [Patrik
+ Karlsson]
+
+ + mysql-query runs a query against a MySQL database and returns the
+ results as a table. [Patrik Karlsson]
+
+ + mysql-vuln-cve2012-2122 attempts to bypass authentication in MySQL
+ and MariaDB servers by exploiting CVE2012-2122. If its vulnerable,
+ it will also attempt to dump the MySQL usernames and password
+ hashes. [Paulino Calderon]
+
+ + oracle-brute-stealth exploits the CVE-2012-3137 vulnerability, a
+ weakness in Oracle's O5LOGIN authentication scheme. The
+ vulnerability exists in Oracle 11g R1/R2 and allows linking the
+ session key to a password hash. [Dhiru Kholia]
+
+ + pcanywhere-brute performs brute force password auditing against
+ the pcAnywhere remote access protocol. [Aleksandar Nikolic]
+
+ + rdp-enum-encryption determines which Security layer and Encryption
+ level is supported by the RDP service. It does so by cycling
+ through all existing protocols and ciphers. [Patrik Karlsson]
+
+ + rmi-vuln-classloader tests whether Java rmiregistry allows class
+ loading. The default configuration of rmiregistry allows loading
+ classes from remote URLs, which can lead to remote code
+ execution. The vendor (Oracle/Sun) classifies this as a design
+ feature. [Aleksandar Nikolic]
+
+ + rpc-grind fingerprints the target RPC port to extract the target
+ service, RPC number and version. [Hani Benhabiles]
+
+ + sip-call-spoof spoofs a call to a SIP phone and detects the action
+ taken by the target (busy, declined, hung up, etc.) [Hani
+ Benhabiles]
+
+ + sip-methods enumerates a SIP Server's allowed methods (INVITE,
+ OPTIONS, SUBSCRIBE, etc.) [Hani Benhabiles]
+
+ + smb-ls attempts to retrieve useful information about files shared
+ on SMB volumes. The output is intended to resemble the output of
+ the UNIX <code>ls</code> command. [Patrik Karlsson]
+
+ + smb-print-text attempts to print text on a shared printer by
+ calling Print Spooler Service RPC functions. [Aleksandar Nikolic]
+
+ + smb-vuln-ms10-054 tests whether target machines are vulnerable to
+ the ms10-054 SMB remote memory corruption
+ vulnerability. [Aleksandar Nikolic]
+
+ + smb-vuln-ms10-061 tests whether target machines are vulnerable to
+ ms10-061 Printer Spooler impersonation vulnerability. [Aleksandar
+ Nikolic]
+
+ + snmp-hh3c-logins attempts to enumerate Huawei / HP/H3C Locally
+ Defined Users through the hh3c-user.mib OID [Kurt Grutzmacher]
+
+ + ssl-date retrieves a target host's time and date from its TLS
+ ServerHello response. [Aleksandar Nikolic]
+
+ + tls-nextprotoneg enumerates a TLS server's supported protocols by
+ using the next protocol negotiation extension. [Hani Benhabiles]
+
+ + traceroute-geolocation lists the geographic locations of each hop
+ in a traceroute and optionally saves the results to a KML file,
+ plottable on Google earth and maps. [Patrik Karlsson]
+
+o [NSE] Added 12 new protocol libraries, bring our total to 105! Here
+ they are, with authors enclosed in brackets:
+ + ajp (Apache JServ Protocol) [Patrik Karlsson]
+ + base32 (Base32 encoding/decoding - RFC 4648) [Philip Pickering]
+ + bjnp (Canon BJNP printer/scanner discovery protocol) [Patrik Karlsson]
+ + cassandra (Cassandra database protocol) [Vlatko Kosturjak]
+ + eigrp (Cisco Enhanced Interior Gateway Routing Protocol) [Hani Benhabiles]
+ + gps (Global Positioning System - does GPRMC NMEA decoding) [Patrik Karlsson]
+ + ipp (CUPS Internet Printing Protocol) [Patrik Karlsson]
+ + isns (Internet Storage Name Service) [Patrik Karlsson]
+ + jdwp (Java Debug Wire Protocol) [Aleksandar Nikolic]
+ + mobileme (a service for managing Apple/Mac devices) [Patrik Karlsson]
+ + ospf (Open Shortest Path First routing protocol) [Patrik Karlsson]
+ + rdp (Remote Desktop Protocol) [Patrik Karlsson]
+
+o Added Common Platform Enumeration (CPE) identifiers to nearly 1,000
+ more OS detection signatures. Nmap 6.01 had them for 2,608 of 3,572
+ fingerprints (73%) and now we have them for 3,558 out of 3,946
+ (90%). [David Fifield]
+
+o Scans that use OS sockets (including TCP connect scan, version
+ detection, and script scan) now use the SO_BINDTODEVICE sockopt on
+ Linux, so that the -e (select network device) option is
+ honored. [David Fifield]
+
+o [Zenmap] Host filters can now do negative matching, for example you
+ can use "os:!linux" to match hosts NOT detected as Linux. [Daniel
+ Miller]
+
+o Fixed a bug that caused an incorrect source address to be set when
+ scanning certain addresses (apparently those ending in .0) on
+ Windows XP. The symptom of this bug was the messages
+ get_srcaddr: can't connect socket: The requested address is not valid in its context.
+ Failed to convert source address to presentation format!?! Error: Unknown error
+ Thanks to Robert Washam and Jorge Hernandez for reports and help
+ debugging. [David Fifield]
+
+o Upgraded the included OpenSSL to version 1.0.1c. [David Fifield]
+
+o [NSE] Added changes to brute and unpwdb libraries to allow more
+ flexible iterator specification and control. [Aleksandar Nikolic]
+
+o Tested that our WinPcap installer works on Windows 8 and Windows
+ Server 2012 build 8400. Updated to installer text to recommend that
+ users select the option to start 'NPF' at startup. [Rob Nicholls]
+
+o Changed libdnet's routing interface to return an interface name for
+ each route on the most common operating systems. This is used to
+ improve the quality of Nmap's matching of routes to interfaces,
+ which was previously done by matching routes to interface addresses.
+ [Djalal Harouni, David Fifield]
+
+o Fixed a bug that prevented Nmap from finding any interfaces when one
+ of them had the type ARPHDR_INFINIBAND; this was the case for
+ IP-over-InfiniBand interfaces. However, This support is not complete
+ since IPoIB interfaces use 20 bytes for the hardware address, and
+ currently we only report and handle 6 bytes.
+ Nmap IP level scans should work without any problem, please refer to
+ the '--send-ip' switch and to the following thread:
+ http://seclists.org/nmap-dev/2012/q3/642
+ This bug was reported by starlight.2012q3. [Djalal Harouni]
+
+o Fixed a bug that prevented Nmap from finding any interfaces when one
+ of them had the type ARPHDR_IEEE80211; this was the case for wireless
+ interfaces operating in access point mode. This bug was reported by
+ Sebastiaan Vileijn. [Djalal Harouni]
+
+o Updated the Zenmap desktop icons on Windows, Linux, and Mac with higher
+ resolution ones. [Sean Rivera, David Fifield]
+
+o [NSE] Script results for a host or service are now sorted
+ alphabetically by script name. [Sean Rivera]
+
+o Fixed a bug that prevented Nmap from finding any interfaces when any
+ interface had the type ARPHRD_VOID; this was the case for OpenVZ
+ venet interfaces. [Djalal Harouni, David Fifield]
+
+o Linux unreachable routes are now properly ignored. [David Fifield]
+
+o Added Dan Miller as an Nmap committer. He has done a ton of great
+ work on Nmap, as you can see by searching for him in this CHANGELOG
+ or reading the Nmap committers list at
+ https://svn.nmap.org/nmap/docs/committers.txt .
+
+o Added a new --disable-arp-ping option. This option prevents Nmap
+ from implicitly using ARP or ND host discovery for discovering
+ directly connected Ethernet targets. This is useful in networks
+ using proxy ARP, which make all addresses appear to be up using ARP
+ scan. The previously recommended workaround for this situation,
+ --send-ip, didn't work on Windows because that lame excuse for an
+ operating system is still missing raw socket support. [David
+ Fifield (editorializing added by Fyodor)]
+
+o Protocol scan (-sO) probes for TCP, UDP, and SCTP now go to ports
+ 80, 40125, and 80 respectively, instead of being randomly generated
+ or going to the same port as the source port. [David Fifield]
+
+o The Nmap --log-errors functionality (including errors and warnings
+ in the normal-format output file) is now always true, whether you
+ pass that option or not. [Sean Rivera]
+
+o [NSE] Rewrote ftp-brute script to use the brute library for
+ performing password auditing. [Aleksandar Nikolic]
+
+o Reduced the size of Port structures by about two thirds (from 176 to
+ 64 bytes on x86_64). They had accidentally grown during the IPv6
+ code merge. [David Fifield]
+
+o Made source port numbers (used to encode probe metadata) increment
+ so as not to overlap between different scanning phases. Previously
+ it was possible for an RST response to an ACK probe from host
+ discovery to be misinterpreted as a reply to a SYN probe from port
+ scanning. [Sean Rivera, David Fifield]
+
+o [NSE] Added support for ECDSA keys to ssh-hostkey.nse. [Adam Števko]
+
+o Changed the CPE for Linux from cpe:/o:linux:kernel to
+ cpe:/o:linux:linux_kernel to reflect deprecation in the official CPE
+ dictionary.
+
+o Added some additional CPE entries to nmap-service-probes.
+ [Dillon Graham]
+
+o Fixed an assertion failure with IPv6 traceroute trying to use an
+ unsupported protocol:
+ nmap: traceroute.cc:749: virtual unsigned char*
+ UDPProbe::build_packet(const sockaddr_storage*, u32*) const: Assertion
+ `source->ss_family == 2' failed.
+ This was reported by Pierre Emeriaud. [David Fifield]
+
+o Added version detection signatures for half a dozen new or changed
+ products. [Tom Sellers]
+
+o Fixed protocol number-to-name mapping. A patch was contributed by
+ hejianet.
+
+o [NSE] The nmap.ip_send function now takes a second argument, the
+ destination to send to. Previously the destination address was taken
+ from the packet buffer, but this failed for IPv6 link-local
+ addresses, because the scope ID is not part of the packet. Calling
+ ip_send without a destination address will continue to use the old
+ behavior, but this practice is deprecated.
+
+o Increased portability of configure scripts on systems using a libc
+ other than Glibc. Several problems were reported by John Spencer.
+
+o [NSE] Fixed a bug in rpc-grind.nse that would cause unresponsive UDP
+ ports to be wrongly marked open. This was reported by Christopher
+ Clements. [David Fifield]
+
+o [Ncat] Close connection endpoint when receiving EOF on
+ stdin. [Michal Hlavinka].
+
+o Fixed interface listing on NetBSD. The bug was first noticed by
+ Fredrik Pettai and diagnosed by Jan Schaumann. [David Fifield]
+
+o [Ncat] Applied a blocking-socket workaround for a bug that could
+ prevent some sends from working in listen mode. The problem was
+ reported by Jonas Wielicki. [Alex Weber, David Fifield]
+
+o [NSE] Updated mssql.lua library to support additional data types,
+ enhanced some of the existing data types, added the DoneProc
+ response token, and reordered code for maintainability. [Tom
+ Sellers]
+
+o [Nping] Nping now prints out an error and exists when the user tries to use
+ the -p flag for a scan option where that is meaningless. [Sean Rivera]
+
+o [NSE] Added spoolss functions and constants to msrpc.lua. [Aleksandar Nikolic]
+
+o [NSE] Reduced the number of names tried by http-vhosts by default.
+ [Vlatko Kosturjak]
+
+o [Zenmap] Fixed a crash when using the en_NG locale: "ValueError:
+ unknown locale: en_NG" [David Fifield]
+
+o [NSE] Fixed some bugs in snmp-interfaces which prevented the script from
+ outputting discovered interface info and caused it to abort in the
+ pre-scanning phase. [jah]
+
+o [NSE] Do a connect on rpc-grind (rpc.lua) UDP sockets so that socket_lock
+ is invoked. This is necessary to avoid "Too many open files" errors if
+ RPC grind creates an excessive number of sockets. We should have a
+ cleaner general solution for this, and not require scripts to "connect"
+ their unconnected UDP sockets. But there may be a good reason for
+ enforcing socket locking only on connect, not on creation. [David Fifield]
+
+o [NSE] lltd-discovery scripts now parses for hostnames and outputs network
+ card manufacturer. [Hani Benhabiles]
+
+o Added protocol specific payloads for IPv6 hop-by-hop (0x00), routing (0x2b),
+ fragment (0x2c), and destination (0x3c). [Sean Rivera]
+
+o [NSE] Added support for decoding OSPF Hello packets to broadcast-listener.
+ [Hani Benhabiles]
+
+o [NSE] Fixed a false positive in http-vuln-cve2011-3192.nse, which detected
+ Apache 2.2.22 as vulnerable. [Michael Meyer]
+
+o [NSE] Modified multiple scripts that operated against HTTP based services
+ so as to remove false positives that were generated when the target service
+ answers with a 200 response to all requests. [Tom Sellers]
+
+o [NSOCK] Fixed an epoll-engine-specific bug. The engine didn't recognized FDs
+ that were internally closed and replaced by other ones. This happened during
+ reconnect attempts. Also, the IOD flags were not properly cleared.
+ [Henri Doreau, Daniel Miller]
+
+o Added support for log type bitmasks in log_vwrite(). Also replaced a fatal()
+ statement by an assert(0) to get rid of a possible infinite call loop when
+ passed an invalid log type. [Henri Doreau]
+
+o Added handling for the unexpected error WSAENETRESET (10052). This error is
+ currently wrapped in the ifdef for WIN32 as there error appears to be unique
+ to windows [Sean Rivera]
+
+o [NSE] Added default values for Expires, Call-ID, Allow and Content-Length
+ headers in SIP requests and removed redundant code in sip library.
+ [Hani Benhabiles]
+
+o [NSE] Calling methods of unconnected sockets now causes the usual
+ error code return value, instead of raising a Lua error. The problem
+ was noticed by Daniel Miller. [David Fifield]
+
+o [NSE] Added AUTH_UNIX support to the rpc library and NFS scripts.
+ [Daniel Miller]
+
+o [Zenmap] Fixed a crash in the profile editor that would happen when
+ the nmap binary couldn't be found. [David Fifield]
+
+o Made the various Makefiles' treatment of makefile.dep uniform:
+ "make clean" keeps the file and "make distclean" deletes it.
+ [Michael McTernan]
+
+o [NSE] Fixed dozens of scripts and libraries to work better on
+ system which don't have OpenSSL available. [Patrik Karlsson]
+
+o [Ncat] --output logging now works in UDP mode. Thanks to Michal
+ Hlavinka for reporting the bug. [David Fifield]
+
+o [NSE] More Windows 7 and Windows 2008 fixes for the smb library and smb-ls
+ scripts. [Patrik Karlsson]
+
+o [NSE] Added SPNEGO authentication supporting Windows 7 and Windows 2008 to
+ the smb library. [Patrik Karlsson]
+
+o [NSE] Changed http-brute so that it works against the root path
+ ("/") by default rather than always requiring the http-brute.path
+ script argument. [Fyodor]
+
+o [NSE] Applied patch from Daniel Miller that fixes bug in several scripts and
+ libraries http://seclists.org/nmap-dev/2012/q2/593 [Daniel Miller]
+
+o [Zenmap] Added Italian translation by Francesco Tombolini and
+ Japanese translation by Yujiy Tounai. Some typos in the Japanese
+ translation were corrected by OKANO Takayoshi.
+
+o [NSE] Rewrote mysql-brute to use brute library [Aleksandar Nikolic]
+
+o Improved the mysql library to handle multiple columns with the same name,
+ added a formatResultset function to format a query response to a table
+ suitable for script output. [Patrik Karlsson]
+
+o The message "nexthost: failed to determine route to ..." is now a
+ warning rather than a fatal error. Addresses that are skipped in
+ this way are recorded in the XML output as "target" elements. [David
+ Fifield]
+
+o [NSE] targets-sniffer now is capable of sniffing IPv6 addresses.
+ [Daniel Miller]
+
+o [NSE] Ported the pop3-brute script to use the brute library.
+ [Piotr Olma]
+
+o [NSE] Added an error message indicating script failure, when Nmap is being
+ run in non verbose/debug mode. [Patrik Karlsson]
+
+o Service-scan information is now included in XML and grepable output
+ even if -sV wasn't used. This information can be set by scripts in the
+ absence of -sV. [Daniel Miller]
+
+Nmap 6.01 [2012-06-16]
+
+o [Zenmap] Fixed a hang that would occur on Mac OS X 10.7. A symptom
+ of the hang was this message in the system console:
+ Couldn't recognize the image file format for file
+ '/Applications/Zenmap.app/Contents/MacOS/../Resources/share/zenmap/pixmaps/radialnet/padlock.png'
+ [David Fifield]
+
+o [Zenmap] Fixed a crash that happened when activating the host filter.
+ File "zenmapCore\SearchResult.pyo", line 155, in match_os
+ KeyError: 'osmatches'
+ [jah]
+
+o Fixed an error that occurred when scanning certain addresses like
+ 192.168.0.0 on Windows XP:
+ get_srcaddr: can't connect socket: The requested address is not valid in its context.
+ nexthost: failed to determine route to 10.80.0.0
+ [David Fifield]
+
+o Fixed a bug that caused Nmap to fail to find any network interface when
+ at least one of them is in the monitor mode. The fix was to define the
+ ARP_HRD_IEEE80211_RADIOTAP 802.11 radiotap header identifier in the
+ libdnet-stripped code. Network interfaces that are in this mode are used
+ by radiotap for 802.11 frame injection and reception. The bug was
+ reported by Tom Eichstaedt and Henri Doreau.
+ http://seclists.org/nmap-dev/2012/q2/449
+ http://seclists.org/nmap-dev/2012/q2/478
+ [Djalal Harouni, Henri Doreau]
+
+o Fixed the greppable output of hosts that time-out (when --host-timeout was
+ used and the host timed-out after something was received from that host).
+ This issue was reported by Matthew Morgan. [jah]
+
+o [Zenmap] Updated the version of Python used to build the Windows
+ release from 2.7.1 to 2.7.3 to remove a false-positive security
+ alarm flagged by tools such as Secunia PSI. There was a minor
+ vulnerability in certain Python27.dll web functionality (which Nmap
+ doesn't use anyway) and Secunia was flagging all software which
+ includes that version of Python27.dll. This update should prevent
+ the false alarm.
+
+Nmap 6.00 [2012-05-21]
+
+o Most important release since Nmap 5.00 in July 2009! For a list of
+ the most significant improvements and new features, see the
+ announcement at: https://nmap.org/6/
+
+o In XML output, "osclass" elements are now child elements of the
+ "osmatch" they belong to. Old output was thus:
+ <os><osclass/><osclass/>...<osmatch/><osmatch/>...</os>
+ New output is:
+ <os><osmatch><osclass/><osclass/>...</osmatch>...</os>
+ The option --deprecated-xml-osclass restores the old output, in case
+ you use an Nmap XML parser that doesn't understand the new
+ structure. The xmloutputversion has been increased to 1.04.
+
+o Added a new "target" element to XML output that indicates when a
+ target specification was ignored, perhaps because of a syntax error
+ or DNS failure. It looks like this:
+ <target specification="1.2.3.4.5" status="skipped" reason="invalid"/>
+ [David Fifield]
+
+o [NSE] Added the script samba-vuln-cve-2012-1182 which detects the
+ SAMBA pre-auth remote root vulnerability (CVE-2012-1182).
+ [Aleksandar Nikolic]
+
+o [NSE] Added http-vuln-cve2012-1823.nse, which checks for PHP CGI
+ installations with a remote code execution vulnerability. [Paulino
+ Calderon]
+
+o [NSE] Added script targets-ipv6-mld that sends a malformed ICMP6 MLD Query
+ to discover IPv6 enabled hosts on the LAN. [Niteesh Kumar]
+
+o [NSE] Added rdp-vuln-ms12-020.nse by Aleksandar Nikolic. This tests
+ for two Remote Desktop vulnerabilities, including one allowing
+ remote code execution, that were fixed in the MS12-020 advisory.
+
+o [NSE] Added a stun library and the scripts stun-version and stun-info, which
+ extract version information and the external NAT:ed address.
+ [Patrik Karlsson]
+
+o [NSE] Added the script duplicates which attempts to determine duplicate
+ hosts by analyzing information collected by other scripts. [Patrik Karlsson]
+
+o Fixed the routing table loop on OS X so that on-link routes appear.
+ Previously, they were ignored so that things like ARP scan didn't
+ work. [Patrik Karlsson, David Fifield]
+
+o Upgraded included libpcap to version 1.2.1.
+
+o [NSE] Added ciphers from RFC 5932 and Fortezza-based ciphers to
+ ssl-enum-ciphers.nse. The patch was submitted by Darren McDonald.
+
+o [NSE] Renamed hostmap.nse to hostmap-bfk.nse.
+
+o Fixed a compilation problem on Solaris 9 caused by a missing
+ definition of IPV6_V6ONLY. Reported by Dagobert Michelsen.
+
+o Setting --min-parallelism by itself no longer forces the maximum
+ parallelism to the same value. [Chris Woodbury, David Fifield]
+
+o Changed XML output to show the "service" element whenever a tunnel
+ is discovered for a port, even if the service behind it was unknown.
+ [Matt Foster]
+
+o [Zenmap] Fixed a crash that would happen in the profile editor when
+ the script.db file doesn't exist. The bug was reported by Daniel
+ Miller.
+
+o [Zenmap] It is now possible to compare scans having the same name or
+ command line parameters. [Jah, David Fifield]
+
+o Fixed an error that could occur with ICMPv6 probes and -d4 debugging:
+ "Unexpected probespec2ascii type encountered" [David Fifield]
+
+o [NSE] Added new script http-chrono, which measures min, max and average
+ response times of web servers. [Ange Gutek]
+
+o Applied a workaround to make pcap captures work better on Solaris
+ 10. This involves peeking at the pcap buffer to ensure that captures
+ are not being lost. A symptom of the previous behavior was that,
+ when doing ARP host discovery against two targets, only one would be
+ reported as up. [David Fifield]
+
+o Fixed a bug that could cause Nsock timers to fire too early. This
+ could happen for the timed probes in IPv6 OS detection, causing an
+ incorrect measurement of the TCP_ISR feature. [David Fifield]
+
+o [Zenmap] We now build on Windows with a newer version of PyGTK, so
+ copy and paste should work again.
+
+o Changed the way timeout calculations are made in the IPv6 OS engine.
+ In rare cases a certain interleaving of probes and responses would
+ result in an assertion failure.
+
+Nmap 5.61TEST5 [2012-03-09]
+
+o Integrated all of your IPv4 OS fingerprint submissions since June
+ 2011 (about 1,900 of them). Added about 256 new fingerprints (and
+ deleted some bogus ones), bringing the new total to 3,572.
+ Additions include Apple iOS 5.01, OpenBSD 4.9 and 5.0, FreeBSD 7.0
+ through 9.0-PRERELEASE, and a ton of new WAPs, routers, and other
+ devices. Many existing fingerprints were improved. For more details,
+ see http://seclists.org/nmap-dev/2012/q1/431 [David Fifield]
+
+o Integrated all of your service/version detection fingerprints
+ submitted since November 2010--more than 2,500 of them! Our
+ signature count increased more than 10% to 7,423 covering 862
+ protocols. Some amusing and bizarre new services are described at
+ http://seclists.org/nmap-dev/2012/q1/359 [David Fifield]
+
+o Integrated your latest IPv6 OS submissions and corrections. We're
+ still low on IPv6 fingerprints, so please scan any IPv6 systems you
+ own or administer and submit them to https://nmap.org/submit/. Both
+ new fingerprints (if Nmap doesn't find a good match) and corrections
+ (if Nmap guesses wrong) are useful.
+
+o [NSE] Added a host-based registry which only persists (for the given
+ host) until all scripts have finished scanning that host. The normal
+ registry saves information until it is deleted or the Nmap scan
+ ends. That is a waste of memory for information which doesn't need
+ to persist that long. Use the host based registry instead if you
+ can. See https://nmap.org/book/nse-api.html#nse-api-registry. [Patrik
+ Karlsson]
+
+o IPv6 OS detection now includes a novelty detection system which
+ avoids printing a match when an observed fingerprint is too
+ different from fingerprints seen before. As the OS database is still
+ small, this helps to avoid making (essentially) wild guesses when
+ seeing a new operating system. [David Fifield]
+
+o Refactored the nsock library to add the nsock-engines system. This
+ allows system-specific scalable IO notification facilities to be
+ used while maintaining the portable Nsock API. This initial version
+ comes with an epoll-based engine for Linux and a select-based
+ fallback engine for all other operating systems. Also added the
+ --nsock-engine option to Nmap, Nping and Ncat to enforce use of a
+ specific Nsock IO engine. [Henri Doreau]
+
+o [NSE] Added 43(!) NSE scripts, bringing the total up to 340. They
+ are all listed at https://nmap.org/nsedoc/, and the summaries are
+ below (authors are listed in brackets):
+
+ + acarsd-info retrieves information from a listening acarsd
+ daemon. Acarsd decodes ACARS (Aircraft Communication Addressing
+ and Reporting System) data in real time. [Brendan Coles]
+
+ + asn-to-prefix produces a list of IP prefixes for a given AS number
+ (ASN). It uses the external Shadowserver API (with their
+ permission). [John Bond]
+
+ + broadcast-dhcp6-discover sends a DHCPv6 request (Solicit) to the
+ DHCPv6 multicast address, parses the response, then extracts and
+ prints the address along with any options returned by the
+ server. [Patrik Karlsson]
+
+ + broadcast-networker-discover discovers the EMC Networker backup
+ software server on a LAN by using network broadcasts. [Patrik Karlsson]
+
+ + broadcast-pppoe-discover discovers PPPoE servers using the PPPoE
+ Discovery protocol (PPPoED). [Patrik Karlsson]
+
+ + broadcast-ripng-discover discovers hosts and routing information
+ from devices running RIPng on the LAN by sending a RIPng Request
+ command and collecting the responses from all responsive
+ devices. [Patrik Karlsson]
+
+ + broadcast-versant-locate discovers Versant object databases using
+ the srvloc protocol. [Patrik Karlsson]
+
+ + broadcast-xdmcp-discover discovers servers running the X Display
+ Manager Control Protocol (XDMCP) by sending a XDMCP broadcast
+ request to the LAN. [Patrik Karlsson]
+
+ + cccam-version detects the CCcam service (software for sharing
+ subscription TV among multiple receivers). [David Fifield]
+
+ + dns-client-subnet-scan performs a domain lookup using the
+ edns-client-subnet option that adds support for adding subnet
+ information to the query describing where the query is
+ originating. The script uses this option to supply a number of
+ geographically distributed locations in an attempt to enumerate as
+ many different address records as possible. [John Bond]
+
+ + dns-nsid retrieves information from a DNS nameserver by requesting
+ its nameserver ID (nsid) and asking for its id.server and
+ version.bind values. [John Bond]
+
+ + dns-srv-enum enumerates various common service (SRV) records for a
+ given domain name. The service records contain the hostname, port
+ and priority of servers for a given service. [Patrik Karlsson]
+
+ + eap-info enumerates the authentication methods offered by an EAP
+ authenticator for a given identity or for the anonymous identity
+ if no argument is passed. [Riccardo Cecolin]
+
+ + http-auth-finder spiders a web site to find web pages requiring
+ form-based or HTTP-based authentication. [Patrik Karlsson]
+
+ + http-config-backup checks for backups and swap files of common
+ content management system and web server configuration
+ files. [Riccardo Cecolin]
+
+ + http-generator displays the contents of the "generator" meta tag
+ of a web page (default: /) if there is one. [Michael Kohl]
+
+ + http-proxy-brute performs brute force password guessing against a
+ HTTP proxy server. [Patrik Karlsson]
+
+ + http-qnap-nas-info attempts to retrieve the model, firmware
+ version, and enabled services from a QNAP Network Attached Storage
+ (NAS) device. [Brendan Coles]
+
+ + http-vuln-cve2009-3960 exploits cve-2009-3960 also known as Adobe
+ XML External Entity Injection. [Hani Benhabiles]
+
+ + http-vuln-cve2010-2861 executes a directory traversal attack
+ against a ColdFusion server and tries to grab the password hash
+ for the administrator user. It then uses the salt value (hidden in
+ the web page) to create the SHA1 HMAC hash that the web server
+ needs for authentication as admin. [Micah Hoffman]
+
+ + iax2-brute performs brute force password auditing against the
+ Asterisk IAX2 protocol. [Patrik Karlsson]
+
+ + membase-brute performs brute force password auditing against
+ Couchbase Membase servers. [Patrik Karlsson]
+
+ + membase-http-info retrieves information (hostname, OS, uptime,
+ etc.) from the CouchBase Web Administration port. [Patrik
+ Karlsson]
+
+ + memcached-info retrieves information (including system
+ architecture, process ID, and server time) from distributed memory
+ object caching system memcached. [Patrik Karlsson]
+
+ + mongodb-brute performs brute force password auditing against the
+ MongoDB database. [Patrik Karlsson]
+
+ + nat-pmp-mapport maps a WAN port on the router to a local port on
+ the client using the NAT Port Mapping Protocol (NAT-PMP). [Patrik
+ Karlsson]
+
+ + ndmp-fs-info lists remote file systems by querying the remote
+ device using the Network Data Management Protocol (ndmp). [Patrik
+ Karlsson]
+
+ + ndmp-version retrieves version information from the remote Network
+ Data Management Protocol (NDMP) service. [Patrik Karlsson]
+
+ + nessus-xmlrpc-brute performs brute force password auditing against
+ a Nessus vulnerability scanning daemon using the XMLRPC
+ protocol. [Patrik Karlsson]
+
+ + redis-brute performs brute force passwords auditing against a
+ Redis key-value store. [Patrik Karlsson]
+
+ + redis-info retrieves information (such as version number and
+ architecture) from a Redis key-value store. [Patrik Karlsson]
+
+ + riak-http-info retrieves information (such as node name and
+ architecture) from a Basho Riak distributed database using the
+ HTTP protocol. [Patrik Karlsson]
+
+ + rpcap-brute performs brute force password auditing against the
+ WinPcap Remote Capture Daemon (rpcap). [Patrik Karlsson]
+
+ + rpcap-info connects to the rpcap service (provides remote sniffing
+ capabilities through WinPcap) and retrieves interface
+ information. [Patrik Karlsson]
+
+ + rsync-brute performs brute force password auditing against the
+ rsync remote file syncing protocol. [Patrik Karlsson]
+
+ + rsync-list-modules lists modules available for rsync (remote file
+ sync) synchronization. [Patrik Karlsson]
+
+ + socks-auth-info determines the supported authentication mechanisms
+ of a remote SOCKS 5 proxy server. [Patrik Karlsson]
+
+ + socks-brute performs brute force password auditing against SOCKS 5
+ proxy servers. [Patrik Karlsson]
+
+ + url-snarf sniffs an interface for HTTP traffic and dumps any URLs, and their
+ originating IP address. [Patrik Karlsson]
+
+ + versant-info extracts information, including file paths, version
+ and database names from a Versant object database. [Patrik
+ Karlsson]
+
+ + vmauthd-brute performs brute force password auditing against the
+ VMWare Authentication Daemon (vmware-authd). [Patrik Karlsson]
+
+ + voldemort-info retrieves cluster and store information from the
+ Voldemort distributed key-value store using the Voldemort Native
+ Protocol. [Patrik Karlsson]
+
+ + xdmcp-discover requests an XDMCP (X display manager control
+ protocol) session and lists supported authentication and
+ authorization mechanisms. [Patrik Karlsson]
+
+o [NSE] Added 14 new protocol libraries! They were all written by
+ Patrik Karlsson, except for the EAP library by Riccardo Cecolin:
+ + dhcp6 (Dynamic Host Configuration Protocol for IPv6)
+ + eap (Extensible Authentication Protocol)
+ + iax2 (Inter-Asterisk eXchange v2 VoIP protocol)
+ + membase (Couchbase Membase TAP protocol)
+ + natpmp (NAT Port Mapping Protocol)
+ + ndmp (Network Data Management Protocol)
+ + pppoe (Point-to-point protocol over Ethernet)
+ + redis (in-memory key-value data store)
+ + rpcap (WinPcap Remote Capture Deamon)
+ + rsync (remote file sync)
+ + socks (SOCKS 5 proxy protocol)
+ + sslcert (for collecting SSL certificates and storing them in the
+ host-based registry)
+ + versant (an object database)
+ + xdmcp (X Display Manager Control Protocol)
+
+o CPE (Common Platform Enumeration) OS classification is now supported
+ for IPv6 OS detection. Previously it was only available for
+ IPv4. [David Fifield]
+
+o [NSE] The host.os table is now a structured array of table that
+ include OS class information and CPE. See
+ https://nmap.org/book/nse-api.html for documentation of the new
+ structure. [Henri Doreau, David]
+
+o [NSE] Service matches can now access CPE through the
+ port.version.cpe array. [Henri Doreau]
+
+o Added a new --script-args-file option which allows you to specify
+ the name of a file containing all of your desired NSE script
+ arguments. The arguments may be separated with commas or newlines
+ and may be overridden by arguments specified on the command-line
+ with --script-args. [Daniel Miller]
+
+o Audited the nmap-service-probes database to remove all unused
+ captures, fixing dozens of bugs with captures either being ignored
+ or two fields erroneously using the same capture. [Lauri Kokkonen,
+ David Fifield, and Rob Nicholls]
+
+o Added new version detection probes and match lines for:
+ + Erlang Port Mapper Daemon
+ + Couchbase Membase NoSQL database
+ + Basho Riak distributed database protocol buffers client (PBC)
+ + Tarantool in-memory data store
+ [Patrik Karlsson]
+
+o Split the nmap-update client into its own binary RPM to avoid the
+ Nmap RPM having a dependency on the Subversion and APR libraries.
+ We're not yet distributing this binary nmap-update RPM since the
+ system isn't complete, but the source code is available in the Nmap
+ tarball and source RPM. [David]
+
+o [NSE] Added authentication support to the MongoDB library and
+ modified existing scripts to support it. [Patrik Karlsson]
+
+o [NSE] Added support to broadcast-listener for extracting address, native VLAN
+ and management IP address from CDP packets. [Tom Sellers]
+
+o [NSE] Added RPC Call CALLIT to the RPC library and modified UDP sockets to be
+ unconnected in order to support broadcast. [Patrik Karlsson]
+
+o [NSE] Modified the ssl-cert and ssl-google-cert-catalog scripts to
+ take advantage of the new sslcert library which retrieves and caches
+ SSL certificates in the registry.
+
+o [NSE] Patch our bitcoin library to support recent changes in the
+ BitCoin protocol. [Andrew Orr, Patrik Karlsson]
+
+o Fixed an error where very long messages could cause an
+ assertion failure: "log_vwrite: vsnprintf failed. Even after
+ increasing bufferlen to ---, Vsnprintf returned -1 (logt == 1)."
+ This was reported by David Hingos.
+
+o Fixed an assertion failure that was printed when a fatal error
+ occurred while an XML tag was incomplete: "!xml.tag_open, file
+ ..\xml.cc, line 401". This was reported by David Hingos. [David
+ Fifield]
+
+o [NSE] Added support for decoding EIGRP broadcasts from Cisco routers
+ to broadcast-listener. [Tom Sellers]
+
+o [NSE] Added redirect support to the http library. All calls to
+ http.get and http.head now transparently handle any HTTP
+ redirects. The number and destination of redirects are limited by
+ default to avoid endless loops or unwanted follows of redirects to
+ different servers, but they can be configured. [Patrik Karlsson]
+
+o [NSE] Modified the sql-injection script to use the httpspider library.
+ [Lauri Kokkonen]
+
+o Added --with-apr and --with-subversion configuration options to
+ support systems where those libraries aren't in the usual places.
+ [David Fifield]
+
+o [NSE] Fixed a bunch of global access errors in various libraries reported by
+ the nse_check_globals script. [Patrik Karlsson]
+
+o Fixed an assertion failure which could occur when connecting to an
+ SSL server:
+ nsock_core.c:186: update_events: Assertion `(ev_inc & ev_dec) == 0' failed.
+ Thanks to Ron for reporting the bug and testing. [Henri Doreau]
+
+o [NSE] Added support to the DNS library for the CHAOS class and NSID
+ requests. [John Bond]
+
+o [NSE] Changed the dnsbl library to take a much faster threaded
+ approach to querying DNS blacklists. [Patrik Karlsson]
+
+o [NSE] Added new services and the ATTACK category to the dnsbl
+ script. [Duarte Silva]
+
+o [NSE] Fixed a memory leak in PortList::setServiceProbeResults()
+ which was noticed and reported by David Fifield. The leak was
+ triggered by set_port_version calls from NSE. [Henri Doreau]
+
+o [NSE] Fixed a race condition in broadcast-dhcp-discover.nse that
+ could cause responses to be missed on fast networks. It was noticed
+ by Vasiliy Kulikov. [David Fifield]
+
+o Fixed a bug in reverse name resolution: a name of "." would leave
+ the hostname unintialized and cause "Illegal character(s) in
+ hostname" warnings. [Gisle Vanem]
+
+o Allow overriding the AR variable to use a different version of the
+ ar library creation tool when creating the liblinear library. [Nuno
+ Gonçalves]
+
+o Added vcredist2008_x86.exe to the Windows zip file. This installer
+ from MS must be run on new Windows 2008 systems (those which don't
+ already have it) before running Nmap. The Nmap Windows installer
+ already takes care of this. [David Fifield]
+
+o Removed about 5MB of unnecessary DocBook XSL from the Nping docs
+ directory. [David Fifield]
+
+o The packet library now uses consistent naming of the address fields
+ for IPv4 and IPv6 packets (ip_bin_src, ip_bin_dst, ip_src, and
+ ip_dst). [Henri Doreau]
+
+o Update to the latest MAC address prefix assignments from IEEE as of
+ March 8, 2012. [Fyodor]
+
+o Fixed a problem in the ippackethdrinfo function which was leading to
+ warning messages like: "BOGUS! Can't parse supposed IP packet" during
+ certain IPv6 scans. [David Fifield]
+
+o Fixed building on Arch Linux. The PCAP_IS_SUITABLE test had to be
+ modified to ensure that -lnl was passed on the build line. See the
+ r28202 svn log for further information. [David Fifield]
+
+o Include net/if.h before net/if_arp.h in netutil.cc and tcpip.cc to
+ hopefully fix some build problems on AIX 5.3.
+
+o [NSE] Added IPv6 support to firewalk.nse. [Henri Doreau]
+
+Nmap 5.61TEST4 [2012-01-02]
+
+o [NSE] Added a new httpspider library which is used for recursively
+ crawling web sites for information. New scripts using this
+ functionality include http-backup-finder, http-email-harvest,
+ http-grep, http-open-redirect, and http-unsafe-output-escaping. See
+ https://nmap.org/nsedoc/ or the list later in this file for details
+ on these. [Patrik]
+
+o Our Mac OS X packages are now x86-only (rather than universal),
+ reducing the download size from 30 MB to about 17. If you still
+ need a PowerPC version (Apple stopped selling those machines in
+ 2006), you can use Nmap 5.51 or 5.61TEST2 from
+ https://nmap.org/dist/?C=M&O=D.
+
+o We set up a new SVN server for the Nmap codebase. This one uses SSL
+ for better security, WebDAV rather than svnserve for greater
+ functionality, is hosted on a faster (virtual) machine, provides
+ Nmap code history back to 1998 rather than 2005, and removes the
+ need for the special "guest" username. The new server is at
+ https://svn.nmap.org. More information:
+ http://seclists.org/nmap-dev/2011/q4/504.
+
+o [NSE] Added a vulnerability management library (vulns.lua) to store and to
+ report discovered vulnerabilities. Modified these scripts to use
+ the new library:
+ - ftp-libopie.nse
+ - http-vuln-cve2011-3192.nse
+ - ftp-vuln-cve2010-4221.nse
+ - ftp-vsftpd-backdoor.nse
+ - smtp-vuln-cve2011-1720.nse
+ - smtp-vuln-cve2011-1764.nse
+ - afp-path-vuln.nse
+ [Djalal, Henri]
+
+o [NSE] Added a new script force feature. You can force scripts to
+ run against target ports (even if the "wrong" service is detected)
+ by placing a plus in front of the script name passed to --script.
+ See
+ https://nmap.org/book/nse-usage.html#nse-script-selection. [Martin
+ Swende]
+
+o [NSE] Added 51(!) NSE scripts, bringing the total up to 297. They
+ are all listed at https://nmap.org/nsedoc/, and the summaries are
+ below (authors listed in brackets):
+
+ + amqp-info gathers information (a list of all server properties)
+ from an AMQP (advanced message queuing protocol)
+ server. [Sebastian Dragomir]
+
+ + bitcoin-getaddr queries a Bitcoin server for a list of known
+ Bitcoin nodes. [Patrik Karlsson]
+
+ + bitcoin-info extracts version and node information from a Bitcoin
+ server [Patrik Karlsson]
+
+ + bitcoinrpc-info obtains information from a Bitcoin server by
+ calling getinfo on its JSON-RPC interface. [Toni
+ Ruottu]
+
+ + broadcast-pc-anywhere sends a special broadcast probe to discover
+ PC-Anywhere hosts running on a LAN. [Patrik Karlsson]
+
+ + broadcast-pc-duo discovers PC-DUO remote control hosts and
+ gateways running on the LAN. [Patrik Karlsson]
+
+ + broadcast-rip-discover discovers hosts and routing information
+ from devices running RIPv2 on the LAN. It does so by sending a
+ RIPv2 Request command and collects the responses from all devices
+ responding to the request. [Patrik Karlsson]
+
+ + broadcast-sybase-asa-discover discovers Sybase Anywhere servers on
+ the LAN by sending broadcast discovery messages. [Patrik Karlsson]
+
+ + broadcast-wake-on-lan wakes a remote system up from sleep by
+ sending a Wake-On-Lan packet. [Patrik Karlsson]
+
+ + broadcast-wpad-discover Retrieves a list of proxy servers on the
+ LAN using the Web Proxy Autodiscovery Protocol (WPAD). [Patrik
+ Karlsson]
+
+ + dns-blacklist checks target IP addresses against multiple DNS
+ anti-spam and open proxy blacklists and returns a list of services
+ where the IP has been blacklisted. [Patrik Karlsson]
+
+ + dns-zeustracker checks if the target IP range is part of a Zeus
+ botnet by querying ZTDNS @ abuse.ch. [Mikael Keri]
+
+ + ganglia-info retrieves system information (OS version, available
+ memory, etc.) from a listening Ganglia Monitoring Daemon or
+ Ganglia Meta Daemon. [Brendan Coles]
+
+ + hadoop-datanode-info discovers information such as log directories
+ from an Apache Hadoop DataNode HTTP status page. [John R. Bond]
+
+ + hadoop-jobtracker-info retrieves information from an Apache Hadoop
+ JobTracker HTTP status page. [John R. Bond]
+
+ + hadoop-namenode-info retrieves information from an Apache Hadoop
+ NameNode HTTP status page. [John R. Bond]
+
+ + hadoop-secondary-namenode-info retrieves information from an
+ Apache Hadoop secondary NameNode HTTP status page. [John R. Bond]
+
+ + hadoop-tasktracker-info retrieves information from an Apache
+ Hadoop TaskTracker HTTP status page. [John R. Bond]
+
+ + hbase-master-info retrieves information from an Apache HBase
+ (Hadoop database) master HTTP status page. [John R. Bond]
+
+ + hbase-region-info retrieves information from an Apache HBase
+ (Hadoop database) region server HTTP status page. [John R. Bond]
+
+ + http-apache-negotiation checks if the target http server has
+ mod_negotiation enabled. This feature can be leveraged to find
+ hidden resources and spider a web site using fewer requests. [Hani
+ Benhabiles]
+
+ + http-backup-finder Spiders a website and attempts to identify
+ backup copies of discovered files. It does so by requesting a
+ number of different combinations of the filename (e.g. index.bak,
+ index.html~, copy of index.html). [Patrik Karlsson]
+
+ + http-cors tests an http server for Cross-Origin Resource Sharing
+ (CORS), a way for domains to explicitly opt in to having certain
+ methods invoked by another domain. [Toni Ruottu]
+
+ + http-email-harvest spiders a web site and collects e-mail
+ addresses. [Patrik Karlsson]
+
+ + http-grep spiders a website and attempts to match all pages and
+ urls against a given string. Matches are counted and grouped per
+ url under which they were discovered. [Patrik Karlsson]
+
+ + http-method-tamper tests whether a JBoss target is vulnerable to
+ jmx console authentication bypass (CVE-2010-0738). [Hani
+ Benhabiles]
+
+ + http-open-redirect spiders a website and attempts to identify open
+ redirects. Open redirects are handlers which commonly take a URL
+ as a parameter and responds with a http redirect (3XX) to the
+ target. [Martin Holst Swende]
+
+ + http-put uploads a local file to a remote web server using the
+ HTTP PUT method. You must specify the filename and URL path with
+ NSE arguments. [Patrik Karlsson]
+
+ + http-robtex-reverse-ip Obtains up to 100 forward DNS names for a
+ target IP address by querying the Robtex service
+ (http://www.robtex.com/ip/). [riemann]
+
+ + http-unsafe-output-escaping spiders a website and attempts to
+ identify output escaping problems where content is reflected back
+ to the user. [Martin Holst Swende]
+
+ + http-vuln-cve2011-3368 tests for the CVE-2011-3368 (Reverse Proxy
+ Bypass) vulnerability in Apache HTTP server's reverse proxy
+ mode. [Ange Gutek, Patrik Karlsson]
+
+ + ipv6-node-info obtains hostnames, IPv4 and IPv6 addresses through
+ IPv6 Node Information Queries. [David Fifield]
+
+ + irc-botnet-channels checks an IRC server for channels that are
+ commonly used by malicious botnets. [David Fifield, Ange Gutek]
+
+ + irc-brute performs brute force password auditing against IRC
+ (Internet Relay Chat) servers. [Patrik Karlsson]
+
+ + krb5-enum-users discovers valid usernames by brute force querying
+ likely usernames against a Kerberos service. [Patrik Karlsson]
+
+ + maxdb-info retrieves version and database information from a SAP
+ Max DB database. [Patrik Karlsson]
+
+ + metasploit-xmlrpc-brute performs brute force password auditing
+ against a Metasploit RPC server using the XMLRPC protocol. [Vlatko
+ Kosturjak]
+
+ + ms-sql-dump-hashes Dumps the password hashes from an MS-SQL server
+ in a format suitable for cracking by tools such as
+ John-the-ripper. In order to do so the user needs to have the
+ appropriate DB privileges. [Patrik Karlsson]
+
+ + nessus-brute performs brute force password auditing against a
+ Nessus vulnerability scanning daemon using the NTP 1.2
+ protocol. [Patrik Karlsson]
+
+ + nexpose-brute performs brute force password auditing against a
+ Nexpose vulnerability scanner using the API 1.1. [Vlatko
+ Kosturjak]
+
+ + openlookup-info parses and displays the banner information of an
+ OpenLookup (network key-value store) server. [Toni Ruottu]
+
+ + openvas-otp-brute performs brute force password auditing against a
+ OpenVAS vulnerability scanner daemon using the OTP 1.0
+ protocol. [Vlatko Kosturjak]
+
+ + reverse-index creates a reverse index at the end of scan output
+ showing which hosts run a particular service. [Patrik Karlsson]
+
+ + rexec-brute performs brute force password auditing against the
+ classic UNIX rexec (remote exec) service. [Patrik Karlsson]
+
+ + rlogin-brute performs brute force password auditing against the
+ classic UNIX rlogin (remote login) service. [Patrik Karlsson]
+
+ + rtsp-methods determines which methods are supported by the RTSP
+ (real time streaming protocol) server. [Patrik Karlsson]
+
+ + rtsp-url-brute attempts to enumerate RTSP media URLS by testing
+ for common paths on devices such as surveillance IP
+ cameras. [Patrik Karlsson]
+
+ + telnet-encryption determines whether the encryption option is
+ supported on a remote telnet server. Some systems (including
+ FreeBSD and the krb5 telnetd available in many Linux
+ distributions) implement this option incorrectly, leading to a
+ remote root vulnerability. [Patrik Karlsson, David Fifield,
+ Fyodor]
+
+ + tftp-enum enumerates TFTP (trivial file transfer protocol) filenames by testing
+ for a list of common ones. [Alexander Rudakov]
+
+ + unusual-port compares the detected service on a port against the
+ expected service for that port number (e.g. ssh on 22, http on 80)
+ and reports deviations. An early version of this same idea was
+ written by Daniel Miller. [Patrik Karlsson]
+
+ + vuze-dht-info retrieves some basic information, including protocol
+ version from a Vuze filesharing node. [Patrik Karlsson]
+
+o [NSE] Added some new protocol libraries
+ + amqp (advanced message queuing protocol) [Sebastian Dragomir]
+ + bitcoin crypto currency [Patrik Karlsson
+ + dnsbl for DNS-based blacklists [Patrik Karlsson
+ + rtsp (real time streaming protocol) [Patrik Karlsson]
+ + httpspider and vulns have separate entries in this CHANGELOG
+
+o Nmap now includes a nmap-update program for obtaining the latest
+ updates (new scripts, OS fingerprints, etc.) The system is
+ currently only available to a few developers for testing, but we
+ hope to enable a larger set of beta testers soon. [David]
+
+o On Windows, the directory [HOME]\AppData\Roaming\nmap is now
+ searched for data files. This is the equivalent of $HOME/.nmap on
+ POSIX. [David]
+
+o Improved OS detection performance by scaling congestion control
+ increments by the response rate during OS scan, just as was done
+ for port scan before. [David]
+
+o [NSE] The targets-ipv6-multicast-*.nse scripts now scan all
+ interfaces by default. They show the MAC address and interface name
+ now too. [David, Daniel Miller]
+
+o Added some new version detection probes:
+ + MongoDB service [Martin Holst Swende]
+ + Metasploit XMLRPC service [Vlatko Kosturjak]
+ + Vuze filesharing system [Patrik]
+ + Redis key-value store [Patrik]
+ + memcached [Patrik]
+ + Sybase SQL Anywhere [Patrik]
+ + VMware ESX Server [Aleksey Tyurin]
+ + TCP Kerberos [Patrik]
+ + PC-Duo [Patrik]
+ + PC Anywhere [Patrik]
+
+o Targets requiring different source addresses now go into different
+ hostgroups, not only for host discovery but also for port scanning.
+ Before, only responses to one of the source addresses would be
+ processed, and the others would be ignored. [David]
+
+o Tidied up the version detection DB (nmap-service-probes) with a new
+ cleanup/canonicalization program sv-tidy. In particular, this:
+ - Removes excess whitespace
+ - Sorts templates in the order m p v i d o h cpe:
+ - Canonicalizes template delimiters in the order: / | % = @ #.
+ [David]
+
+o The --exclude and --excludefile options for excluding targets can
+ now be used together. [David]
+
+o [NSE] Added support for detecting whether a http connection was established
+ using SSL or not to the http.lua library [Patrik]
+
+o [NSE] Added local port to BPF filter in snmp-brute to fix bug that would
+ prevent multiple scripts from receiving the correct responses. The bug was
+ discovered by Brendan Bird. [Patrik]
+
+o [NSE] Changed the dhcp-discover script to use the DHCPINFORM request
+ to query dhcp servers instead of DHCPDISCOVER. Also removed DoS code
+ from dhcp-discover and placed the script into the discovery and safe
+ categories. Added support for adding options to DHCP requests and
+ cleaned up some code in the dhcp library. [Patrik]
+
+o [NSE] Applied patch to snmp-brute that solves problems with handling
+ errors that occur during community list file parsing. [Duarte
+ Silva]
+
+o [NSE] Added new fingerprints to http-enum for:
+ - Subversion, CVS and Apache Archiva [Duarte Silva]
+ - DVCS systems Git, Mercurial and Bazaar [Hani Benhabiles].
+
+o [NSE] Applied some code cleanup to the snmp library. [Brendan Byrd]
+
+o [NSE] Fixed an undeclared variable bug in snmp-ios-config [Patrik]
+
+o [NSE] Add additional version information to Mongodb scripts [Martin
+ Swende]
+
+o [NSE] Added path argument to the http-auth script and update the
+ script to use stdnse.format_output. [Duarte Silva, Patrik]
+
+o [NSE] Fixed bug in the http library that would fail to parse
+ authentication headers if no parameters were present. [Patrik]
+
+o Made a syntax change in the zenmap.desktop file for compliance with
+ the XDG standard. [Frederik Schwarzer]
+
+o [NSE] Replaced a number of GET requests to HEAD in http-
+ fingerprints.lua. HEAD is quicker and sufficient when no matching
+ is performed on the returned contents. [Hani Benhabiles]
+
+o [NSE] Added support for retrieving SSL certificates from FTP
+ servers. [Matt Selsky]
+
+o [Nping] The --safe-payloads option is now the default. Added
+ --include-payloads for the special situations where payloads are
+ needed. [Colin Rice]
+
+o [NSE] Added new functionality and fixed some bugs in the brute library:
+ - Added support for restricting the number of guesses performed by the
+ brute library against users, to prevent account lockouts.
+ - Added support to guess the username as password. The documentation
+ previously suggested (wrongly) that this was the default behavior.
+ - Added support to guess an empty string as password if not
+ present in the dictionary. [Patrik]
+
+o [NSE] Re-enabled support for guessing the username in addition to password
+ that was incorrectly removed from the metasploit-xmlrpc-brute in previous
+ commit. [Patrik]
+
+o [NSE] Fixed bug that would prevent brute scripts from running if no service
+ field was present in the port table. [Patrik]
+
+o [NSE] Turned on promiscuous mode in targets-sniffer.nse so that it
+ finds packets not only from or to the scanning host. [David]
+
+o The Zenmap topology display feature is now disabled when there are
+ more than 1,000 target hosts. Those topology maps slow down the
+ interface and are generally too crowded to be of much use.
+
+o [NSE] Modified the http library to support servers that don't return valid
+ chunked encoded data, such as the Citrix XML service. [Patrik]
+
+o [NSE] Fixed a bug where the brute library would not abort even after all
+ retries were exhausted [Patrik]
+
+o Fixed a bug in the IPv6 OS probe called NI. The Node Information
+ Query didn't include the target address as the payload, so at least
+ OS X didn't respond. This differed from the probe sent by the
+ ipv6fp.py program from which some of our fingerprints were derived.
+ [David]
+
+o [NSE] Fixed an error in the mssql library that was causing the
+ broadcast-ms-sql-discover script to fail when trying to update port version
+ information. [Patrik]
+
+o [NSE] Added the missing broadcast category to the broadcast-listener script.
+ [Jasey DePriest]
+
+o [NSE] Made changes to the categories of the following scripts (new
+ categories shown) [Duarte Silva]:
+ - http-userdir-enum.nse (auth,intrusive)
+ - mysql-users.nse (auth,intrusive)
+ - http-wordpress-enum.nse (auth,intrusive,vuln)
+ - krb5-enum-users.nse (auth,intrusive)
+ - snmp-win32-users.nse (default,auth,safe)
+ - smtp-enum-users.nse (auth,external,intrusive)
+ - ncp-enum-users.nse (auth,safe)
+ - smb-enum-users.nse (auth,intrusive)
+
+o Made nbase compile with the clang compiler that is a part of Xcode
+ 4.2. [Daniel J. Luke]
+
+o [NSE] Fix a nil table index bug discovered in the mongodb
+ library. [Thomas Buchanan]
+
+o [NSE] Added XMPP support to ssl-cert.nse.
+
+o [NSE] Made http-wordpress-enum.nse able to get names of users who
+ have no posts. [Duarte Silva]
+
+o Increased hop distance estimates from OS detection by one. The
+ distance now counts the number of hops including the final one to
+ the target, not just the number of intermediate nodes. The IPv6
+ distance calculation already worked this way. [David]
+
+Nmap 5.61TEST2 [2011-09-30]
+
+o Added IPv6 OS detection system! The new system utilizes many tests
+ similar to IPv4, and also some IPv6-specific ones that we found to
+ be particularly effective. And it uses a machine learning approach
+ rather than the static classifier we use for IPv4. We hope to move
+ some of the IPv6 innovations back to our IPv4 system if they work
+ out well. The database is still very small, so please submit any
+ fingerprints that Nmap gives you to the specified URL (as long as
+ you are certain that you know what the target system is
+ running). Usage and results output are basically the same as with
+ IPv4, but we will soon document the internal mechanisms at
+ https://nmap.org/book/osdetect.html, just as we have for IPv4. For an
+ example, try "nmap -6 -O scanme.nmap.org". [David, Luis]
+
+o [NSE] Added 3 scripts, bringing the total to 246! You can learn
+ more about them at https://nmap.org/nsedoc/. Here they are (authors
+ listed in brackets):
+
+ + lltd-discovery uses the Microsoft LLTD protocol to discover hosts
+ on a local network. [Gorjan Petrovski]
+
+ + ssl-google-cert-catalog queries Google's Certificate Catalog for
+ the SSL certificates retrieved from target hosts. [Vasiliy Kulikov]
+
+ + quake3-info extracts information from a Quake3-like game
+ server. [Toni Ruottu]
+
+o Improved AIX support for raw scans. This includes some patches
+ originally written by Peter O'Gorman and Florian Schmid. It also
+ involved various build fixes found necessary on AIX 6.1 and 7.1. See
+ https://nmap.org/book/inst-other-platforms.html . [David]
+
+o Fixed Nmap so that it again compiles and runs on Solaris 10,
+ including IPv6 support. [David]
+
+o [NSE] Moved our brute force authentication cracking scripts
+ (*-brute) from the "auth" category into a new "brute"
+ category. Nmap's brute force capabilities have grown tremendously!
+ You can see all 32 of them at
+ https://nmap.org/nsedoc/categories/brute.html . It isn't clear
+ whether dns-brute should be in the brute category, so for now it
+ isn't. [Fyodor]
+
+o Made the interface gathering loop work on Linux when an interface
+ index is more than two digits in /proc/sys/if_inet6. Joe McEachern
+ tracked down the problem and provided the fix.
+
+o [NSE] Fixed a bug in dns.lua: ensure that dns.query() always return two values
+ (status, response) and replaced the workaround in asn-query.nse by the proper
+ use. [Henri]
+
+o [NSE] Made irc-info.nse handle the case where the MOTD is missing.
+ Patch by Sebastian Dragomir.
+
+o Updated nmap-mac-prefixes to include the latest IEEE assignments
+ as of 2011-09-29.
+
+Nmap 5.61TEST1 [2011-09-19]
+
+o Added Common Platform Enumeration (CPE, http://cpe.mitre.org/)
+ output for OS and service versions. This is a standard way to
+ identify operating systems and applications so that Nmap can
+ better interoperate with other software. Nmap's own (generally more
+ comprehensive) taxonomy/classification system is still supported as
+ well. Some OS and version detection results don't have CPE entries
+ yet. CPE entries show up in normal output with the headings "OS
+ CPE:" and "Service Info:":
+ OS CPE: cpe:/o:linux:kernel:2.6.39
+ Service Info: OS: Linux; CPE: cpe:/o:linux:kernel
+ These also appear in XML output, which additionally has CPE entries
+ for service versions. [David, Henri]
+
+o Added IPv6 Neighbor Discovery ping. This is the IPv6 analog to IPv4
+ ARP scan. It is the default ping type for local IPv6 networks.
+ [Weilin]
+
+o Integrated your latest (IPv4) OS detection submissions and
+ corrections until June 22. New fingerprints include Linux 3, FreeBSD
+ 9, Mac OS X 10.7 (Lion), and 300+ more. The DB size increased 11% to
+ 3,308 fingerprints. See
+ http://seclists.org/nmap-dev/2011/q3/556. Please keep those
+ fingerprints coming! We now accept IPv4 and IPv6 OS fingerprints as
+ well as service fingerprints, plus corrections of all types if Nmap
+ guess wrong.
+
+o [NSE] Added 27 scripts, bringing the total to 243! You can learn
+ more about any of them at https://nmap.org/nsedoc/. Here are the new
+ ones (authors listed in brackets):
+
+ + address-info shows extra information about IPv6 addresses, such as
+ embedded MAC or IPv4 addresses when available. [David Fifield]
+
+ + bittorrent-discovery discovers bittorrent peers sharing a file
+ based on a user-supplied torrent file or magnet link. [Gorjan
+ Petrovski]
+
+ + broadcast-db2-discover attempts to discover DB2 servers on the
+ network by sending a broadcast request to port 523/udp. [Patrik
+ Karlsson]
+
+ + broadcast-dhcp-discover sends a DHCP request to the broadcast
+ address (255.255.255.255) and reports the results. [Patrik
+ Karlsson]
+
+ + broadcast-listener sniffs the network for incoming broadcast
+ communication and attempts to decode the received packets. It
+ supports protocols like CDP, HSRP, Spotify, DropBox, DHCP, ARP and
+ a few more. [Patrik Karlsson]
+
+ + broadcast-ping sends broadcast pings on a selected interface using
+ raw ethernet packets and outputs the responding hosts' IP and MAC
+ addresses or (if requested) adds them as targets. [Gorjan
+ Petrovski]
+
+ + cvs-brute performs brute force password auditing against CVS
+ pserver authentication. [Patrik Karlsson]
+
+ + cvs-brute-repository attempts to guess the name of the CVS
+ repositories hosted on the remote server. With knowledge of the
+ correct repository name, usernames and passwords can be
+ guessed. [Patrik Karlsson]
+
+ + ftp-vsftpd-backdoor tests for the presence of the vsFTPd 2.3.4
+ backdoor reported on 2011-07-04 (CVE-2011-2523). This script
+ attempts to exploit the backdoor using the innocuous 'id' command
+ by default, but that can be changed with the 'exploit.cmd' or
+ 'ftp-vsftpd-backdoor.cmd' script arguments. [Daniel Miller]
+
+ + ftp-vuln-cve2010-4221 checks for a stack-based buffer overflow in
+ the ProFTPD server, version between 1.3.2rc3 and 1.3.3b. [Djalal
+ Harouni]
+
+ + http-awstatstotals-exec exploits a remote code execution
+ vulnerability in Awstats Totals 1.0 up to 1.14 and possibly other
+ products based on it (CVE: 2008-3922). [Paulino Calderon]
+
+ + http-axis2-dir-traversal Exploits a directory traversal
+ vulnerability in Apache Axis2 version 1.4.1 by sending a specially
+ crafted request to the parameter 'xsd' (OSVDB-59001). By default
+ it will try to retrieve the configuration file of the Axis2
+ service '/conf/axis2.xml' using the path '/axis2/services/' to
+ return the username and password of the admin account. [Paulino
+ Calderon]
+
+ + http-default-accounts tests for access with default credentials
+ used by a variety of web applications and devices. [Paulino
+ Calderon]
+
+ + http-google-malware checks if hosts are on Google's blacklist of
+ suspected malware and phishing servers. These lists are constantly
+ updated and are part of Google's Safe Browsing service. [Paulino
+ Calderon]
+
+ + http-joomla-brute performs brute force password auditing against
+ Joomla web CMS installations. [Paulino Calderon]
+
+ + http-litespeed-sourcecode-download exploits a null-byte poisoning
+ vulnerability in Litespeed Web Servers 4.0.x before 4.0.15 to
+ retrieve the target script's source code by sending a HTTP request
+ with a null byte followed by a .txt file extension
+ (CVE-2010-2333). [Paulino Calderon]
+
+ + http-vuln-cve2011-3192 detects a denial of service vulnerability
+ in the way the Apache web server handles requests for multiple
+ overlapping/simple ranges of a page. [Duarte Silva]
+
+ + http-waf-detect attempts to determine whether a web server is
+ protected by an IPS (Intrusion Prevention System), IDS (Intrusion
+ Detection System) or WAF (Web Application Firewall) by probing the
+ web server with malicious payloads and detecting changes in the
+ response code and body. [Paulino Calderon]
+
+ + http-wordpress-brute performs brute force password auditing
+ against Wordpress CMS/blog installations. [Paulino Calderon]
+
+ + http-wordpress-enum enumerates usernames in Wordpress blog/CMS
+ installations by exploiting an information disclosure
+ vulnerability existing in versions 2.6, 3.1, 3.1.1, 3.1.3 and
+ 3.2-beta2 and possibly others. [Paulino Calderon]
+
+ + imap-brute performs brute force password auditing against IMAP
+ servers using either LOGIN, PLAIN, CRAM-MD5, DIGEST-MD5 or NTLM
+ authentication. [Patrik Karlsson]
+
+ + smtp-brute performs brute force password auditing against SMTP
+ servers using either LOGIN, PLAIN, CRAM-MD5, DIGEST-MD5 or NTLM
+ authentication. [Patrik Karlsson]
+
+ + smtp-vuln-cve2011-1764 checks for a format string vulnerability in
+ the Exim SMTP server (version 4.70 through 4.75) with DomainKeys
+ Identified Mail (DKIM) support (CVE-2011-1764). [Djalal Harouni]
+
+ + targets-ipv6-multicast-echo sends an ICMPv6 echo request packet to
+ the all-nodes link-local multicast address (ff02::1) to discover
+ responsive hosts on a LAN without needing to individually ping
+ each IPv6 address. [David Fifield, Xu Weilin]
+
+ + targets-ipv6-multicast-invalid-dst sends an ICMPv6 packet with an
+ invalid extension header to the all-nodes link-local multicast
+ address (ff02::1) to discover (some) available hosts on the
+ LAN. This works because some hosts will respond to this probe with
+ an ICMPv6 parameter problem packet. [David Fifield, Xu Weilin]
+
+ + targets-ipv6-multicast-slaac performs IPv6 host discovery by
+ triggering stateless address auto-configuration (SLAAC). [David
+ Fifield, Xu Weilin]
+
+ + xmpp-brute Performs brute force password auditing against XMPP
+ (Jabber) instant messaging servers. [Patrik Karlsson]
+
+o Fixed compilation on OS X 10.7 Lion. Thanks to Patrik Karlsson and
+ Babak Farroki for researching fixes.
+
+o [NSE] The script arguments which start with a script name
+ (e.g. http-brute.hostname or afp-ls.maxfiles) can now accept the
+ unqualified arguments as well (hostname, maxfiles). This lets you
+ use the generic version ("hostname") when you want to affect
+ multiple scripts, while using the qualified version to target
+ individual scripts. If both are specified, the qualified version
+ takes precedence for that particular script. This works for library
+ script arguments too (e.g. you can specify 'timelimit' rather than
+ unpwdb.timelimit). [Paulino]
+
+o [Ncat] Updated SSL certificate store (ca-bundle.crt), primarily to
+ remove the epic fail known as DigiNotar.
+
+o Nmap now defers options parsing until it has read through all the
+ command line arguments. This removes the few remaining cases where
+ option order mattered (for example, IPv6 users previously had to
+ specify -6 before -S). [Shinnok]
+
+o [NSE] Added a new default credential list for Oracle databases and
+ modified the oracle-brute script to make use of it. [Patrik]
+
+o [NSE] Our Packet library (packet.lua) now handles IPv6. This is used
+ by the new multicast IPv6 host discovery scripts
+ (targets-ipv6-*). [Weilin]
+
+o [NSE] Replaced xmpp.nse with an an overhauled version named
+ xmpp-info.nse which brings many new features and fixes. [Vasiliy Kulikov]
+
+o [NSE] Fixed SSL compressor names in ssl-enum-ciphers.nse, and
+ removed redundant multiple listings of the NULL compressor.
+ [Matt Selsky]
+
+o [NSE] Added cipher strength ratings to ssl-enum-ciphers.nse.
+ [Gabriel Lawrence]
+
+o [NSE] Fixed a bug in the ssh2-enum-algos script that would prevent it from
+ displaying any output unless run in debug mode. [Patrik]
+
+o [NSE] Added 4 more protocol libraries. You can learn more about any
+ of them at https://nmap.org/nsedoc/. Here are the new ones (authors
+ listed in brackets):
+
+ + bittorrent supports the BitTorrent file sharing protocol [Gorjan
+ Petrovski]
+
+ + cvs includes support for the Concurrent Versions System (CVS)
+ [Patrik Karlsson]
+
+ + sasl provides common code for "Simple Authentication and Security
+ Layer" to services supporting it. The algorithms supported by the
+ library are: PLAIN, CRAM-MD5, DIGEST-MD5 and NTLM. [Djalal
+ Harouni, Patrik Karlsson]
+
+ + xmpp handles XMPP (Jabber) IM servers [Patrik Karlsson]
+
+o [NSE] Removed the mac-geolocation script, which relied on a Google
+ database to determine strikingly accurate GPS coordinates for
+ anyone's wireless access points (based on their MAC address). It
+ was very powerful. Perhaps Google decided it was too powerful, as
+ they discontinued the service before our script was even 2 months
+ old.
+
+o [Ncat] Added an --append-output option which, when used along with
+ -o and/or -x, prevents clobbering (truncating) an existing
+ file. [Shinnok]
+
+o Fixed RPC scan (part of -sV) to work on the 64-bit machines where
+ "unsigned long" is 8 bytes rather than 4. We now use the more
+ portable u32 in the code. [David]
+
+o [NSE] Moved some scripts into the default category: giop-info,
+ vnc-info, ncp-serverinfo, smb-security-mode, and and
+ afp-serverinfo. [Djalal]
+
+o Relaxed the XML DTD to allow validation of files where the verbosity
+ level changed during the scan. Also made a service confidence of 8
+ (used when tcpwrapped) or any other number between 0 and 10
+ legal. [Daniel Miller]
+
+o [NSE] Fixed authentication problems in the TNS library that would prevent
+ authentication from working against Oracle 11.2.0.2.0 XE [Chris Woodbury]
+
+o [NSE] Added basic query support to the Oracle TNS library so that scripts
+ can now make SQL queries against database servers. Also improved
+ support for 64-bit database servers and improved the documentation. [Patrik]
+
+o Removed some restrictions on probe matching that, for example,
+ prevented a RST/ACK reply from being recognized in a NULL scan. This
+ was found and fixed by Matthew Stickney and Joe McEachern.
+
+o Rearranged some characters classes in service matches to avoid any
+ that look like POSIX collating symbols ("[.xyz.]"). John Hutchison
+ discovered this error caused by one of the match lines:
+ InitMatch: illegal regexp: POSIX collating elements are not supported
+ [Daniel Miller]
+
+o [NSE] Added more than 100 new signatures to http-enum (many for
+ known vulnerabilities). They are in the categories: general,
+ attacks, cms, security, management and database [Paulino]
+
+o [NSE] Updated account status text in brute force password discovery
+ scripts in an effort to make the reporting more consistent across
+ all scripts. This will have an impact on any code that parses these
+ values. [Tom Sellers]
+
+o Nmap now includes the Liblinear library for large linear
+ classification (http://www.csie.ntu.edu.tw/~cjlin/liblinear/). We
+ are using it for the upcoming IPv6 OS detection system, and (if that
+ works out well) may eventually use it for IPv4 too. It uses a
+ three-clause BSD license.
+
+o [NSE] Better error messages (including a traceback) are now provided
+ when script loading fails. [Patrick]
+
+o [Zenmap] Prevent Zenmap from deleting ports when merging scans
+ results based on newer scans which did not actually scan the ports
+ in question. Additionally Zenmap now only updates ports with new
+ information if the new information uses the same protocol--not just
+ the same port number. [Colin Rice]
+
+o [Ncat] Fixed a crash which would occur when --ssl-verify is combined
+ with -vvv on windows. [Colin Rice]
+
+o [Nping] Added new --safe-payloads option for echo mode which causes
+ returned packet payloads to be zeroed to reduce privacy risks if
+ Nping echo server was to accidentally (or through malicious intent)
+ return a packet which wasn't sent by the Nping echo client. We hope
+ to soon make this behavior the default. [Luis]
+
+o Fixed a bug that would make Nmap segfault if it failed to open an
+ interface using pcap. The bug details and patch are posted at
+ http://seclists.org/nmap-dev/2011/q3/365 [Patrik]
+
+o Ncat SCTP mode now supports connection brokering
+ (--sctp --broker). [Shinnok]
+
+o Consolidated a bunch of duplicate code between Ncat's listen
+ (ncat_listen.c) and broker (ncat_broker.c) modes to ease
+ maintenance. [Shinnok]
+
+o Added a 'nostore' nse argument to the brute force library which
+ prevents the brute force authentication cracking scripts from
+ storing found credentials in the creds library (they will still be
+ printed in script output).
+
+o [NSE] Fixed the nsedebug print_hex() function so it does not print an
+ empty line if there are no remaining characters, and improved its NSEDoc.
+ [Chris Woodbury].
+
+o [Ncat] Ncat no longer blocks while an ssl handshake is taking place
+ or waiting to complete. This could make listening Ncat instances
+ unavailable to other clients because one client was taking too long
+ to complete the SSL handshake. Our public Ncat chat server is now
+ much more reliable (connect with: ncat --ssl -v chat.nmap.org).
+ [Shinnok]
+
+o [NSE] Updated SMTP and IMAP libraries to support authentication
+ using both plain-text and the SASL library. [Patrik]
+
+o [Zenmap] The Zenmap crash handler now instructs users to mail in
+ crash information to nmap-dev rather than offering to create a
+ Sourceforge bug tracker entry. [Colin Rice]
+
+o [NSE] Applied patch from Chris Woodbury that adds the following
+ additional information to the output of smb-os-discovery: NetBIOS
+ computer name, NetBIOS domain name, FQDN, and forest name.
+
+o [NSE] Updated smb-brute to add detection for valid credentials where the
+ target account was expired or limited by time or login host constraints.
+ [Tom Sellers]
+
+o [Ncat] Ncat now supports IPV6 addresses by default without the -6 flag.
+ Additionally ncat listens on both ::1 and localhost when passed
+ -l, or any other listening mode unless a specific listening address is
+ supplied. [Colin Rice]
+
+o Fixed broken XML output in the case of timed-out hosts; the
+ enclosing host element was missing. The fix was suggested by Rémi
+ Mollon.
+
+o [NSE] Multiple ldap-brute changes by Tom Sellers:
+ + Added support for 2008 R2 functional level Active Directory instances
+ + Added detection for valid credentials where the target account was
+ expired or limited by time or login host constraints.
+ + Added support for specifying a UPN suffix to be appended to usernames
+ when brute forcing Microsoft Active Directory accounts.
+ + Added support for saving discovered credentials to a CSV file.
+ + Now reports valid credentials as they are discovered when the script
+ is run with -vv or higher.
+
+o [NSE] ldap-search.nse - Added support for saving search results to
+ CSV. This is done by using the ldap.savesearch script argument to
+ specify an output filename prefix. [Tom Sellers]
+
+o Handle an unconventional IPv6 internal link-local address convention
+ used by Mac OS X. See
+ http://seclists.org/nmap-dev/2011/q3/906. [David]
+
+o [NSE] Optimized stdnse.format_output (changing the data structures)
+ to improve performance for scripts which produce a lot of output. See
+ http://seclists.org/nmap-dev/2011/q3/623. [Djalal]
+
+o [NSE] Fix nping-brute so that it again works on IPv6. [Toni Ruottu]
+
+o [NSE] Added the make_array and make_object functions to our json
+ library, allowing LUA tables to be treated as JSON arrays or
+ objects. See http://seclists.org/nmap-dev/2011/q3/15 [Daniel Miller]
+
+o [NSE] The ip-geolocation-ipinfodb now allows you to specify an
+ IPInfoDB API key using the apikey NSE argument. [Gorjan]
+
+o [NSE] Renamed http-wp-plugins to http-wordpress-plugins script for
+ consistency with http-wordpress-brute and now
+ http-wordpress-enum. [Fyodor]
+
+Nmap 5.59BETA1 [2011-06-30]
+
+o [NSE] Added 40 scripts, bringing the total to 217! You can learn
+ more about any of them at https://nmap.org/nsedoc/. Here are the new
+ ones (authors listed in brackets):
+
+ + afp-ls: Lists files and their attributes from Apple Filing
+ Protocol (AFP) volumes. [Patrik Karlsson]
+
+ + backorifice-brute: Performs brute force password auditing against
+ the BackOrifice remote administration (trojan) service. [Gorjan
+ Petrovski]
+
+ + backorifice-info: Connects to a BackOrifice service and gathers
+ information about the host and the BackOrifice service
+ itself. [Gorjan Petrovski]
+
+ + broadcast-avahi-dos: Attempts to discover hosts in the local
+ network using the DNS Service Discovery protocol, then tests
+ whether each host is vulnerable to the Avahi NULL UDP packet
+ denial of service bug (CVE-2011-1002). [Djalal Harouni]
+
+ + broadcast-netbios-master-browser: Attempts to discover master
+ browsers and the Windows domains they manage. [Patrik Karlsson]
+
+ + broadcast-novell-locate: Attempts to use the Service Location
+ Protocol to discover Novell NetWare Core Protocol (NCP)
+ servers. [Patrik Karlsson]
+
+ + creds-summary: Lists all discovered credentials (e.g. from brute
+ force and default password checking scripts) at end of scan.
+ [Patrik Karlsson]
+
+ + dns-brute: Attempts to enumerate DNS hostnames by brute force
+ guessing of common subdomains. [Cirrus]
+
+ + dns-nsec-enum: Attempts to discover target hosts' services using
+ the DNS Service Discovery protocol. [Patrik Karlsson]
+
+ + dpap-brute: Performs brute force password auditing against an
+ iPhoto Library. [Patrik Karlsson]
+
+ + epmd-info: Connects to Erlang Port Mapper Daemon (epmd) and
+ retrieves a list of nodes with their respective port
+ numbers. [Toni Ruottu]
+
+ + http-affiliate-id: Grabs affiliate network IDs (e.g. Google
+ AdSense or Analytics, Amazon Associates, etc.) from a web
+ page. These can be used to identify pages with the same
+ owner. [Hani Benhabiles, Daniel Miller]
+
+ + http-barracuda-dir-traversal: Attempts to retrieve the
+ configuration settings from a Barracuda Networks Spam & Virus
+ Firewall device using the directory traversal vulnerability
+ described at
+ http://seclists.org/fulldisclosure/2010/Oct/119. [Brendan Coles]
+
+ + http-cakephp-version: Obtains the CakePHP version of a web
+ application built with the CakePHP framework by fingerprinting
+ default files shipped with the CakePHP framework. [Paulino
+ Calderon]
+
+ + http-majordomo2-dir-traversal: Exploits a directory traversal
+ vulnerability existing in the Majordomo2 mailing list manager to
+ retrieve remote files. (CVE-2011-0049). [Paulino Calderon]
+
+ + http-wp-plugins: Tries to obtain a list of installed WordPress
+ plugins by brute force testing for known plugins. [Ange Gutek]
+
+ + ip-geolocation-geobytes: Tries to identify the physical location
+ of an IP address using the Geobytes geolocation web service
+ (http://www.geobytes.com/iplocator.htm). [Gorjan Petrovski]
+
+ + ip-geolocation-geoplugin: Tries to identify the physical location
+ of an IP address using the Geoplugin geolocation web service
+ (http://www.geoplugin.com/). [Gorjan Petrovski]
+
+ + ip-geolocation-ipinfodb: Tries to identify the physical location
+ of an IP address using the IPInfoDB geolocation web service
+ (http://ipinfodb.com/ip_location_api.php). [Gorjan Petrovski]
+
+ + ip-geolocation-maxmind: Tries to identify the physical location of
+ an IP address using a Geolocation Maxmind database file (available
+ from http://www.maxmind.com/app/ip-location). [Gorjan Petrovski]
+
+ + ldap-novell-getpass: Attempts to retrieve the Novell Universal
+ Password for a user. You must already have (and include in script
+ arguments) the username and password for an eDirectory server
+ administrative account. [Patrik Karlsson]
+
+ + mac-geolocation: Looks up geolocation information for BSSID (MAC)
+ addresses of WiFi access points in the Google geolocation
+ database. [Gorjan Petrovski]
+
+ + mysql-audit: Audit MySQL database server security configuration
+ against parts of the CIS MySQL v1.0.2 benchmark (the engine can
+ also be used for other MySQL audits by creating appropriate audit
+ files). [Patrik Karlsson]
+
+ + ncp-enum-users: Retrieves a list of all eDirectory users from the
+ Novell NetWare Core Protocol (NCP) service. [Patrik Karlsson]
+
+ + ncp-serverinfo: Retrieves eDirectory server information (OS
+ version, server name, mounts, etc.) from the Novell NetWare Core
+ Protocol (NCP) service. [Patrik Karlsson]
+
+ + nping-brute: Performs brute force password auditing against an
+ Nping Echo service. [Toni Ruottu]
+
+ + omp2-brute: Performs brute force password auditing against the
+ OpenVAS manager using OMPv2. [Henri Doreau]
+
+ + omp2-enum-targets: Attempts to retrieve the list of target systems
+ and networks from an OpenVAS Manager server. [Henri Doreau]
+
+ + ovs-agent-version: Detects the version of an Oracle OVSAgentServer
+ by fingerprinting responses to an HTTP GET request and an XML-RPC
+ method call. [David Fifield]
+
+ + quake3-master-getservers: Queries Quake3-style master servers for
+ game servers (many games other than Quake 3 use this same
+ protocol). [Toni Ruottu]
+
+ + servicetags: Attempts to extract system information (OS, hardware,
+ etc.) from the Sun Service Tags service agent (UDP port
+ 6481). [Matthew Flanagan]
+
+ + sip-brute: Performs brute force password auditing against Session
+ Initiation Protocol (SIP -
+ http://en.wikipedia.org/wiki/Session_Initiation_Protocol)
+ accounts. This protocol is most commonly associated with VoIP
+ sessions. [Patrik Karlsson]
+
+ + sip-enum-users: Attempts to enumerate valid SIP user accounts.
+ Currently only the SIP server Asterisk is supported. [Patrik
+ Karlsson]
+
+ + smb-mbenum: Queries information managed by the Windows Master
+ Browser. [Patrik Karlsson]
+
+ + smtp-vuln-cve2010-4344: Checks for and/or exploits a heap overflow
+ within versions of Exim prior to version 4.69 (CVE-2010-4344) and
+ a privilege escalation vulnerability in Exim 4.72 and prior
+ (CVE-2010-4345). [Djalal Harouni]
+
+ + smtp-vuln-cve2011-1720: Checks for a memory corruption in the
+ Postfix SMTP server when it uses Cyrus SASL library authentication
+ mechanisms (CVE-2011-1720). This vulnerability can allow denial
+ of service and possibly remote code execution. [Djalal Harouni]
+
+ + snmp-ios-config: Attempts to downloads Cisco router IOS
+ configuration files using SNMP RW (v1) and display or save
+ them. [Vikas Singhal, Patrik Karlsson]
+
+ + ssl-known-key: Checks whether the SSL certificate used by a host
+ has a fingerprint that matches an included database of problematic
+ keys. [Mak Kolybabi]
+
+ + targets-sniffer: Sniffs the local network for a configurable
+ amount of time (10 seconds by default) and prints discovered
+ addresses. If the newtargets script argument is set, discovered
+ addresses are added to the scan queue. [Nick Nikolaou]
+
+ + xmpp: Connects to an XMPP server (port 5222) and collects server
+ information such as supported auth mechanisms, compression methods
+ and whether TLS is supported and mandatory. [Vasiliy Kulikov]
+
+o Nmap has long supported IPv6 for basic (connect) port scans, basic
+ host discovery, version detection, Nmap Scripting Engine. This
+ release dramatically expands and improves IPv6 support:
+ + IPv6 raw packet scans (including SYN scan, UDP scan, ACK scan,
+ etc.) are now supported. [David, Weilin]
+ + IPv6 raw packet host discovery (IPv6 echo requests, TCP/UDP
+ discovery packets, etc.) is now supported. [David, Weilin]
+ + IPv6 traceroute is now supported [David]
+ + IPv6 protocol scan (-sO) is now supported, including creating
+ realistic headers for many protocols. [David]
+ + IPv6 support to the wsdd, dnssd and upnp NSE libraries. [Daniel
+ Miller, Patrik]
+ + The --exclude and --excludefile now support IPV6 addresses with
+ netmasks. [Colin]
+
+o Scanme.Nmap.Org (the system anyone is allowed to scan for testing
+ purposes) is now dual-stacked (has an IPv6 address as well as IPv4)
+ so you can scan it during IPv6 testing. We also added a DNS record
+ for ScanmeV6.nmap.org which is IPv6-only. See
+ http://seclists.org/nmap-dev/2011/q2/428. [Fyodor]
+
+o The Nmap.Org website as well as sister sites Insecure.Org,
+ SecLists.Org, and SecTools.Org all have working IPv6 addresses now
+ (dual stacked). [Fyodor]
+
+o Nmap now determines the filesystem location it is being run from and
+ that path is now included early in the search path for data files
+ (such as nmap-services). This reduces the likelihood of needing to
+ specify --datadir or getting data files from a different version of
+ Nmap installed on the system. For full details, see
+ https://nmap.org/book/data-files-replacing-data-files.html . Thanks
+ to Solar Designer for implementation advice. [David]
+
+o Created a page on our SecWiki for collecting Nmap script ideas! If
+ you have a good idea, post it to the incoming section of the page.
+ Or if you're in a script writing mood but don't know what to write,
+ come here for inspiration: https://secwiki.org/w/Nmap_Script_Ideas.
+
+o The development pace has greatly increased because Google (again)
+ sponsored a 7 full-time college and graduate student programmer
+ interns this summer as part of their Summer of Code program!
+ Thanks, Google Open Source Department! We're delighted to introduce
+ the team: http://seclists.org/nmap-dev/2011/q2/312
+
+o [NSE] Added 7 new protocol libraries, bringing the total to 66. You
+ can read about them all at https://nmap.org/nsedoc/. Here are the new
+ ones (authors listed in brackets):
+
+ + creds: Handles storage and retrieval of discovered credentials
+ (such as passwords discovered by brute force scripts). [Patrik
+ Karlsson]
+
+ + ncp: A tiny implementation of Novell Netware Core Protocol
+ (NCP). [Patrik Karlsson]
+
+ + omp2: OpenVAS Management Protocol (OMP) version 2 support. [Henri
+ Doreau]
+
+ + sip: Supports a limited subset of SIP commands and
+ methods. [Patrik Karlsson]
+
+ + smtp: Simple Mail Transfer Protocol (SMTP) operations. [Djalal
+ Harouni]
+
+ + srvloc: A relatively small implementation of the Service Location
+ Protocol. [Patrik Karlsson]
+
+ + tftp: Implements a minimal TFTP server. It is used in
+ snmp-ios-config to obtain router config files.[Patrik Karlsson]
+
+o Improved Nmap's service/version detection database by adding:
+ + Apple iPhoto (DPAP) protocol probe [Patrik]
+ + Zend Java Bridge probe [Michael Schierl]
+ + BackOrifice probe [Gorjan Petrovski]
+ + GKrellM probe [Toni Ruottu]
+ + Signature improvements for a wide variety of services (we now have
+ 7,375 signatures)
+
+o [NSE] ssh-hostkey now additionally has a postrule that prints hosts
+ found during the scan which share the same hostkey. [Henri Doreau]
+
+o [NSE] Added 300+ new signatures to http-enum which look for admin
+ directories, JBoss, Tomcat, TikiWiki, Majordomo2, MS SQL, Wordpress,
+ and more. [Paulino]
+
+o Made the final IP address space assignment update as all available
+ IPv4 address blocks have now been allocated to the regional
+ registries. Our random IP generation (-iR) logic now only excludes
+ the various reserved blocks. Thanks to Kris for years of regular
+ updates to this function!
+
+o [NSE] Replaced http-trace with a new more effective version. [Paulino]
+
+o Performed some output cleanup work to remove unimportant status
+ lines so that it is easier to find the good stuff! [David]
+
+o [Zenmap] now properly kills Nmap scan subprocess when you cancel a
+ scan or quit Zenmap on Windows. [Shinnok]
+
+o [NSE] Banned scripts from being in both the "default" and
+ "intrusive" categories. We did this by removing dhcp-discover and
+ dns-zone-transfer from the set of scripts run by default (leaving
+ them "intrusive"), and reclassifying dns-recursion, ftp-bounce,
+ http-open-proxy, and socks-open-proxy as "safe" rather than
+ "intrusive" (keeping them in the "default" set).
+
+o [NSE] Added a credential storage library (creds.lua) and modified
+ the brute library and scripts to make use of it. [Patrik]
+
+o [Ncat] Created a portable version of ncat.exe that you can just drop
+ onto Microsoft Windows systems without having to run any installer
+ or copy over extra library files. See the Ncat page
+ (https://nmap.org/ncat/) for binary downloads and a link to build
+ instructions. [Shinnok]
+
+o Fix a segmentation fault which could occur when running Nmap on
+ various Android-based phones. The problem related to NULL being
+ passed to freeaddrinfo(). [David, Vlatko Kosturjak]
+
+o [NSE] The host.bin_ip and host.bin_ip_src entries now also work with
+ 16-byte IPv6 addresses. [David]
+
+o [Ncat] Updated the ca-bundle.crt list of trusted certificate
+ authority certificates. [David]
+
+o [NSE] Fixed a bug in the SMB Authentication library which could
+ prevent concurrently running scripts with valid credentials from
+ logging in. [Chris Woodbury]
+
+o [NSE] Re-worked http-form-brute.nse to better autodetect form
+ fields, allow brute force attempts where only the password (no
+ username) is needed, follow HTTP redirects, and better detect
+ incorrect login attempts. [Patrik, Daniel Miller]
+
+o [Zenmap] Changed the "slow comprehensive scan" profile's NSE script
+ selection from "all" to "default or (discovery and safe)"
+ categories. Except for testing and debugging, "--script all" is
+ rarely desirable.
+
+o [NSE] Added the stdnse.silent_require method which is used for
+ library requires that you know might fail (e.g. "openssl" fails if
+ Nmap was compiled without that library). If these libraries are
+ called with silent_require and fail to load, the script will cease
+ running but the user won't be presented with ugly failure messages
+ as would happen with a normal require. [Patrick Donnelly]
+
+o [Zenmap] Fixed a bug in topology mapper which caused endpoints
+ behind firewalls to sometimes show up in the wrong place (see
+ http://seclists.org/nmap-dev/2011/q2/733). [Colin Rice]
+
+o [Zenmap] If you scan a system twice, any open ports from the first
+ scan which are closed in the 2nd will be properly marked as
+ closed. [Colin Rice].
+
+o [Zenmap] Fixed an error that could cause a crash ("TypeError: an
+ integer is required") if a sort column in the ports table was unset.
+ [David]
+
+o [Ndiff] Added nmaprun element information (Nmap version, scan date,
+ etc.) to the diff. Also, the Nmap banner with version number and
+ data is now only printed if there were other differences in the
+ scan. [Daniel Miller, David, Dr. Jesus]
+
+o [NSE] Added nmap.get_interface and nmap.get_interface_info functions
+ so scripts can access characteristics of the scanning interface.
+ Removed nmap.get_interface_link. [Djalal]
+
+o Fixed an overflow in scan elapsed time display that caused negative
+ times to be printed after about 25 days. [Daniel Miller]
+
+o Updated nmap-rpc from the master list, now maintained by IANA.
+ [Daniel Miller, David]
+
+o [Zenmap] Fixed a bug in the option parser: -sN (null scan) was
+ interpreted as -sn (no port scan). This was reported by
+ Shitaneddine. [David]
+
+o [Ndiff] Fixed the Mac OS X packages to use the correct path for
+ Python: /usr/bin/python instead of /opt/local/bin/python. The bug
+ was reported by Wellington Castello. [David]
+
+o Removed the -sR (RPC scan) option--it is now an alias for -sV
+ (version scan), which always does RPC scan when an rpcinfo service
+ is detected.
+
+o [NSE] Improved the ms-sql scripts and library in several ways:
+ - Improved version detection and server discovery
+ - Added support for named pipes, integrated authentication, and
+ connecting to instances by name or port
+ - Improved script and library stability and documentation.
+ [Patrik Karlsson, Chris Woodbury]
+
+o [NSE] Fixed http.validate_options when handling a cookie table.
+ [Sebastian Prengel]
+
+o Added a Service Tags UDP probe for port 6481/udp. [David]
+
+o [NSE] Enabled firewalk.nse to automatically find the gateways at
+ which probes are dropped and fixed various bugs. [Henri Doreau]
+
+o [Zenmap] Worked around a pycairo bug that prevented saving the
+ topology graphic as PNG on Windows: "Error Saving Snapshot:
+ Surface.write_to_png takes one argument which must be a filename
+ (str), file object, or a file-like object which has a 'write' method
+ (like StringIO)". The problem was reported by Alex Kah. [David]
+
+o The -V and --version options now show the platform Nmap was compiled
+ on, which features are compiled in, the version numbers of libraries
+ it is linked against, and whether the libraries are the ones that
+ come with Nmap or the operating system. [Ambarisha B., David]
+
+o Fixed some inconsistencies in nmap-os-db reported by Xavier Sudre
+ from netVigilance.
+
+o The Nmap Win32 uninstaller now properly deletes nping.exe. [Fyodor]
+
+o [NSE] Added a shortport.ssl function which can be used as a script
+ portrule to match SSL services. It is similar in concept to our
+ existing shortport.http. [David]
+
+o Set up the RPM build to use the compat-glibc and compat-gcc-34-c++
+ packages (on CentOS 5.3) to resolve a report of Nmap failing to run
+ on old versions of Glibc. [David]
+
+o We no longer support Nmap on versions of Windows earlier than XP
+ SP2. Even Microsoft no longer supports Windows versions that old.
+ But if you must use Nmap on such systems anyway, please see
+ https://secwiki.org/w/Nmap_On_Old_Windows_Releases.
+
+o There were hundreds of other little bug fixes and improvements
+ (especially to NSE scripts). See the SVN logs for revisions 22,274
+ through 24,460 for details.
+
+Nmap 5.51 [2011-02-11]
+
+o [Ndiff] Added support for prerule and postrule scripts. [David]
+
+o [NSE] Fixed a bug which caused some NSE scripts to fail due to the
+ absence of the NSE SCRIPT_NAME environment variable when loaded.
+ Michael Pattrick reported the problem. [Djalal]
+
+o [Zenmap] Selecting one of the scan targets in the left pane is
+ supposed to jump to that host in the Nmap Output in the right pane
+ (but it wasn't). Brian Krebs reported this bug. [David]
+
+o Fixed an obscure bug in Windows interface matching. If the MAC
+ address of an interface couldn't be retrieved, it might have been
+ used instead of the correct interface. Alexander Khodyrev reported
+ the problem. [David]
+
+o [NSE] Fixed portrules in dns-zone-transfer and ftp-proftpd-backdoor
+ that used shortport functions incorrectly and always returned
+ true. [Jost Krieger]
+
+o [Ndiff] Fixed ndiff.dtd to include two elements that can be diffed:
+ status and address. [Daniel Miller]
+
+o [Ndiff] Fixed the ordering of hostscript-related elements in XML
+ output. [Daniel Miller]
+
+o [NSE] Fixed a bug in the nrpe-enum script that would make it run for
+ every port (when it was selected--it isn't by default). Daniel
+ Miller reported the bug. [Patrick]
+
+o [NSE] When an NSE script sets a negative socket timeout, it now
+ causes a controlled Lua stack trace instead of a fatal error.
+ Vlatko Kosturjak reported the bug. [David]
+
+o [Zenmap] Worked around an error that caused the py2app bootstrap
+ executable to be non-universal even when the rest of the application
+ was universal. This prevented the binary .dmg from working on
+ PowerPC. Yxynaxen reported the problem. [David]
+
+o [Ndiff] Fixed an output line that wasn't being redirected to a file
+ when all other output was. [Daniel Miller]
+
+Nmap 5.50 [2011-01-28]
+
+o [Zenmap] Added a new script selection interface, allowing you to
+ choose scripts and arguments from a list which includes descriptions
+ of every available script. Just click the "Scripting" tab in the
+ profile editor. [Kirubakaran]
+
+o [Nping] Added echo mode, a novel technique for discovering how your
+ packets are changed (or dropped) in transit between the host they
+ originated and a target machine. It can detect network address
+ translation, packet filtering, routing anomalies, and more. You can
+ try it out against our public Nping echo server using this command:
+ nping --echo-client "public" echo.nmap.org'
+ Or learn more about echo mode at
+ https://nmap.org/book/nping-man-echo-mode.html . [Luis]
+
+o [NSE] Added an amazing 46 scripts, bringing the total to 177! You
+ can learn more about any of them at https://nmap.org/nsedoc/. Here
+ are the new ones (authors listed in brackets):
+
+ + broadcast-dns-service-discovery: Attempts to discover hosts'
+ services using the DNS Service Discovery protocol. It sends a
+ multicast DNS-SD query and collects all the responses. [Patrik
+ Karlsson]
+
+ + broadcast-dropbox-listener: Listens for the LAN sync information
+ broadcasts that the Dropbox.com client broadcasts every 20
+ seconds, then prints all the discovered client IP addresses, port
+ numbers, version numbers, display names, and more. [Ron Bowes,
+ Mak Kolybabi, Andrew Orr, Russ Tait Milne]
+
+ + broadcast-ms-sql-discover: Discovers Microsoft SQL servers in the
+ same broadcast domain. [Patrik Karlsson]
+
+ + broadcast-upnp-info: Attempts to extract system information from the
+ UPnP service by sending a multicast query, then collecting,
+ parsing, and displaying all responses. [Patrik Karlsson]
+
+ + broadcast-wsdd-discover: Uses a multicast query to discover devices
+ supporting the Web Services Dynamic Discovery (WS-Discovery)
+ protocol. It also attempts to locate any published Windows
+ Communication Framework (WCF) web services (.NET 4.0 or
+ later). [Patrik Karlsson]
+
+ + db2-discover: Attempts to discover DB2 servers on the network by
+ querying open ibm-db2 UDP ports (normally port 523). [Patrik
+ Karlsson]
+
+ + dns-update.nse: Attempts to perform an unauthenticated dynamic DNS
+ update. [Patrik Karlsson]
+
+ + domcon-brute: Performs brute force password auditing against the
+ Lotus Domino Console. [Patrik Karlsson]
+
+ + domcon-cmd: Runs a console command on the Lotus Domino Console with
+ the given authentication credentials (see also: domcon-brute).
+ [Patrik Karlsson]
+
+ + domino-enum-users: Attempts to discover valid IBM Lotus Domino users
+ and download their ID files by exploiting the CVE-2006-5835
+ vulnerability. [Patrik Karlsson]
+
+ + firewalk: Tries to discover firewall rules using an IP TTL
+ expiration technique known as firewalking. [Henri Doreau]
+
+ + ftp-proftpd-backdoor: Tests for the presence of the ProFTPD 1.3.3c
+ backdoor reported as OSVDB-ID 69562. This script attempts to
+ exploit the backdoor using the innocuous id command by default,
+ but that can be changed with a script argument. [Mak Kolybabi]
+
+ + giop-info: Queries a CORBA naming server for a list of
+ objects. [Patrik Karlsson]
+
+ + gopher-ls: Lists files and directories at the root of a gopher
+ service. Remember those? [Toni Ruottu]
+
+ + hddtemp-info: Reads hard disk information (such as brand, model, and
+ sometimes temperature) from a listening hddtemp service. [Toni
+ Ruottu]
+
+ + hostmap: Tries to find hostnames that resolve to the target's IP
+ address by querying the online database at
+ http://www.bfk.de/bfk_dnslogger.html . [Ange Gutek]
+
+ + http-brute: Performs brute force password auditing against http
+ basic authentication. [Patrik Karlsson]
+
+ + http-domino-enum-passwords: Attempts to enumerate the hashed Domino
+ Internet Passwords that are (by default) accessible by all
+ authenticated users. This script can also download any Domino ID
+ Files attached to the Person document. [Patrik Karlsson]
+
+ + http-form-brute: Performs brute force password auditing against http
+ form-based authentication. [Patrik Karlsson]
+
+ + http-vhosts: Searches for web virtual hostnames by making a large
+ number of HEAD requests against http servers using common
+ hostnames. [Carlos Pantelides]
+
+ + informix-brute: Performs brute force password auditing against
+ IBM Informix Dynamic Server. [Patrik Karlsson]
+
+ + informix-query: Runs a query against IBM Informix Dynamic Server
+ using the given authentication credentials (see also:
+ informix-brute). [Patrik Karlsson]
+
+ + informix-tables: Retrieves a list of tables and column definitions
+ for each database on an Informix server. [Patrik Karlsson]
+
+ + iscsi-brute: Performs brute force password auditing against iSCSI
+ targets. [Patrik Karlsson]
+
+ + iscsi-info: Collects and displays information from remote iSCSI
+ targets. [Patrik Karlsson]
+
+ + modbus-discover: Enumerates SCADA Modbus slave ids (sids) and
+ collects their device information. [Alexander Rudakov]
+
+ + nat-pmp-info: Queries a NAT-PMP service for its external
+ address. [Patrik Karlsson]
+
+ + netbus-auth-bypass: Checks if a NetBus server is vulnerable to an
+ authentication bypass vulnerability which allows full access
+ without knowing the password. [Toni Ruottu]
+
+ + netbus-brute: Performs brute force password auditing against the
+ Netbus backdoor ("remote administration") service. [Toni Ruottu]
+
+ + netbus-info: Opens a connection to a NetBus server and extracts
+ information about the host and the NetBus service itself. [Toni
+ Ruottu]
+
+ + netbus-version: Extends version detection to detect NetBuster, a
+ honeypot service that mimes NetBus. [Toni Ruottu]
+
+ + nrpe-enum: Queries Nagios Remote Plugin Executor (NRPE) daemons to
+ obtain information such as load averages, process counts, logged in
+ user information, etc. [Mak Kolybabi]
+
+ + oracle-brute: Performs brute force password auditing against Oracle
+ servers. [Patrik Karlsson]
+
+ + oracle-enum-users: Attempts to enumerate valid Oracle user names
+ against unpatched Oracle 11g servers (this bug was fixed in
+ Oracle's October 2009 Critical Patch Update). [Patrik Karlsson]
+
+ + path-mtu: Performs simple Path MTU Discovery to target hosts. [Kris
+ Katterjohn]
+
+ + resolveall: Resolves hostnames and adds every address (IPv4 or IPv6,
+ depending on Nmap mode) to Nmap's target list. This differs from
+ Nmap's normal host resolution process, which only scans the first
+ address (A or AAAA record) returned for each host name. [Kris
+ Katterjohn]
+
+ + rmi-dumpregistry: Connects to a remote RMI registry and attempts to
+ dump all of its objects. [Martin Holst Swende]
+
+ + smb-flood: Exhausts a remote SMB server's connection limit by by
+ opening as many connections as we can. Most implementations of
+ SMB have a hard global limit of 11 connections for user accounts
+ and 10 connections for anonymous. Once that limit is reached,
+ further connections are denied. This script exploits that limit by
+ taking up all the connections and holding them. [Ron Bowes]
+
+ + ssh2-enum-algos: Reports the number of algorithms (for encryption,
+ compression, etc.) that the target SSH2 server offers. If
+ verbosity is set, the offered algorithms are each listed by
+ type. [Kris Katterjohn]
+
+ + stuxnet-detect: Detects whether a host is infected with the Stuxnet
+ worm (http://en.wikipedia.org/wiki/Stuxnet). [Mak Kolybabi]
+
+ + svn-brute: Performs brute force password auditing against Subversion
+ source code control servers. [Patrik Karlsson]
+
+ + targets-traceroute: Inserts traceroute hops into the Nmap scanning
+ queue. It only functions if Nmap's --traceroute option is used and
+ the newtargets script argument is given. [Henri Doreau]
+
+ + vnc-brute: Performs brute force password auditing against VNC
+ servers. [Patrik Karlsson]
+
+ + vnc-info: Queries a VNC server for its protocol version and
+ supported security types. [Patrik Karlsson]
+
+ + wdb-version: Detects vulnerabilities and gathers information (such
+ as version numbers and hardware support) from VxWorks Wind DeBug
+ agents. [Daniel Miller]
+
+ + wsdd-discover: Retrieves and displays information from devices
+ supporting the Web Services Dynamic Discovery (WS-Discovery)
+ protocol. It also attempts to locate any published Windows
+ Communication Framework (WCF) web services (.NET 4.0 or
+ later). [Patrik Karlsson]
+
+o [NSE] Added 12 new protocol libraries:
+ - dhcp.lua by Ron
+ - dnssd.lua (DNS Service Discovery) by Patrik
+ - ftp.lua by David
+ - giop.lua (CORBA naming service) by Patrik
+ - informix.lua (Informix database) by Patrik
+ - iscsi.lua (iSCSI - IP based SCSI data transfer) by Patrik
+ - nrpc.lua (Lotus Domino RPC) by Patrik
+ - rmi.lua (Java Remote Method Invocation) by Martin Holst Swende
+ - tns.lua (Oracle) by Patrik
+ - upnp.lua (UPnP support) by Thomas Buchanan and Patrik
+ - vnc.lua (Virtual Network Computing) by Patrik
+ - wsdd.lua (Web Service Dynamic Discovery) by Patrik
+
+o [NSE] Added a new brute library that provides a basic framework and logic
+ for brute force password auditing scripts. [Patrik]
+
+o [Zenmap] Greatly improved performance for large scans by
+ benchmarking intensively and then recoding dozens of slow parts.
+ Time taken to load our benchmark file (a scan of just over a million
+ IPs belonging to Microsoft corporation, with 74,293 hosts up) was
+ reduced from hours to less than two minutes. Memory consumption
+ decreased dramatically as well. [David]
+
+o Performed a major OS detection integration run. The database has
+ grown more than 14% to 2,982 fingerprints and many of the existing
+ fingerprints were improved. Highlights include Linux 2.6.37, iPhone
+ OS 4.2.1, Solaris 11, AmigaOS 3.1, GNU Hurd 0.3, and MINIX 2.0.4.
+ David posted highlights of his integration work at
+ http://seclists.org/nmap-dev/2010/q4/651
+
+o Performed a huge version detection integration run. The number of
+ signatures has grown by more than 11% to 7,355. More than a third
+ of our signatures are for http, but we also detect 743 other service
+ protocols, from abc, acap, access-remote-pc, and achat to zenworks,
+ zeo, and zmodem. David posted highlights at
+ http://seclists.org/nmap-dev/2010/q4/761.
+
+o [NSE] Added the target NSE library which allows scripts to add newly
+ discovered targets to Nmap's scanning queue. This allows Nmap to
+ support a wide range of target acquisition techniques. Scripts which
+ can now use this feature include dns-zone-transfer, hostmap,
+ ms-sql-info, snmp-interfaces, targets-traceroute, and several
+ more. [Djalal]
+
+o [NSE] Nmap has two new NSE script scanning phases. The new pre-scan
+ occurs before Nmap starts scanning. Some of the initial pre-scan
+ scripts use techniques like broadcast DNS service discovery or DNS
+ zone transfers to enumerate hosts which can optionally be treated as
+ targets. The other phase (post scan) runs after all of Nmap's
+ scanning is complete. We don't have any of these scripts yet, but
+ they could compile scan statistics or present the results in a
+ different way. One idea is a reverse index which provides a list of
+ services discovered during a network scan, along with a list of IPs
+ found to be running each service. See
+ https://nmap.org/book/nse-usage.html#nse-script-types. [Djalal]
+
+o [NSE] A new --script-help option describes all scripts matching a
+ given specification. It accepts the same specification format as
+ --script does. For example, try 'nmap --script-help "default or
+ http-*"'. [David, Martin Holst Swende]
+
+o Dramatically improved nmap.xsl (used for converting Nmap XML output
+ to HTML). In particular:
+ - Put verbose details behind expander buttons so you can see them if
+ you want, but they don't distract from the main output. In
+ particular, offline hosts and traceroute results are collapsed by
+ default.
+ - Improved the color scheme to be less garish.
+ - Added support for the new NSE pre-scan and post-scan phases.
+ - Changed script output to use 'pre' tags to keep even lengthy
+ output readable.
+ - Added a floating menu to the lower-right for toggling whether
+ closed/filtered ports are shown or not (they are now hidden by
+ default if Javascript is enabled).
+ Many smaller improvements were made as well. You can find the new
+ file at https://nmap.org/svn/docs/nmap.xsl, and here is an example
+ scan processed through it: https://nmap.org/book/output-formats-output-to-html.html . [Tom]
+
+o [NSE] Created a new "broadcast" script category for the broadcast-*
+ scripts. These perform network discovery by broadcasting on the
+ local network and listening for responses. Since they don't
+ directly relate to targets specified on the command line, these are
+ kept out of the default category (nor do they go in "discovery").
+
+o Integrated cracked passwords from the Gawker.com compromise
+ (http://seclists.org/nmap-dev/2010/q4/674) into Nmap's top-5000
+ password database. A team of Nmap developers lead by Brandon Enright
+ has cracked 635,546 out of 748,081 password hashes so far
+ (85%). Gawker doesn't exactly have the most sophisticated users on
+ the Internet--their top passwords are "123456", "password",
+ "12345678", "lifehack", "qwerty", "abc123", "12345", "monkey",
+ "111111", "consumer", and "letmein".
+
+o XML output now excludes output for down hosts when only doing host
+ discovery, unless verbosity (-v) was requested. This is how it
+ already worked for normal scans, but the ping-only case was
+ overlooked. [David]
+
+o Updated the Windows build process to work with (and require) Visual
+ C++ 2010 rather than 2008. If you want to build Zenmap too, you now
+ need Python 2.7 (rather than 2.6) and GTK+ 2.22. See
+ https://nmap.org/book/inst-windows.html#inst-win-source [David, Rob
+ Nicholls, KX]
+
+o Merged port names in the nmap-services file with allocated names
+ from the IANA (http://www.iana.org/assignments/port-numbers). We
+ only added IANA names which were "unknown" in our file--we didn't
+ deal with conflicting names. [David]
+
+o Enabled the ASLR and DEP security technologies for Nmap.exe,
+ Ncat.exe and Nping.exe on Windows Vista and above. Visual C++ will
+ set the /DYNAMICBASE and /NXCOMPAT flags in the PE
+ header. Executables generated using py2exe or NSIS and third party
+ binaries (OpenSSL, WinPcap) still don't support ASLR or DEP. Support
+ for DEP on XP SP3, using SetProcessDEPPolicy(), could still be
+ implemented. See http://seclists.org/nmap-dev/2010/q3/328. [Robert]
+
+o Investigated using the CPE (Common Platform Enumeration) standard
+ for describing operating systems, devices, and service names for
+ Nmap OS and service detection. You can read David's reports at
+ http://seclists.org/nmap-dev/2010/q3/278 and
+ http://seclists.org/nmap-dev/2010/q3/303.
+
+o [Zenmap] Improved the output viewer to show new output in constant
+ time. Previously it would get slower and slower as the output grew
+ longer, eventually making Zenmap appear to freeze with 100% CPU. Rob
+ Nicholls and Ray Middleton helped with testing. [David]
+
+o The Linux RPM builds of Nmap and related tools (ncat, nping, etc.)
+ now link to system libraries dynamically rather than statically.
+ They still link statically to dependency libraries such as OpenSSL,
+ Lua, LibPCRE, Libpcap, etc. We hope this will improve portability so
+ the RPMs will work on distributions with older software (like RHEL,
+ Debian stable) as well as more bleeding edge ones like
+ Fedora. [David]
+
+o [NSE] Added the ability to send and receive on unconnected sockets.
+ This can be used, for example, to receive UDP broadcasts without
+ having to use Libpcap. A number of scripts have been changed so that
+ they can work as prerule scripts to discover services by UDP
+ broadcasting, and optionally add the discovered targets to the
+ scanning queue:
+ - ms-sql-info
+ - upnp-info
+ - dns-service-discovery
+ The nmap.new_socket function can now optionally take a default
+ protocol and address family, which will be used if the socket is not
+ connected. There is a new nmap.sendto function to be used with
+ unconnected UDP sockets. [David, Patrik]
+
+o [Nping] Substantially improved the Nping man page. You can read it
+ online at https://nmap.org/book/nping-man.html . [Luis, David]
+
+o Documented the licenses of the third-party software used by Nmap and
+ its sibling tools:
+ https://svn.nmap.org/nmap/docs/3rd-party-licenses.txt . [David]
+
+o [NSE] Improved the SMB scripts so that they can run in parallel
+ rather than using a mutex to force serialization. This quadrupled
+ the SMB scan speed in one large scale test. See
+ http://seclists.org/nmap-dev/2010/q3/819. [Ron]
+
+o Added a simple Nmap NSE script template to make writing new scripts
+ easier: https://nmap.org/svn/docs/sample-script.nse. [Ron]
+
+o [Zenmap] Made the topology node radiuses grow logarithmically
+ instead of linearly, so that hosts with thousands of open ports
+ don't overwhelm the diagram. Also only open ports (not
+ open|filtered) are considered when calculating node sizes. Henri
+ Doreau found and fixed a bug in the implementation. [Daniel Miller]
+
+o [NSE] Added the get_script_args NSE function for parsing script
+ arguments in a clean and standardized way
+ (https://nmap.org/nsedoc/lib/stdnse.html#get_script_args). [Djalal]
+
+o Increased the initial RTT timeout for ARP scans from 100 ms to 200
+ ms. Some wireless and VPN links were taking around 300 ms to
+ respond. The default of one retransmission gives them 400 ms to be
+ detected.
+
+o Added new version detection probes and signatures from Patrik for:
+ - Lotus Domino Console running on tcp/2050 (shows OS and hostname)
+ - IBM Informix Dynamic Server running native protocol (shows hostname, and file path)
+ - Database servers running the DRDA protocol
+ - IBM Websphere MQ (shows name of queue-manager and channel)
+
+o Fix Nmap compilation on OpenSolaris (see
+ http://blogs.sun.com/sdaven/entry/nmap_5_35dc1_compile_on) [David]
+
+o [NSE] The http library's request functions now accept an additional
+ "auth" table within the option table, which causes Basic
+ authentication credentials to be sent. [David]
+
+o Improved IPv6 host output in that we now remember and report the
+ forward DNS name (given by the user) and any non-scanned addresses
+ (usually because of round robin DNS). We already did this for
+ IPv4. [David]
+
+o [Zenmap] Upgraded to the newer gtk.Tooltip API to avoid deprecation
+ messages about gtk.Tooltip. [Rob Nicholls]
+
+o [NSE] Made dns-zone-transfer script able to add new discovered DNS
+ records to the Nmap scanning queue. [Djalal]
+
+o [NSE] Enhance ssl-cert to also report the type and bit size of SSL
+ certificate public keys [Matt Selsky]
+
+o [Ncat] Make --exec and --idle-timeout work when connecting with
+ --proxy. Florian Roth reported the bug. [David]
+
+o [Nping] Fixed a bug which caused Nping to fail when targeting
+ broadcast addresses (see
+ http://seclists.org/nmap-dev/2010/q3/752). [Luis]
+
+o [Nping] Nping now limits concurrent open file descriptors properly
+ based on the resources available on the host (see
+ http://seclists.org/nmap-dev/2010/q4/2). [Luis]
+
+o [NSE] Improved ssh2's kex_init() parameters: all of the algorithm
+ and language lists can be set using new keys in the "options" table
+ argument. These all default to the same value used before. Also, the
+ required "cookie" argument is now replaced by an optional "cookie"
+ key in the "options" table, defaulting to random bytes as suggested
+ by the RFC. [Kris]
+
+o Ncat now logs Nsock debug output to stderr instead of stdout for
+ consistency with its other debug messages. [David]
+
+o [NSE] Added a new function, shortport.http, for HTTP script
+ portrules and changed 14 scripts to use it. [David]
+
+o Updated to the latest config.guess and config.sub. Thanks to Ty
+ Miller for a reminder. [David]
+
+o [NSE] Added prerule support to snmp-interfaces and the ability to
+ add the remote host's interface addresses to the scanning queue.
+ The new script arguments used for this functionality are "host"
+ (required) and "port" (optional). [Kris]
+
+o Fixed some inconsistencies in nmap-os-db and a small memory leak
+ that would happen where there was more than one round of OS
+ detection. These were reported by Xavier Sudre from
+ netVigilance. [David]
+
+o [NSE] Fixed a bug with worker threads calling the wrong destructors.
+ Fixing this allows better parallelism in http-brute.nse. The problem
+ was reported by Patrik Karlsson. [David, Patrick]
+
+o Upgraded the OpenSSL binaries shipped in our Windows installer to
+ version 1.0.0a. [David]
+
+o [NSE] Added prerule support to the dns-zone-transfer script,
+ allowing it to run early to discover IPs from DNS records and
+ optionally add those IPs to Nmap's target queue. You must specify
+ the DNS server and domain name to use with script
+ arguments. [Djalal]
+
+o Changed the name of libdnet's sctp_chunkhdr to avoid a conflict with
+ a struct of the same name in netinet/sctp.h. This caused a
+ compilation error when Nmap was compiled with an OpenSSL that had
+ SCTP support. [Olli Hauer, Daniel Roethlisberger]
+
+o [NSE] Implemented a big cleanup of the Nmap NSE Nsock library
+ binding code. [Patrick]
+
+o Added a bunch of Apple and Netatalk AFP service detection
+ signatures. These often provide extra details such as whether the
+ target is a MacBook Pro, Air, Mac Mini, iMac, etc. [Brandon]
+
+o [NSE] Host tables now have a host.traceroute member available when
+ --traceroute is used. This array contains the IP address, reverse
+ DNS name, and RTT for each traceroute hop. [Henri Doreau]
+
+o [NSE] Made the ftp-anon script return a directory listing when
+ anonymous login is allowed. [Gutek, David]
+
+o [NSE] Added the nmap.resolve() function. It takes a host name and
+ optionally an address family (such as "inet") and returns a table
+ containing all of its matching addresses. If no address family is
+ specified, all addresses for the name are returned. [Kris]
+
+o [NSE] Added the nmap.address_family() function which returns the address
+ family Nmap is using as a string (e.g., "inet6" is returned if Nmap is
+ called with the -6 option). [Kris]
+
+o [NSE] Scripts can now access the MTU of the host.interface device using
+ host.interface_mtu. [Kris]
+
+o Restrict the default Windows DLL search path by removing the current
+ directory. This adds extra protection against DLL hijacking attacks,
+ especially if we were to add file type associations to Nmap in the
+ future. We implement this with the SetDllDirectory function when
+ available (Windows XP SP1 and later). Otherwise, we call
+ SetCurrentDirectory with the directory containing the
+ executable. [David]
+
+o Nmap now prints the MTU for interfaces in --iflist output. [Kris]
+
+o [NSE] Removed references to the MD2 algorithm, which OpenSSL 1.x.x
+ no longer supports. [Alexandru]
+
+o [Ncat,NSE] Server Name Indication (SNI) is now supported by Ncat and
+ Nmap NSE, allowing them to connect to servers which run multiple SSL
+ websites on one IP address. To enable this for NSE, the nmap.connect
+ function has been changed to accept host and port tables (like those
+ provided to the action function) in place of a string and a
+ number. [David]
+
+o [NSE] Renamed db2-info and db2-brute scripts to drda-*. Added
+ support other DRDA based databases such as IBM Informix Dynamic
+ Server and Apache Derby. [Patrik]
+
+o [Nsock] Added a new function, nsi_set_hostname, to set the intended
+ hostname of the target. This allows the use of Server Name
+ Indication in SSL connections. [David]
+
+o [NSE] Limits the number of ports that qscan will scan (now up to 8
+ open ports and up to 1 closed port by default). These limits can be
+ controlled with the qscan.numopen and qscan.numclosed script
+ arguments. [David]
+
+o [NSE] Made sslv2.nse give special output when SSLv2 is supported,
+ but no SSLv2 ciphers are offered. This happened with a specific
+ Sendmail configuration. [Matt Selsky]
+
+o [NSE] Added a "times" table to the host table passed to scripts.
+ This table contains Nmap's timing data (srtt, the smoothed round
+ trip time; rttvar, the rtt variance; and timeout), all represented
+ as floating-point seconds. The ipidseq and qscan scripts were
+ updated to utilize the host's timeout value rather than using a
+ conservative guess of 3 seconds for read timeouts. [Kris]
+
+o Fixed the fragmentation options (-f in Nmap, --mtu in Nmap & Nping),
+ which were improperly sending whole packets in version
+ 5.35DC1. [Kris]
+
+o [NSE] When receiving raw packets from Pcap, the packet capture time
+ is now available to scripts as an additional return value from
+ pcap_receive(). It is returned as the floating point number of
+ seconds since the epoch. Also added the nmap.clock() function which
+ returns the current time (and convenience functions clock_ms() and
+ clock_us()). Qscan.nse was updated to use this more accurate timing
+ data. [Kris]
+
+o [Ncat,Nsock] Fixed some minor bugs discovered using the Smatch
+ source code analyzer (http://smatch.sourceforge.net/). [David]
+
+o [Zenmap] Fixed a crash that would happen after opening the search
+ window, entering a relative date criterion such as "after:-7", and
+ then clicking the "Expressions" button. The error message was
+ AttributeError: 'tuple' object has no attribute 'strftime'
+ [David]
+
+o Added a new packet payload--a NAT-PMP external address request for
+ port 5351/udp. Payloads help us elicit responses from listening UDP
+ services to better distinguish them from filtered ports. This
+ payload goes well with our new nat-pmp-info script. [David, Patrik]
+
+o Updated IANA IP address space assignment list for random IP (-iR)
+ generation. [Kris]
+
+o [Ncat] Ncat now uses case-insensitive string comparison when
+ checking authentication schemes and parameters. Florian Roth found a
+ server offering "BASIC" instead of "Basic", and the HTTP RFC
+ requires case-insensitive comparisons in most places. [David]
+
+o [NSE] There is now a limit of 1,000 concurrent running scripts,
+ instituted to keep memory under control when there are many open
+ ports. Nathan reported 3 GB of memory use (with an out-of-memory NSE
+ crash) for one host with tens of thousands of open ports. This limit
+ can be controlled with the variable CONCURRENCY_LIMIT in
+ nse_main.lua. [David]
+
+o The command line in XML output (/nmaprun/@args attribute) now does
+ quoting of whitespace using double quotes and backslashes. This
+ allows recovering the original command line array even when
+ arguments contain whitespace. [David]
+
+o Added a service detection probe for master servers of Quake 3 and
+ related games. [Toni Ruottu]
+
+o [Zenmap] Updated French translation. [Henri Doreau]
+
+o [Zenmap] Fixed an crash when printing a scan that had no output
+ (like a scan made by command-line Nmap). Henri Doreau noticed the
+ error. [David]
+
+Nmap 5.35DC1 [2010-07-16]
+
+o [NSE] Added 17 scripts, bringing the total to 131! They are
+ described individually in the CHANGELOG, but here is the list of new
+ ones:
+ afp-serverinfo, db2-brute, dns-cache-snoop, dns-fuzz, ftp-libopie
+ http-php-version, irc-unrealircd-backdoor, ms-sql-brute,
+ ms-sql-config, ms-sql-empty-password, ms-sql-hasdbaccess,
+ ms-sql-query, ms-sql-tables, ms-sql-xp-cmdshell, nfs-ls,
+ ntp-monlist .
+ Learn more about any of these at: https://nmap.org/nsedoc/
+
+o Performed a major OS detection integration run. The database has
+ grown to 2,608 fingerprints (an increase of 262) and many of the
+ existing fingerprints were improved. These include the Apple iPad
+ and Cisco IOS 15.X devices. We also received many fingerprints for
+ ancient Microsoft systems including MS-DOS with MS Networking Client
+ 3.0, Windows 3.1, and Windows NT 3.1. David posted highlights of his
+ integration work at http://seclists.org/nmap-dev/2010/q2/283.
+
+o Performed a large version detection integration run. The number of
+ signatures has grown to 6,622 (an increase of 279). New signatures
+ include a remote administrative backdoor that a school famously used
+ to spy on its students, an open source digital currency scheme named
+ Bitcoin, and game servers for EVE Online, l2emurt Lineage II, and
+ Frozen Bubble. You can read David's highlights at
+ http://seclists.org/nmap-dev/2010/q2/385.
+
+o [NSE] Added nfs-ls.nse, which lists NFS exported files and their
+ attributes. The nfs-acls and nfs-dirlist scripts were deleted
+ because all their features are supported by this script. [Djalal]
+
+o [NSE] Add new DB2 library and two scripts
+ - db2-brute.nse uses the unpwdb library to guess credentials for DB2
+ - db2-info.nse re-write of Tom Sellers script to use the new library
+ [Patrik]
+
+o [NSE] Added a library for Microsoft SQL Server and 7 new scripts. The new
+ scripts are:
+ - ms-sql-brute.nse uses the unpwdb library to guess credentials for MSSQL
+ - ms-sql-config retrieves various configuration details from the server
+ - ms-sql-empty-password checks if the sa account has an empty password
+ - ms-sql-hasdbaccess lists database access per user
+ - ms-sql-query add support for running custom queries against the database
+ - ms-sql-tables lists databases, tables, columns and datatypes with optional
+ keyword filtering
+ - ms-sql-xp-cmdshell adds support for OS command execution to privileged
+ users
+ [Patrik]
+
+o [NSE] Added the afp-serverinfo script that gets a hostname, IP
+ addresses, and other configuration information from an AFP server.
+ The script, and a patch to the afp library, were contributed by
+ Andrew Orr and subsequently enhanced by Patrik and David.
+
+o [NSE] Added additional vulnerability checks to smb-check-vulns.nse:
+ The Windows RAS RPC service vulnerability MS06-025
+ (http://www.microsoft.com/technet/security/bulletin/ms06-025.mspx)
+ and the Windows DNS Server RPC vuln MS07-029
+ (http://www.microsoft.com/technet/security/bulletin/ms07-029.mspx).
+ Note that these are only run if you specify the "unsafe" script arg
+ because the implemented test crashes vulnerable services. [Drazen]
+
+o [NSE] Added dns-cache-snoop.nse by Eugene Alexeev. This script performs
+ cache snooping by either sending non-recursive queries or by measuring
+ response times.
+
+o [Zenmap] Added the ability to print Nmap output to a
+ printer. [David]
+
+o [Nmap, Ncat, Nping] The default unit for time specifications is now
+ seconds, not milliseconds, and times may have a decimal point. 1000
+ now means 1000 seconds, or about 17 minutes, not 1000 milliseconds.
+ Floating point values such as 1.5 are now allowed. This affects the
+ following options:
+ Nmap:
+ --host-timeout
+ --max-rtt-timeout --min-rtt-timeout --initial-rtt-timeout
+ --scan-delay --max-scan-delay
+ --stats-every
+ Ncat:
+ -d --delay
+ -i --idle-timeout
+ -w --wait
+ Nping:
+ --delay
+ --host-timeout
+ --icmp-orig-time --icmp-recv-time --icmp-trans-time
+ Some sanity checks have been added to catch what looks like an
+ attempt to use the old millisecond defaults. For example,
+ --host-timeout 10000 yields
+ Since April 2010, the default unit for --host-timeout is seconds,
+ so your time of "10000" is 2.8 hours. If this is what you want,
+ use "10000s".
+ QUITTING!
+ You can always disable the warning by giving an explicit unit.
+
+o [NSE] Scripts which take an argument for a time duration can now
+ have the duration be a number followed by a unit, like elsewhere in
+ Nmap. An example is "10m" for 10 minutes. The units understood are
+ "ms" for milliseconds, "s" for seconds, "m" for minutes, and "h" for
+ hours. Seconds are the default if no unit is specified. The new
+ function stdnse.parse_timespec does the parsing of these
+ formats. The qscan.delay script argument, which formerly interpreted
+ its argument as being in milliseconds, now defaults to seconds;
+ append "ms" to continue using the same numbers. [David]
+
+o [NSE] Added irc-unrealircd-backdoor.nse, which detects a backdoor
+ that was in UnrealIRCd source code distributions between November
+ 2009 and June 2010. See http://seclists.org/nmap-dev/2010/q2/826.
+ [Vlatko Kosturjak, Ron, David]
+
+o Ports are now considered open during a SYN scan if a SYN packet
+ (without the ACK flag) is received in response. This can be due to
+ an extremely rare TCP feature known as a simultaneous open or split
+ handshake connection. see http://bit.ly/tcp-sh and
+ http://seclists.org/nmap-dev/2010/q2/723. [Jah]
+
+o [Ncat] In listen mode, the --exec and --sh-exec options now accept a
+ single connection and then exit, just like in normal listen mode.
+ Use the --keep-open option to get the old default inetd-like
+ behavior. This was suggested by David Millis. [David]
+
+o [NSE] Added ftp-libopie.nse by Gutek. This script checks for an
+ off-by-one stack overflow vulnerability in libopie by giving the FTP
+ service an overly long name. See
+ http://security.freebsd.org/advisories/FreeBSD-SA-10:05.opie.asc for
+ details.
+
+o [NSE] Added ntp-monlist.nse which discovers NTP server, peer and
+ client hosts associated with a scanned target by sending NTPv2
+ Private Mode 'monitor' and 'peers' commands to the target. [Jah]
+
+o [NSE] Added http-php-version.nse from Gutek. This script retrieves
+ version-specific pages through a couple of magic PHP queries, which
+ can identify the PHP version even when a server doesn't advertise
+ it.
+
+o [NSE] New script dns-fuzz launches a fuzzing attack against DNS
+ servers. Added a new category - fuzzer - for scripts like this.
+ [Michael Pattrick]
+
+o David made many improvements to the NSEDoc for individual scripts,
+ including adding @output sections to scripts which didn't have them.
+ He also improved the generated HTML with features like
+ auto-generating usage strings if the scripts don't include their own
+ and allowing the giant sidebar lists of scripts/libraries to expand
+ and contract. See https://nmap.org/nsedoc/.
+
+o UDP payloads are now stored in an external data file, nmap-payloads,
+ instead of being hard-coded in the executable. This makes it easier
+ to add your own payloads or disable those you find problematic. [Jay
+ Fink, David]
+
+o The Windows executable installer now uses LZMA compression instead
+ of zlib, making it about 15% smaller. See
+ http://seclists.org/nmap-dev/2010/q2/1011 for test results. [David]
+
+o Open XML elements are now closed in case of a fatal error, so the
+ output should at least be well-formed. There are new attributes
+ "exit" and "errormsg" in the finished element. "exit" is "success"
+ or "error". When it is "error", the "errormsg" attribute contains
+ the error message. Thanks to Grant Bartlett, who found a typo in the
+ new output. [David]
+
+o Fixed name resolution in environments where gethostbyname can return
+ IPv6 (or other non-IPv4 addresses). In such an environment, Nmap
+ would wrongly use the first four bytes of the IPv6 address as an
+ IPv4 address. You could force this, at least on Debian, by adding
+ the line "options inet6" to /etc/resolv.conf or by running with
+ RES_OPTIONS=inet6 in the environment. This was reported by Mats Erik
+ Andersson, who also suggested the fix. [David]
+
+o Fixed the assignment of interface aliases to directly connected
+ routes on Linux, which was broken in 5.30BETA1 (it always assigned
+ the base interface instead of the alias). This was visible in the
+ host.interface variable passed to NSE scripts. The bug was reported
+ Victor Rudnev. [David]
+
+o When Nmap is passed a hostname such as google.com which resolves to
+ several IP addresses, Nmap now prints each IP address. It still
+ only scans the first one in the returned list. [David]
+
+o Nmap now works if you specify several target host names which
+ resolve to the same IP address. This can be useful when you are
+ scanning virtual-hosted web servers and want to see NSE results
+ specific to each site name even though they reside on the same
+ machine. [David]
+
+o Made a list of current Nmap SVN committers:
+ https://svn.nmap.org/nmap/docs/committers.txt
+
+o Added a new library, libnetutil, which contains about 2,700 lines of
+ networking related code which is now shared between Nmap and Nping
+ (it was previously duplicated by each tool). [Luis, David]
+
+o [NSE] http-passwd.nse now also checks for boot.ini to support
+ Windows targets. [Gutek]
+
+o Removed --interactive mode, a miniature shell whose primary purpose
+ was to hide command line arguments from the process list. It had
+ been broken (would segfault during the second scan) for at least 9
+ months and was rarely used. The fact that it was broken was reported
+ by Juan Carlos Castro. [David]
+
+o Added a version probe, match line, and UDP payload for the
+ serialnumberd service of Mac OS X Server. This service overrides
+ firewall settings to make itself visible, so it's useful for host
+ discovery. [Patrik]
+
+o Improved service detection match lines for:
+ - Oracle Enterprise Manager Agent and mupdate by Matt Selsky
+ - Twisted web server, Apple Filing Protocol, Apple Mac OS X Password
+ Server, XAVi XG6546p Wireless Gateway, Sun GlassFish
+ Communications Server, and Comdasys, SIParator and Glassfish SIP
+ by Patrik
+ - PostgreSQL, Cisco Site Selector ftpd, and LanSafe UPS monitoring
+ HTTPd by Tom Sellers
+
+o Improved our brute force password guessing list by mixing in some
+ data sent in by Solar Designer of John the Ripper fame.
+
+o [Zenmap] IP addresses are now sorted by octet rather than their
+ string representation. For example, 10.1.1.2 is now sorted before
+ 10.1.1.10. This problem was reported by Norris Carden. [David]
+
+o [NSE] Added UDP header parsing support to packet.lua. [jah]
+
+o Fixed a bug in Libpcap which lead to Nmap hanging forever in some
+ cases on 64-bit Mac OS X 10.6, 10.6.1, and 10.6.3. The fix was
+ actually already available in upstream Libpcap, just not released.
+ We also had to make Nmap build with its own Libpcap on 64-bit OS X
+ if an already-installed system Libpcap has this bug. [David]
+
+o Updated our WinPcap to the new 4.1.2 release. [Rob Nicholls]
+
+o [NSE] Fixed a bug in qscan.nse which gave an error if a confidence
+ level of 0.9995 was used. Thanks to Marcin Hoffmann for noticing
+ the problem. [Kris]
+
+o [libpcap] Added a --disable-packet-ring option to force the use of
+ an older, slower packet capture mechanism on Linux. Before Linux
+ 2.6.27, the packet ring mechanism uses different-sized kernel
+ structures on 32- and 64-bit architectures, so a 32-bit program will
+ not run correctly on a 64-bit kernel. The older mechanism does not
+ have this flaw.
+
+o Fixed some errors in nmap-os-db, probably caused by incorrect string
+ replacement during integration. This patch is from James Cook.
+
+o [Nsock, Ncat] Nsock has a new function, nsp_setbroadcast, that
+ allows setting the SO_BROADCAST option on sockets. Ncat now sets
+ this option unconditionally in connect mode to allow connections to
+ broadcast addresses (useful in UDP mode). [Daniel Miller]
+
+o Nmap now works with "teamed" network interfaces on Windows. In order
+ to distinguish the interfaces, their textual descriptions are now
+ compared in addition to their MAC addresses. Without this, Nmap
+ would send on the wrong interface and not receive any replies. A
+ symptom of this problem was all scans failing except when
+ --unprivileged was used. Norris Carden reported this bug. [David]
+
+o [Ncat] When receiving a connection/datagram in listen mode, Ncat now
+ prints the connecting source port along with the IP address (when
+ verbosity is enabled). [Rebellis]
+
+o Fixed a problem where the time variable used in some port scanning
+ algorithms (for probe timeouts, etc) could vary based on the
+ debugging level. [Kris]
+
+o Moved the parse_long function from ncat to nbase for better reuse,
+ and used it to simplify netmask parsing code. [William Pursell]
+
+o Added EPROTO to the list of known error codes in service scan. Daniel
+ Miller reported that an EPROTO was causing Nmap to exit after sending
+ the Sqlping probe during service scan. The error message was
+ "Unexpected error in NSE_TYPE_READ callback. Error code: 71 (Protocol
+ error)". We suspect this was caused by a forged ICMP packet sent by an
+ active firewall. [David]
+
+o [NSE] Improved smtp-commands.nse to work against more mail servers,
+ made it take an smtp-commands.domain script argument, and rewrote it
+ in the style of other smtp scripts. [Jasey DePriest]
+
+o [NSE] Made smtp-commands run for the services smtp, smtps,
+ submission rather than just smtp. The other smtp scripts already do
+ this. [David]
+
+o [NSE] The dns-recursion script now marks the port as open when it
+ gets a response. [Olivier M]
+
+o [Nping] A big correctness and code cleanliness audit was performed
+ which resulted in many bugs being fixed and much more code being
+ shared with Nmap rather than duplicated. A structured testing
+ script system was also created. [Luis, David]
+
+o [Nping] Now allows a --count value of zero to run almost
+ indefinitely (2^32 rounds). Suggested by Andreas Hubert. [Luis]
+
+o [Nping] Fixed --data argument parsing. The value passed was not
+ actually making it into outgoing packets. Reported by Tim
+ Poth. [Luis]
+
+o [Nping] When a RST packet is received in response to a connection
+ attempt in TCP-Connect mode, Nping now properly prints "Connection
+ refused" rather than "Operation now in progress". [Luis]
+
+o [Nping] Fixed a bug which caused failure when the first supplied
+ target was not resolvable (e.g.: nping bogushost.fkz scanme.insecure.com
+ tcpdump.com). [Luis]
+
+o [Nping] Fixed some bugs in the BPF filter creation to avoid capture
+ and printing of packets Nping sent or which are destined for another
+ process. [Luis]
+
+o [Nping] Fixed a bug which prevented ARP replies from being displayed
+ properly. [Luis]
+
+o [Nping] Fixed a bug that caused ICMP Router Advertisement entries to
+ be set in host byte order rather than proper network byte
+ order. [Luis]
+
+o [Nping] Fixed a segfault caused by bad --data values. [Greg Skoczek]
+
+o The Mac OS X installer is now built with MacPorts 1.9.1 rather than
+ 1.8.2. Among other changes, this fixes a segmentation fault reported
+ by some OS X 10.6.3 users.
+
+o Nsock now supports an option to remove its Pcap support. This
+ allows the same Nsock to be shared with Nmap (which needs that
+ support) and Ncrack (which doesn't.) Pcap support can be disabled by
+ specifying --disable-pcap at configure time on UNIX, or by selecting
+ the DebugNoPcap or ReleaseNoPcap configurations in Visual C++ on
+ Windows.
+
+o Sped up compilation by not building both shared and static libdnet
+ libraries--we only use the static one. [David]
+
+o [NSE] Improved error handling and reporting and re-designed communication
+ class in RPC library with patch from Djalal Harouni. [Patrik]
+
+o Upgraded the included libpcap to version 1.1.1. [David]
+
+o [NSE] Add some special-use IPv4 addresses to isPrivate which are
+ described in RFC 5736 and RFC 5737, published in Jan 2010. Improve
+ performance of isPrivate for IPv4 addresses by using ip_in_range
+ less frequently. Add an extra return value to isPrivate - when the
+ first return value is true, the second return value will now be a
+ string representing the special use assignment in which the supplied
+ address is located. [jah]
+
+o Fix compilation on OpenSolaris. We had to make the libdnet autoconf
+ check for PF_PACKET Linux-specific. Recent versions of OpenSolaris
+ support PF_PACKET, but not in a way which is entirely compatible
+ with the Linux approach. This problem was reported by Darren Reed. A
+ few other minor compatibility changes were made as well. [David]
+
+o [NSE] Added script arguments "username" and "password" to ftp-bounce
+ to override the default anonymous:IEUser@ login combination. [Kris]
+
+o [NSE] Added port number sorting to dns-service-discovery.nse. [Patrik]
+
+o [NSE] Added an snmpWalk() function to the SNMP library and updated
+ scripts to use it. [Patrik]
+
+o [NSE] Fixed this dns.lua error reported by Eugene Alexeev:
+ nselib/dns.lua:110: attempt to get length of field 'dtype' (a number value)
+ [Jah]
+
+o Updated nmap-mac-prefixes to the latest IEEE data as of 2010-07-13.
+
+o Updated IANA IP address space assignment list for random IP (-iR)
+ generation. [Kris]
+
+o Created a new directory for storing todo lists for Nmap and related
+ projects. You can see what we're working on and planning by
+ visiting https://nmap.org/svn/todo/.
+
+o [NSE] Removed explicit time limit checking from ms-sql-brute,
+ pgsql-brute, mysql-brute, ldap-brute, and afp-brute. The unpwdb
+ library does this automatically now. [David]
+
+o [NSE] Correct global access errors in afp.lua reported by Patrick Donnelly
+ [Patrik]
+
+o [NSE] Correct misspelled "Capabilities.IgnoreSpaceBeforeParanthesis"
+ name in the MySQL library. [Kris]
+
+o Cleaned up our Winpcap header file directory, and also updated to
+ the latest files from the official developer pack
+ (WpdPack_4_1_1.zip). [Fyodor]
+
+o [NSE] Fixed a bug which would prevent rpcinfo.nse from returning any
+ results for RPC programs which could not be matched to a
+ name. [Patrik]
+
+o [NSE] The ftp-anon script is now much smarter about parsing server
+ responses and detecting successful (or not) logins. It now knows
+ how to send the ACCT command where appropriate as well. [Rob
+ Nicholls]
+
+o Normalized a bunch of version detection entries with "webserver" in
+ the description. In most cases this was changed to "httpd".
+
+o [Ncat] Fixed the --crlf option not to insert an extra \r byte in the
+ case that one system read ends with \r and the next begins with \n
+ (should be rare). [David]
+
+o [NSE] Fixed bug in rpc.lua library that incorrectly required file handles
+ to be 32 octets when calling the ReadDir function. The bug was reported by
+ Djalal Harouni. [Patrik]
+
+Nmap 5.30BETA1 [2010-03-29]
+
+o [NSE] Added 37 scripts, bringing the total to 117! They are
+ described individually in the CHANGELOG, but here is the list of new
+ ones:
+ afp-brute afp-path-vuln afp-showmount couchdb-databases
+ couchdb-stats daap-get-library db2-das-info dns-service-discovery
+ http-methods http-vmware-path-vuln ipidseq jdwp-version ldap-brute
+ ldap-rootdse ldap-search lexmark-config mongodb-databases
+ mongodb-info mysql-brute mysql-databases mysql-empty-password
+ mysql-users mysql-variables nfs-acls nfs-dirlist nfs-statfs
+ pgsql-brute qscan smtp-enum-users snmp-interfaces snmp-netstat
+ snmp-processes snmp-win32-services snmp-win32-shares
+ snmp-win32-software snmp-win32-users ssl-enum-ciphers
+ .
+ Learn more about any of these at: https://nmap.org/nsedoc/
+
+o [NSE] New script afp-path-vuln detects and can exploit a major Mac
+ OS X AFP directory traversal vulnerability (CVE-2010-0533)
+ discovered by Nmap developer Patrik Karlsson. See
+ https://nmap.org/nsedoc/scripts/afp-path-vuln.html and
+ http://bit.ly/nmapafp.
+
+o An ALPHA TEST VERSION of Nping, a packet generator written by Luis
+ MartinGarcia and Fyodor last summer, is now included in the Nmap
+ distribution. While it works, we consider the application unfinished
+ and we hope to improve it greatly as a Summer of Code project this
+ summer and then do an official release. See https://nmap.org/nping/.
+
+o [NSE] Added RPC library and three new NFS scripts. Modified the
+ rpcinfo and nfs-showmount scripts to use the new library. The new
+ scripts are:
+ - nfs-acls shows the owner and directory mode of NFS exports
+ (https://nmap.org/nsedoc/scripts/nfs-acls.html).
+ - nfs-dirlist lists the contents of NFS exports
+ (https://nmap.org/nsedoc/scripts/nfs-dirlist.html)
+ - nfs-statfs shows file system statistics for NFS exports
+ (https://nmap.org/nsedoc/scripts/nfs-statfs.html).
+ [Patrik]
+
+o [NSE] Added the new dns-service-discovery script which uses DNS-SD
+ to identify services. DNS-SD is one part of automatic configuration
+ technologies known by names such as Bonjour, Rendezvous, and
+ Zeroconf. This one script can provide as much information as a full
+ port scan in some cases. See
+ https://nmap.org/nsedoc/scripts/dns-service-discovery.html . [Patrik
+ Karlsson]
+
+o [NSE] New script afp-brute for brute force authentication attempts
+ against the Apple AFP filesharing protocol. See
+ https://nmap.org/nsedoc/scripts/afp-brute.html . [Patrik]
+
+o [NSE] Added a new script afp-showmount which displays Apple AFP
+ shares and their permissions. See
+ https://nmap.org/nsedoc/scripts/afp-showmount.html . [Patrik]
+
+o [NSE] Added the qscan script to repeatedly probe ports on a host to
+ gather round-trip times for each port. The script then uses these
+ times to group together ports with statistically equivalent round
+ trip times. Ports in different groups could be the result of things
+ such as port forwarding to hosts behind a NAT. It is based on work
+ by Doug Hoyte. This script also utilizes the new NSE raw IP sending
+ functionality. See https://nmap.org/nsedoc/scripts/qscan.html . [Kris]
+
+o [NSE] Added a new script, db2-das-info.nse, that connects to the IBM
+ DB2 Administration Server (DAS) exports the server profile. No
+ authentication is required for this request. The script will also
+ set the port product and version if a version scan is requested. See
+ https://nmap.org/nsedoc/scripts/db2-das-info.html . [Patrik Karlsson,
+ Tom Sellers]
+
+o [NSE] Added a new library for ASN.1 parsing and adapted the SNMP
+ library to make use of it. Added 5 SNMP scripts that use the new
+ libraries:
+ - snmp-netstat shows listening and connected
+ sockets (https://nmap.org/nsedoc/scripts/snmp-netstat.html).
+ - snmp-processes shows process information including name, pid, path
+ & parameters (https://nmap.org/nsedoc/scripts/snmp-processes.html).
+ - snmp-win32-services shows the names of running Windows services
+ (https://nmap.org/nsedoc/scripts/snmp-win32-services.html).
+ - snmp-win32-shares shows the names and path of Windows shares
+ (https://nmap.org/nsedoc/scripts/snmp-win32-shares.html).
+ - snmp-win32-software shows a list of installed Windows software
+ (https://nmap.org/nsedoc/scripts/snmp-win32-software.html).
+ - snmp-win32-users shows a list of local Windows users
+ (https://nmap.org/nsedoc/scripts/snmp-win32-users.html).
+ [Patrik]
+
+o [NSE] Added the snmp-interfaces script by Thomas Buchanan, which
+ enumerates network interfaces over SNMP. See
+ https://nmap.org/nsedoc/scripts/snmp-interfaces.html .
+
+o [NSE] Added http-vmware-path-vuln.nse, which checks for a critical
+ and easy to exploit path-traversal vulnerability in VMWare
+ (CVE-2009-3733). See
+ https://nmap.org/nsedoc/scripts/http-vmware-path-vuln.html . [Ron]
+
+o [NSE] Added a new library for LDAP and three new scripts by Patrik:
+ - ldap-brute uses the unpwdb library to guess credentials for LDAP
+ (https://nmap.org/nsedoc/scripts/ldap-brute.html).
+ - ldap-rootdse retrieves the LDAP root DSA-specific Entry (DSE)
+ (https://nmap.org/nsedoc/scripts/ldap-rootdse.html).
+ - ldap-search queries a LDAP directory for either
+ all, or a number of pre-defined object types
+ (https://nmap.org/nsedoc/scripts/ldap-search.html).
+
+o [NSE] Added a new library for PostgreSQL and the script pgsql-brute
+ that uses it to guess credentials. See
+ https://nmap.org/nsedoc/scripts/pgsql-brute.html . [Patrik]
+
+o [NSE] Added 5 new MySQL NSE scripts and a MySQL library by Patrik Karlsson:
+ - mysql-brute uses the unpwdb library to guess credentials for MySQL
+ (https://nmap.org/nsedoc/scripts/mysql-brute.html).
+ - mysql-databases queries MySQL for a list of databases
+ (https://nmap.org/nsedoc/scripts/mysql-databases.html).
+ - mysql-empty-password attempts to authenticate anonymously or as
+ root with an empty password
+ (https://nmap.org/nsedoc/scripts/mysql-empty-password.html).
+ - mysql-users queries MySQL for a list of database users
+ (https://nmap.org/nsedoc/scripts/mysql-users.html).
+ - mysql-variables queries MySQL for its variables and their
+ settings (https://nmap.org/nsedoc/scripts/mysql-variables.html).
+
+o Improved the passwords.lst database used by NSE by combining several
+ leaked password databases collected by Ron Bowes. The size of the
+ database has been increased from 200 to 5000.
+
+o Zenmap's "slow comprehensive scan profile" has been modified to use
+ the best 7-probe host discovery combination we were able to find in
+ extensive empirical testing
+ (http://www.bamsoftware.com/wiki/nmap/EffectivenessOfPingProbes).
+ That combination is "-PE -PP -PS21,22,23,25,80,113,31339
+ -PA80,113,443,10042 -PO". [David]
+
+o Switched to -Pn and -sn and as the preferred syntax for skipping
+ ping scan and skipping port scan, respectively. Previously the -PN
+ and -sP options were recommended. This establishes a more regular
+ syntax for some options that disable phases of a scan:
+ + -n no reverse DNS
+ + -Pn no host discovery
+ + -sn no port scan
+ We also felt that the old -sP ("ping scan") option was a bit
+ misleading because current versions of Nmap can go much further
+ (including -sC and --traceroute) even with port scans disabled. We
+ will retain support for the previous option names for the foreseeable
+ future.
+
+o [NSE] Added the ipidseq script to classify a host's IP ID sequence
+ numbers in the same way Nmap does. This can be used to test hosts'
+ suitability for Nmap's Idle Scan (-sI), i.e. check if a host is an
+ idle zombie. This is the first script to use the new raw IP sending
+ functionality in NSE. See
+ https://nmap.org/nsedoc/scripts/ipidseq.html . [Kris]
+
+o [NSE] Added the ssl-enum-ciphers script by Mak Kolybabi. It lists
+ the ciphers and compressors supported by SSL/TLS servers. See
+ https://nmap.org/nsedoc/scripts/ssl-enum-ciphers.html .
+
+o [NSE] Added two new scripts for the MongoDB database from Martin
+ Holst Swende. mongodb-info
+ (https://nmap.org/nsedoc/scripts/mongodb-info.html) gets information
+ like the version number, memory use, and operating system, while
+ mongodb-databases
+ (https://nmap.org/nsedoc/scripts/mongodb-databases.html) lists the
+ databases and their size on disk.
+
+o [NSE] Added the scripts couchdb-databases and couchdb-stats, which
+ list CouchDB databases and show access statistics, and a new
+ json.lua library they depend on. See
+ https://nmap.org/nsedoc/scripts/couchdb-databases.html and
+ https://nmap.org/nsedoc/scripts/couchdb-stats.html [Martin Holst
+ Swende]
+
+o [NSE] Added the new lexmark-config script that lists product
+ information and configuration for Lexmark printers. See
+ https://nmap.org/nsedoc/scripts/lexmark-config.html . [Patrik
+ Karlsson]
+
+o [NSE] Added the new daap-get-library script which uses the Digital
+ Audio Access Protocol to enumerate the contents of a library. The
+ contents contain the name of the artist, album and song. See
+ https://nmap.org/nsedoc/scripts/daap-get-library.html . [Patrik]
+
+o [NSE] Added jdwp-version.nse, a script by Michael Schierl that finds
+ the version of a Java Debug Wire Protocol server. This is a
+ dangerous service to find running as it does not provide any
+ security against malicious attackers who can inject their own
+ bytecode into the debugged process. See
+ https://nmap.org/nsedoc/scripts/jdwp-version.html .
+
+o [NSE] Added the smtp-enum-users script from Duarte Silva, which
+ attempts to find user account names over SMTP by brute force testing
+ using RCPT, VRFY, and EXPN tests.
+
+o [NSE] The unpwdb library now has a default time limit on the
+ usernames and passwords iterators. This will prevent brute force
+ scripts from running for a long time when a service is slow. These
+ new script arguments control the limits:
+ - unpwdb.userlimit Limit on number of usernames.
+ - unpwdb.passlimit Limit on number of passwords.
+ - unpwdb.timelimit Time limit in seconds.
+ Pass 0 for any of these limits to disable it. For more details, see
+ https://nmap.org/nsedoc/lib/unpwdb.html . [David]
+
+o When --open is used, Nmap no longer prints output for hosts which
+ don't have any open ports. All output formats are treated the same
+ way, so if a host isn't shown in normal output, it won't be shown in
+ XML output either.
+
+o [NSE] Added the script http-methods from Bernd Stroessenreuther.
+ This script sends an HTTP OPTIONS request to get the methods
+ supported by the server, highlights potentially risky methods, and
+ optionally tests each method to see if they are restricted by IP
+ address or something similar. See
+ https://nmap.org/nsedoc/scripts/http-methods.html .
+
+o The -v and -d options are now handled in the same way. These three
+ forms are equivalent:
+ -v -v -v -vvv -v3
+ -d -d -d -ddd -d3
+ Formerly, the -ddd and -v3 forms didn't work. Mak Kolybabi submitted
+ a patch.
+
+o Fixed a libpcap compilation error on Solaris. This was actually
+ fixed in libpcap's source control back in 2008, but they haven't made
+ a release since then :(. They still seem to be actively developing
+ though, so let's hope for a release soon. Solaris compilation fixes
+ were made to Ncat and Nping as well.
+
+o Zenmap now lets you save scan results in normal Nmap text output
+ format or (as before) as XML. The XML format still has the text
+ version embedded inside it, and is still the only format Zenmap can
+ load again. The "Save to Directory" mode for saving multiple
+ aggregated scans at once still always saves XML results. [David]
+
+o Fixed the packaging of x64 versions of WinPcap drivers in the
+ winpcap-nmap installer to ensure that 64-bit applications (such as
+ 64-bit Wireshark) work properly. [Rob Nicholls]
+
+o Fixed the Idle Scan (-sI) so that scanning multiple hosts doesn't
+ retest the zombie proxy and reinitialize all of the associated data
+ at the beginning of each run. [Kris]
+
+o [NSE] Raw packet sending at the IP layer is now supported, in
+ addition to the existing Ethernet sending functionality. Packets to
+ send start with an IPv4 header and can be sent to arbitrary
+ hosts. For details, see
+ https://nmap.org/book/nse-api.html#nse-api-networkio-raw [Kris]
+
+o Added version detection match line for the Arucer backdoor, which was
+ found packaged with drivers for the Energizer USB recharger product
+ (see http://www.kb.cert.org/vuls/id/154421). [Ron]
+
+o Fixed --resume to work again despite our recent changes to the Nmap
+ output format. [jlanthea]
+
+o [Zenmap] Localized most of the remaining strings in the GUI
+ interface which were English-only. The actual textual Nmap results
+ are still in English since Nmap, but the GUI is now almost fully
+ localized. [David]
+
+o [Zenmap] Updated the localization files for the French
+ translation. [Gutek]
+
+o [Zenmap] Fixed an interface bug which could cause hostnames with
+ underscores like "host_a" to be rendered like "hosta" with the "a"
+ underlined. Thanks to Toralf F. for the report, and David for the
+ fix.
+
+o Nmap now honors routing table entries that override interface
+ addresses and netmasks. For example, with this configuration:
+ ************************INTERFACES************************
+ DEV (SHORT) IP/MASK TYPE UP MAC
+ eth0 (eth0) 192.168.0.21/24 ethernet up 00:00:00:00:00:00
+ .
+ **************************ROUTES**************************
+ DST/MASK DEV GATEWAY
+ 192.168.0.3/32 eth0 192.168.0.1
+ 192.168.0.0/24 eth0
+ Nmap will not consider 192.168.0.3 directly connected through eth0,
+ even though it matches the interface's netmask. It won't try to ARP
+ ping 192.168.0.3, but will route traffic through 192.168.0.1.
+
+o [Ncat] The HTTP proxy server now accepts client connections over
+ SSL. That means connections to the proxy can be encrypted and
+ authenticated. We haven't found any HTTP clients that directly
+ support SSL connections to proxies, but you can use Ncat as a tunnel
+ to an SSL-supporting Ncat proxy. This new feature was implemented by
+ Markus Klinik.
+
+o Updated our Mac OS X build system so that our binary packages are
+ built on Mac OS X 10.6 rather than 10.5. [David]
+
+o Fixed reading of the interface table on NetBSD. Running nmap
+ --iflist would report "INTERFACES: NONE FOUND(!)" and any scan done
+ as root would fail with "WARNING: Unable to find appropriate
+ interface for system route to...". This was first reported by Jay
+ Fink, and had already been patched in the NetBSD pkgsrc
+ tree. [David]
+
+o Fixed a bug in traceroute that could happen when directly connected
+ and routed targets were in the same hostgroup. If the first target
+ was directly connected, the traceroute for all targets in the group
+ would have a trace of one hop.
+
+o ARP requests now work with libpcap Linux "cooked" encapsulation.
+ According to http://wiki.wireshark.org/SLL, this encapsulation is
+ used on devices "where the native link layer header isn't available
+ or can't be used." Before this, attempting any ARP operation on such
+ an interface would fail with the error
+ read_arp_reply_pcap called on interfaces that is datatype 113
+ rather than DLT_EN10MB (1)
+ [David]
+
+o Fixed the display of route netmask bits in --iflist on little-endian
+ architectures. Formerly, any mask less than /24 was shown as /0, and
+ other masks were also wrong. [David]
+
+o Fixed an assertion failure which could occur when connecting to an
+ SSL server:
+ nsock_core.c:199: socket_count_write_dec: Assertion `(iod->writesd_count)
+> 0' failed.
+ This was observed when running the http-enum script but could
+ possibly have happened in other situations. Thanks to Brandon for
+ reporting the bug and testing. [David]
+
+o Added the function bignum_add to the nse_openssl library to support
+ BIGNUM addition [Patrik]
+
+o The redistributable Visual C++ runtime components installer
+ (vcredist_x86.exe) has been upgraded to version 9.0.30729.4148. Axel
+ Pettinger reported that the previous version 9.0.30729.17, caused a
+ Windows Update on Windows 7 because of Microsoft security advisory
+ MS09-035.
+
+o [Ncat] Fixed an error that could make programs run with --exec exit
+ prematurely on Windows. The problem was related to a program writing
+ too quickly into a non-blocking socket. A symptom was the message:
+ NCAT DEBUG: Subprocess ended with exit code 259.
+ Reported by David Millis. [David]
+
+o [Ncat] Fixed a bug that prevented detection of EOF from stdin on
+ Windows. Reported by Adrian Crenshaw and Andy Zwirko. [David]
+
+o [Nsock] WSAEACCES was added to the list of known connect error
+ codes. This error can happen on Windows when a port is blocked by
+ Windows Firewall. Thanks to Taemun for reporting this and
+ investigating.
+
+o XML output now only includes host elements for down hosts in verbose
+ mode. This makes it consistent with the other output formats.
+
+o [NSE] Fixed http-enum so it uses the full path name for the
+ fingerprints file. This prevents it from quitting with an error like
+ this:
+ NSE: http-enum: Attempting to parse fingerprint file
+ nselib/data/http-fingerprints NSE: http-enum against
+ 10.99.24.140:443 threw an error! C:\Program
+ Files\Nmap\scripts\http-enum.nse:198: bad argument #1 to 'lines'
+ (nselib/data/http-fingerprints: No such file or directory) stack
+ traceback:
+ [Kris, Brandon, Ron Meldau]
+
+o [NSE] Added a missing dirname function to http-favicon. Its absence
+ was causing this error message when a web page specified a relative
+ icon URL in a link element:
+ http-favicon.nse:141: variable 'dirname' is not declared
+ [David, Ron Meldau]
+
+o Fixed the parsing of libdnet DLPI interface names that contain more
+ than one string of digits. Joe Dietz reported that an interface with
+ the name e1000g0 was causing this error message on Solaris 9:
+ Warning: Unable to open interface e1000g0 -- skipping it.
+ [David]
+
+o [NSE] Added the function nmap.is_privileged() to tell a script if,
+ as far as Nmap's concerned, it can do privileged operations. For
+ instance, this can be used to determine whether a script can open a
+ raw socket or Ethernet interface. [Kris]
+
+o [NSE] Added the function nmap.get_ports() so scripts can iterate
+ over a host's port table entries matching a given protocol and
+ state. [Kris, Patrick]
+
+o [Ncat] Fixed a handle leak with --exec and --sh-exec on Windows,
+ found by Jon Greaves. One thread handle was being leaked per child
+ process invocation. [David]
+
+o [NSE] nbstat.nse can now look up the MAC prefix vendor string. Other
+ scripts can now do the same thing using the
+ datafiles.parse_mac_prefixes function. [Thomas Buchanan]
+
+o Remove the PYTHONPATH and PYTHONHOME variables from the environment
+ before executing a sub-ndiff if they exist and if Zenmap is running
+ in a py2app bundle. These variables are set by py2app to point
+ inside our application bundle. Having them set in the environment
+ makes Ndiff use the same settings because it is also a Python
+ application. Deleting the variables is somewhat wrong, because the
+ user may have set those outside of Zenmap expecting them to be used
+ with their system-installed Python programs. But this is at least no
+ worse than before our build system update, because previously py2app
+ was stomping on the variables anyway. [David]
+
+o [Ncat] Fixed a segmentation fault caused by access to freed memory.
+ It could be triggered by making multiple connections to a server
+ that was constantly sending in SSL mode, such as:
+ ncat -l -k --ssl < /dev/zero
+ This bug was reported by Mak Kolybabi. [David]
+
+o [NSE] Moved the smtp-open-relay.nse script out of the "demo"
+ category after improvements by Duarte Silva. We have now met the
+ goal of removing all scripts from that category.
+
+o [NSE] Fixed a bug which prevented smb-brute from properly detecting
+ account lockouts, which could lead to lockouts of many accounts on
+ the target machine. Now smb-brute tries to check the lockout policy
+ before starting and refuses to run (unless you force it to with the
+ smblockout variable) if lockouts are enabled or if it locks out an
+ account. [Ron]
+
+o [NSE] Rewrote smb-enum-domains to be more generalized and rely on
+ library functions which will eventually be shared with
+ smb-brute. [Ron]
+
+o Qualified an assertion to allow zero-byte sends in Nsock. Without
+ this, an NSE script could cause this assertion failure by doing
+ socket:send(""):
+ nmap: nsock_core.c:516: handle_write_result: Assertion `bytesleft > 0' failed.
+ [David]
+
+o Added a service probe for Logitech SqueezeCenter command line interface
+ [Patrik]
+
+o Improved PostgreSQL match lines by matching the line of the error to a
+ specific version [Patrik].
+
+o Added a mac_addr_next_hop member to the host tables used in NSE for
+ scripts which need to know the MAC address of the next hop router
+ for reaching a target host. [Michael Pattrick, KX].
+
+o Removed the nmap_service.exe helper program for smb-psexec, as it
+ was still being flagged by malware detection even after the
+ bit-flipping in the next release. In fact, the obfuscation backfired
+ and caused more false positives! You can now download it from
+ https://nmap.org/psexec/nmap_service.exe. (The script will remind you
+ if you run the script and it's not installed.)
+
+o Added service probes and UDP payloads for games based on the Quake 2
+ and Quake 3 engine, submitted by Mak Kolybabi.
+
+o [Ncat] Added support for HTTP digest authentication of proxies, as
+ both client and server. Previously only the less secure basic
+ authentication method was supported. [Venkat, David]
+
+o Improved the MIT Kerberos version detection signatures. [Matt Selsky]
+
+o [Ndiff] Show a nicer error message when an input file can't be
+ loaded. Suggested by Derril Lucci, who also contributed a patch.
+
+o [NSE] Added a new library afp.lua which handles the Apple Filing
+ Protocol (AFP) filesharing system. The library handles
+ authentication and many other protocol features, and enables the new
+ afp-path-vuln, afp-brute, and afp-showmount scripts. [Patrik]
+
+o Added an Apple Filing Protocol service probe that detects Netatalk
+ servers. (Apple's AFP servers are coincidentally triggered by the
+ SSLSessionReq probe.) [Patrik Karlsson]
+
+o [NSE] Fixed packet.lua so that functions used to set packet header
+ fields (e.g. ip_set_ttl) also set the appropriate variables used to
+ access the data (e.g. ip_ttl). [Kris]
+
+o Updated and corrected IANA assignment IP list for random IP (-iR)
+ generation. Now even 001/8 has been allocated. [Kris]
+
+Nmap 5.21 [2010-01-27]
+
+o [Zenmap] Added a workaround for a Ubuntu Python packaging idiosyncrasy.
+ As of version python2.6-2.6.4-0ubuntu3, Ubuntu's distutils modifies
+ self.prefix, a variable we use in the setup.py script. This would
+ cause Zenmap to look in the wrong place for its configuration files,
+ and show the dialog "Error creating the per-user configuration
+ directory" with the specific error "[Errno 2] No such file or
+ directory: '/usr/share/zenmap/config'". This problem was reported by
+ Chris Clements, who also helped debug. [David]
+
+o Fixed an error that occurred when UDP scan was combined with version
+ scan. UDP ports would appear in the state "unknown" at the end of
+ the scan, and in some cases an assertion failure would be raised.
+ This was an unintended side effect of the memory use reduction
+ changes in 5.20. The bug was reported by Jon Kibler. [David]
+
+o [NSE] Did some simple bit-flipping on the nmap_service.exe program
+ used by the smb-psexec script, to avoid its being falsely detected
+ as malware. [Ron]
+
+o [NSE] Fixed a bug in http.lua that could lead to an assertion
+ failure. It happened when there was an error getting the a response
+ at the beginning of a batch in http.pipeline. The symptoms of the
+ bug were:
+ NSE: Received only 0 of 1 expected reponses.
+ Decreasing max pipelined requests to 0.
+ NSOCK (0.1870s) Write request for 0 bytes...
+ nmap: nsock_core.c:516: handle_write_result: Assertion `bytesleft > 0' failed.
+ The error was reported by Brandon Enright and pyllyukko.
+
+o [NSE] Restored the ability of http.head to return a body if the
+ server returns one. This was lost in the http.lua overhaul from
+ 5.20. [David]
+
+o [NSE] Fixed the use of our strict.lua library on distributions that
+ install their own strict.lua. The error message was
+ nse_main.lua:97: attempt to call a boolean value
+ It was reported by Onur K. [Patrick]
+
+o Fixed handing of nameserver entries in /etc/resolv.conf so it could
+ handle entries containing more than 16 bytes, which can occur with
+ IPv6 addresses. Gunnar Lindberg reported the problem and
+ contributed an initial patch, then Brandon and Kris refined and
+ implemented it.
+
+o [NSE] Corrected a behavior change in http.request that was
+ accidentally made in 5.20: it could return nil instead of a table
+ indicating failure. [David]
+
+o [NSE] Fixed the use of an undefined variable in smb-enum-sessions,
+ reported by Brandon. [Ron]
+
+o Fixed a compiler error when --without-liblua is used. [Brandon]
+
+o [NSE] Fixed an error with running http-enum.nse along with the
+ --datadir option. The script would report the error
+ http-enum.nse:198: bad argument #1 to 'lines'
+ (nselib/data/http-fingerprints: No such file or directory)
+ The error was reported by Ron Meldau and Brandon. [Kris]
+
+o Added a function that was missing from http-favicon.nse. Its absence
+ would cause the error
+ http-favicon.nse:141: variable 'dirname' is not declared
+ when a web page specified an relative icon URL through the link
+ element. This bug was reported by Ron Meldau. [David]
+
+o Fixed a bug with the decoding of NMAP OID component values greater
+ than 127. [Patrik Karlsson, David]
+
+Nmap 5.20 [2010-01-20]
+
+o Dramatically improved the version detection database, integrating
+ 2,596 submissions that users contributed since February 3, 2009!
+ More than a thousand signatures were added, bringing the total to
+ 8,501. Many existing signatures were improved as well. Please keep
+ those submissions and corrections coming! Nmap prints a submission
+ URL and fingerprint when it receives responses it can't yet
+ interpret.
+
+o [NSE] Added a new script, oracle-sid-brute, which queries the Oracle
+ TNS-listener for default instance/sid names. The SID enumeration
+ list was prepared by Red Database security. See
+ https://nmap.org/nsedoc/scripts/oracle-sid-brute.html . [Patrik
+ Karlsson]
+
+o [Ncat] The --ssl, --output, and --hex-dump options now work with
+ --exec and --sh-exec. Among other things, this allows you to make a
+ program's I/O available over the network wrapped in SSL encryption
+ for security. It is implemented by forking a separate process to
+ handle network communications and relay the data to the
+ sub-process. [Venkat, David]
+
+o Nmap now tries start the WinPcap NPF service on Windows if it is not
+ already running. This is rare, since our WinPcap installer starts
+ NPF running at system boot time by default. Because starting NPF
+ requires administrator privileges, a UAC dialog for net.exe may
+ appear on Windows Vista and Windows 7 before NPF is loaded. Once
+ NPF is loaded, it generally stays loaded until you reboot or run
+ "net stop npf". [David, Michael Pattrick]
+
+o The Nmap Windows installer and our WinPcap installer now have an
+ option /NPFSTARTUP=NO, which inhibits the installer from setting the
+ WinPcap NPF service to start at system startup and at install-time.
+ This option only affects silent mode (/S) because existing GUI
+ checkboxes allow you to configure this behavior during interactive
+ installation. [David]
+
+o [NSE] Replaced our runlevel system for managing the order of script
+ execution with a much more powerful dependency system. This allows
+ scripts to specify which other scripts they depend on (e.g. a brute
+ force authentication script might depend on username enumeration
+ scripts) and NSE manages the order. Dependencies only enforce
+ ordering, they cannot pull in scripts which the user didn't
+ specify. See
+ https://nmap.org/book/nse-script-format.html#nse-format-dependencies
+ [Patrick]
+
+o [Ncat] For compatibility with Hobbit's original Netcat, The -p
+ option now works to set the listening port number in listen mode.
+ So "ncat -l 123" can now be expressed as "ncat -l -p 123"
+ too. [David]
+
+o A new script argument, http.useragent, lets you modify
+ the User-Agent header sent by NSE from its default of "Mozilla/5.0
+ (compatible; Nmap Scripting Engine; https://nmap.org/book/nse.html)".
+ Set it to the empty string to disable the User-Agent
+ entirely. [David, Tom Sellers, Jah]
+
+o [Zenmap] The locale setting had been taken from the Windows locale,
+ which inadvertently made setting the locale with the LANG
+ environment variable stop working. Now the LANG variable is examined
+ first, and if that is not present, the system-wide setting is
+ used. This change allows users to keep Zenmap in its original
+ English (or any of Zenmap's other languages) even if their system is
+ set to use a different locale. [David]
+
+o [NSE] The http-favicon script is now better at finding "link
+ rel=icon" tags in pages, and uses that icon in preference to
+ /favicon.ico if found. If the favicon.uri script arg is given, only
+ that is tried. Meanwhile, a giant (10 million web servers) favicon
+ scan by Brandon allowed us to add about 40 more of the most popular
+ icons to the DB. [David, Brandon]
+
+o [NSE] smb-psexec now works against Windows XP (as well as
+ already-supported Win2K and Windows 2003). The solution involved
+ changing the seemingly irrelevant PID field in the SMB packet. See
+ http://seclists.org/nmap-dev/2010/q1/13. [Ron]
+
+o [NSE] Fixed a bug which kept the nselib/data/psexec subdirectory out
+ of the Windows packages. We needed to add the /s and /e options to
+ xcopy in our Visual C++ project file. [David]
+
+o [NSE] Overhauled our http library to centralize HTTP parsing and
+ make it more robust. The biggest user-visible change is that
+ http.request goes back to returning a parsed result table rather than raw
+ HTTP data. Also the http.pipeline function no longer accepts the
+ no-longer-used "raw" option. [David]
+
+o Fixed a bug in traceroute that could lead to a crash:
+ terminate called after throwing an instance of 'std::out_of_range'
+ what(): bitset::test
+ It happened when the preliminary distance guess for a target was
+ greater than 30, the size of an internal data structure. David and
+ Brandon tracked down the problem.
+
+o Fixed compilation of libdnet-stripped on platforms that don't have
+ socklen_t. [Michael Pattrick]
+
+o Added a service probe and match lines for the Logitech/SlimDevices
+ SqueezeCenter music server. [Patrik Karlsson]
+
+o Fixed the RTSPRequest version probe, which was accidentally modified
+ to say "RTSP/2.0" rather than "RTSP/1.0" in 5.10BETA2. [Matt Selsky]
+
+o [NSE] Our http library no longer allows cached responses from a GET
+ request to be returned for a HEAD request. This could cause problems
+ with at least the http-enum script. [David]
+
+o Fixed a bug in the WinPcap installer: If the "Start the WinPcap
+ service 'NPF' at startup" box was unchecked and the "Start the
+ WinPcap service 'NPF' now" box was checked, the second checkbox
+ would be ignored (the service would not be started now). [Rob
+ Nicholls]
+
+Nmap 5.10BETA2 [2009-12-24]
+
+o Added 7 new NSE scripts for a grand total of 79! You can learn about
+ them all at https://nmap.org/nsedoc/. Here are the new ones:
+
+ * nfs-showmount displays NFS exports like "showmount -e" does. See
+ https://nmap.org/nsedoc/scripts/nfs-showmount.html . [Patrik
+ Karlsson]
+
+ * ntp-info prints the time and configuration variables provided by
+ an NTP service. It may get such interesting information as the
+ operating system, server build date, and upstream time server IP
+ address. See
+ https://nmap.org/nsedoc/scripts/ntp-info.html . [Richard Sammet]
+
+ * citrix-brute-xml uses the unpwdb library to guess credentials for
+ the Citrix PN Web Agent Service. See
+ https://nmap.org/nsedoc/scripts/citrix-brute-xml.html . [Patrik Karlsson]
+
+ * citrix-enum-apps and citrix-enum-apps-xml print a list of published
+ applications from the Citrix ICA Browser or XML service,
+ respectively. See
+ https://nmap.org/nsedoc/scripts/citrix-enum-apps.html and
+ https://nmap.org/nsedoc/scripts/citrix-enum-apps-xml.html . [Patrik Karlsson]
+
+ * citrix-enum-servers and citrix-enum-servers-xml print a list
+ of Citrix servers from the Citrix ICA Browser or XML service,
+ respectively. See
+ https://nmap.org/nsedoc/scripts/citrix-enum-servers.html and
+ https://nmap.org/nsedoc/scripts/citrix-enum-servers-xml.html . [Patrik
+ Karlsson]
+
+o We performed a memory consumption audit and made changes to
+ dramatically reduce Nmap's footprint. This improves performance on
+ all systems, but is particularly important when running Nmap on
+ small embedded devices such as phones. Our intensive UDP scan
+ benchmark saw peak memory usage decrease from 34MB to 6MB, while OS
+ detection consumption was reduced from 67MB to 3MB. Read about the
+ changes at http://seclists.org/nmap-dev/2009/q4/663. Here are the
+ highlights:
+
+ * The size of the internal representation of nmap-os-db was reduced
+ more than 90%. Peak memory consumption in our OS detection
+ benchmark was reduced from 67MB to 3MB. [David]
+
+ * The size of individual Port structures without service scan
+ results was reduced about 70%. [Pavel Kankovsky]
+
+ * When a port receives no response, Nmap now avoids allocating a
+ Port structure at all, so scans against filtered hosts can be
+ light on memory. [David]
+
+o David started a major service detection submission integration
+ run. So far he has processed submissions since February for the
+ following services: imap, pop3, afp, sip, printer, transmission,
+ svnserve, vmware, domain, backdoor, finger, freeciv, hp, imaps, irc,
+ landesk, netbios-ssn, netsupport, nntp, oracle, radmin, routersetup,
+ rtorrent, serv-u, shoutcast, ssh, tcpmux, torrent, utorrent, vnc and
+ ipp. The rest will come in the next release, along with full stats
+ on the additions.
+
+o Added service detection probe for Kerberos (udp/88) and IBM DB2
+ DAS (523/UDP). [Patrik Karlsson]
+
+o Added a UDP payload and service detection probe for Citrix
+ MetaFrame, which typically runs on 1604/udp. [Thomas Buchanan]
+
+o Added a UDP SIPOptions service detection probe corresponding to the
+ TCP one. [Patrik Karlsson, Matt Selsky, David Fifield]
+
+o Updated service detection signatures for Microsoft SQL Server 2005
+ to detect recent Microsoft security update (MS09-062), and also
+ updated ms-sql-info.nse to support MS SQL Server 2008
+ detection. [Tom]
+
+o Nmap now provides Christmas greetings and a reminder of Xmas scan
+ (-sX) when run in verbose mode on December 25. [Fyodor]
+
+o Removed a limitation of snmp.lua which only allowed it to properly
+ encode OID component values up to 127. The bug was reported by
+ Victor Rudnev. [David]
+
+o Nmap script output now uses two spaces of indention rather than
+ three for the first level. This better aligns with the standard set by
+ the stdnse.format_output function added in the last release. Output
+ now looks like:
+ 8082/tcp open http Apache httpd 2.2.13 ((Fedora))
+ |_http-favicon: Apache Web Server (seen on SuSE, Linux Tux favicon)
+ |_html-title: Nmap - Free Security Scanner For Network Exploration & Securit...
+ ...
+ Host script results:
+ | smb-os-discovery:
+ | OS: Unix (Samba 3.4.2-0.42.fc11)
+ | Name: Unknown\Unknown
+ |_ System time: 2009-11-24 17:19:21 UTC-8
+ |_smbv2-enabled: Server doesn't support SMBv2 protocol
+ [Fyodor]
+
+o [NSE] Fixed (we hope) a deadlock we were seeing when doing a
+ favicon.nse survey against millions of hosts. We now restore all
+ threads that are waiting on a socket lock when a thread relinquishes
+ its lock. We expect only one of them to be able to grab the newly
+ freed lock, and the rest to go back to waiting. [David, Patrick]
+
+o [Zenmap] Fixed a crash when filtering with inroute: in scans without
+ traceroute data. (KeyError: 'hops') [David]
+
+o [NSE] Use a looser match pattern in auth-owners.nse for retrieving
+ the owner out of an identd response. See
+ http://seclists.org/nmap-dev/2009/q4/549. [Richard Sammet]
+
+o Improved some Cyrus pop3 and Polycom SoundStation sip match
+ lines. [Matt Selsky]
+
+o [Ncat] In the Windows version of netrun, we weren't noticing when a
+ command fails to be executed (when CreateProcess fails). We now see
+ the return value and close the socket to disconnect the
+ client. [David]
+
+o [NSE] Updated http-iis-webdav-vuln to run against SSL-enabled
+ servers [Ron]
+
+o [NSE] Improved db2-info to set port product and state (rather than
+ just port.version.name and confidence) when a DB2 service is
+ positively identified. Error reporting was improved as well. [Tom]
+
+Nmap 5.10BETA1 [2009-11-23]
+
+o Added 14 new NSE scripts for a grand total of 72! You can learn
+ about them all at https://nmap.org/nsedoc/. Here are the new ones:
+
+ + smb-psexec implements remote process execution similar to the
+ Sysinternals' psexec tool (or Metasploit's psexec "exploit"),
+ allowing a user to run a series of programs on a remote machine
+ and read the output. This is great for gathering information about
+ servers, running the same tool on a range of system, or even
+ installing a backdoor on a collection of computers. See
+ https://nmap.org/nsedoc/scripts/smb-psexec.html [Ron]
+
+ + dhcp-discover sends out DHCP probes on UDP/67 and displays all
+ interesting results (or, with verbosity, all results).
+ Optionally, multiple probes can be sent and the MAC address can be
+ randomized in an attempt to exhaust the DHCP server's address pool
+ and potentially create a denial of service condition. See
+ https://nmap.org/nsedoc/scripts/dhcp-discover.html . [Ron]
+
+ + http-enum enumerates URLs used by popular web applications and
+ servers and reports which ones exist on a target web server. See
+ https://nmap.org/nsedoc/scripts/http-enum.html . [Ron, Andrew Orr,
+ Rob Nicholls]
+
+ + ssl-cert retrieves and prints a target server's SSL
+ certificate. See
+ https://nmap.org/nsedoc/scripts/ssl-cert.html . [David]
+
+ + x11-access checks whether access to an X11 server is allowed (as
+ with "xhost +" for example). See
+ https://nmap.org/nsedoc/scripts/x11-access.html . [jlanthea]
+
+ + db2-info enhances DB2 database instance detection. It provides
+ detection when version probes fail, but will default to the
+ version detection probe value if that is more precise. It also
+ detects the server platform and database instance name. The DB2
+ version detection port ranges were broadened to 50000-50025 and
+ 60000-60025 as well. [Tom]
+
+ + smbv2-enabled checks if the smbv2 protocol is enabled on target
+ servers. SMBv2 has already suffered from at least one major
+ security vulnerability. See
+ https://nmap.org/nsedoc/scripts/smbv2-enabled.html . [Ron]
+
+ + http-favicon obtains the favicon file (/favicon.ico or whatever is
+ specified by the HTML link tag) and tries to identify its source
+ (such as a certain web application) using a database lookup. See
+ https://nmap.org/nsedoc/scripts/http-favicon.html . [Vladz]
+
+ + http-date obtains the Date: header field value from an HTTP server
+ then displays it along with how much it differs from local
+ time. See https://nmap.org/nsedoc/scripts/http-date.html . [David]
+
+ + http-userdir-enum attempts to enumerate users on a system by
+ trying URLs with common usernames in the Apache mod_userdir format
+ (e.g. http://target-server.com/~john). See
+ https://nmap.org/nsedoc/scripts/http-userdir-enum.html . [Jah]
+
+ + pjl-ready-message allows viewing and setting the status message on
+ printers which support the Printer Job Language (many HP printers
+ do). See https://nmap.org/nsedoc/scripts/pjl-ready-message.html .
+ [Aaron Leininger]
+
+ + http-headers performs a GET request for the root folder ("/") of a
+ web server and displays the HTTP headers returned. See
+ https://nmap.org/nsedoc/scripts/http-headers.html . [Ron]
+
+ + http-malware-host is designed to discover hosts that are serving
+ malware (perhaps because they were compromised), but so far it
+ only checks for one specific attack. See
+ https://nmap.org/nsedoc/scripts/http-malware-host.html . [Ron]
+
+ + smb-enum-groups displays a list of groups on the remote system
+ along with their membership (like enum.exe -G). See
+ https://nmap.org/nsedoc/scripts/smb-enum-users.html [Ron]
+
+o Nmap's --traceroute has been rewritten for better performance.
+ Probes are sent in parallel to individual hosts, not just across all
+ hosts as before. Trace consolidation is more sophisticated, allowing
+ common traces to be identified sooner and fewer probes to be sent.
+ The older traceroute could be very slow (taking minutes per target)
+ if the target did not respond to the trace probes, and this new
+ traceroute avoids that. In a trace of 110 hosts in a /24 over the
+ Internet, the number of probes sent dropped 50% from 1565 to 743,
+ and the time taken dropped 92% from 95 seconds to 7.6
+ seconds. Traceroute now uses an ICMP echo request probe if no
+ working probes against the target were discovered during
+ scanning. [David]
+
+o [Zenmap] After performing or loading a scan, you can now filter
+ results to just the hosts you are interested in by pressing Ctrl+L
+ (or the "Filter Hosts" button) to open the host filtering interface.
+ This makes it easy to select just Linux hosts, or those running a
+ certain version of Apache, or whatever interests you. You can easily
+ modify the filter or remove it to see the whole scan again. See
+ https://nmap.org/book/zenmap-filter.html . [Josh Marlow]
+
+o For some UDP ports, Nmap will now send a protocol-specific payload
+ that is more likely to get a response than an empty packet is. This
+ improves the effectiveness of probes to those ports for host
+ discovery, and also makes an open port more likely to be classified
+ open rather than open|filtered. The ports and payloads are defined
+ in payload.cc. The ports that have a payload are 7 (echo),
+ 53 (domain), 111 (rpcbind), 123 (ntp), 137 (netbios-ns), 161 (snmp),
+ 177 (xdmcp), 500 (isakmp), 520 (route), 1645 and 1812 (radius),
+ 2049 (nfs), 5353 (zeroconf), and 10080 (amanda). [David]
+
+o Integrated 1,349 fingerprints (and 81 corrections) submitted by Nmap
+ users! They resulted in 342 new fingerprints (a 17% increase),
+ including Google's Android Linux system for smart phones, Mac OS X
+ 10.6 (Snow Leopard), the Chumby, and a slew number of printers, broadband
+ routers, and other devices (40 new vendors). See
+ http://seclists.org/nmap-dev/2009/q4/416 [David]
+
+o [NSE] For all the services which are commonly tunneled over SSL
+ (pop3, http, imap, irc, smtp, etc.), we audited the scripts to
+ ensure they can support that tunneling. The com.tryssl function
+ was added for easy SSL detection. See
+ https://nmap.org/nsedoc/lib/comm.html [Joao]
+
+o Nmap now prefers to display the hostname supplied by the user instead
+ of the reverse-DNS name in most places. If a reverse DNS record
+ exists, and it differs from the user-supplied name, it is printed
+ like this:
+ Nmap scan report for www.google.com (74.125.53.103)
+ rDNS record for 74.125.53.103: pw-in-f103.1e100.net
+ And in XML it looks like:
+ <hostnames>
+ <hostname name="openbsd.org" type="user"/>
+ <hostname name="cvs.openbsd.org" type="PTR"/>
+ </hostnames>
+ Host latency is now printed more often. See
+ http://seclists.org/nmap-dev/2009/q4/199 for a summary of other
+ output changes. [David]
+
+o Ndiff now shows changes in script (NSE) output for each target
+ host (in both text output format and XML). [David]
+
+o We now print output for down hosts, even when doing scanning beyond
+ just a ping scan. This always prints to XML and grepable output,
+ and is printed to normal and interactive output in verbose mode. The
+ format for printing a down host has changed slightly: "Nmap scan
+ report for 1.1.1.1 [host down]" [David]
+
+o [NSE] Default socket parallelism has been doubled from 10 to 20,
+ which doubles speed in some situations. See
+ http://seclists.org/nmap-dev/2009/q3/161. [Patrick]
+
+o Version detection's maximum socket concurrency has been increased
+ from 10-20 based on timing level to 20-40. This can dramatically
+ speed up version detection when there are many open ports in a host
+ group being scanned. [Fyodor]
+
+o The Nmap source tarball (and RPMs) now included man page
+ translations (16 languages so far). Nmap always installs the English
+ man page, and installs the translations by default. If you only want
+ some of the translations, set the LINGUAS environmental variable to
+ the language codes you are interested in (e.g. "es de"). You can
+ specify the configure option --disable-nls or set LINGUAS to the
+ empty string to avoid installation of any man page translations. The
+ RPM always installs them. [David]
+
+o [NSE] Added a function for scripts to format their output in a
+ consistent way. See
+ https://nmap.org/nsedoc/lib/stdnse.html#format_output. [Ron]
+
+o [NSE] Now supports worker threads so that a single script can
+ perform multiple network operations concurrently. This patch also
+ includes condition variables for synchronization. See
+ https://nmap.org/nsedoc/lib/stdnse.html#new_thread,
+ https://nmap.org/nsedoc/lib/nmap.html#condvar, and
+ http://seclists.org/nmap-dev/2009/q4/294.
+
+o Fixed a problem in which the Nmap installer wrongly reported that
+ the Microsoft Visual C++ 2008 Redistributable Package (vcredist.exe)
+ failed to install. We had to update a registry key--see
+ http://seclists.org/nmap-dev/2009/q3/164. [Jah]
+
+o Added support for connecting to nameservers over IPv6. IPv6 addresses
+ can be used in /etc/resolv.conf or with the --dns-servers option. The
+ parallel reverse DNS resolver still only support IPv4 addresses, but
+ it can look them up over IPv6. [Ankur Nandwani]
+
+o Zenmap now includes ports in the services view whenever Nmap found
+ them "interesting," whatever their state. Previously they were only
+ included if the state was "open", "filtered", or "open|filtered",
+ which led to confusing behavior when a closed port showed up in the
+ Services column but clicking on the service showed no ports in the
+ display. [David]
+
+o [Ncat] Now has configure-time ASCII art just like Nmap does:
+ . .
+ \`-"'"-'/
+ } 6 6 {
+ ==. Y ,==
+ /^^^\ .
+ / \ ) Ncat: A modern interpretation of classic Netcat
+ ( )-( )/
+ -""---""--- /
+ / Ncat \_/
+ ( ____
+ \_.=|____E
+
+o [NSE] Added HTTP pipelining support to the HTTP library and and to
+ the http-enum, http-userdir-enum, and sql-injection.nse
+ scripts. Pipelining can increase speed dramatically for scripts
+ which make many requests.
+
+o [NSE] The HTTP library now caches responses from http.get or
+ http.head so that resources aren't requested multiple times during
+ the same Nmap run even if several scripts request them. See
+ http://seclists.org/nmap-dev/2009/q3/733. [Patrick]
+
+o [Ncat, Ndiff] The exit codes of these programs now reflect whether
+ they succeeded. For Ncat, 0 means the connection was successful, 1
+ indicates a network error, and 2 indicates any other error. For
+ Ndiff, 0 means the scans were equal, 1 means they were different,
+ and 2 indicates a runtime error. [David]
+
+o [Ncat] In verbose mode, Ncat now prints the number of bytes read and
+ written after the client connection is terminated. Ncat also now
+ prints elapsed time. For example, "Ncat finished: 16 bytes sent, 566
+ bytes received in 8.05 seconds." [Venkat]
+
+o [NSE] telnet-brute.nse now uses the unpw database instead of a
+ hard coded list. [Ron]
+
+o [NSE] ssl-cert.nse now supports TLS negotiation against SMTP ports
+ that support it. [Tom Sellers, David]
+
+o [NSE] Scripts that are listed by name with the --script option now
+ have their verbosity level automatically increased by one. Many
+ will print negative results ("no infection found") at a higher
+ verbosity level. The idea is that if you ask for a script
+ specifically, you are more interested in such results.
+ [David, Patrick]
+
+o Upgraded our Winpcap installer to use the new WinPcap version 4.1.1.
+ A bug which could prevent proper uninstallation of previous versions
+ was fixed at the same time. Later we made it set some registry keys
+ for compatibility with the official Winpcap project installer (see
+ http://seclists.org/nmap-dev/2009/q4/237). [Rob Nicholls]
+
+o [Ncat] Ncat now prints a message like "Connection refused." by
+ default when a socket error occurs. This used to require -v, but
+ printing no message at all could make a failed connection look like
+ success in a case like
+ ncat remote < short-file
+
+o Zenmap no longer displays down hosts in the GUI. [Josh]
+
+o The Ndiff man page was dramatically improved with examples and
+ sample output. See https://nmap.org/book/ndiff-man.html .
+ [David]
+
+o [NSE] At debug level 2 or higher (-d2), Nmap now prints all active
+ scripts (running & waiting) and a backtrace whenever a key is
+ pressed. This can be quite helpful in debugging deadlocks and other
+ script/NSE problems. [Patrick]
+
+o Nmap now allows you to specify --data-length 0, and that is now the
+ documented way to disable the new UDP protocol-specific probe
+ payload feature. [David]
+
+o Fixed compilation of our libdnet on Debian GNU/kFreeBSD (patch from
+ Petr Salinger).
+
+o Our Windows packages are now built on Windows 7, though they are
+ 32-bit binaries and should continue to work on Win2K and later.
+
+o Fixed a bug that could cause an infinite loop ("Unable to find
+ listening socket in get_rpc_results") in RPC scan. The loop would
+ happen when scanning a port that sent no responses, and there was at
+ least one other port to scan. Thanks to Lionel Cons for reporting
+ the problem. [David]
+
+o [NSE] The dns-zone-transfer and whois script argument table syntax has been
+ improved so you don't need curly braces.
+
+o [NSE] smb-enum-shares.nse now checks whether or not a share is
+ writable by attempting to write a file (and deleting it if it's
+ successful). Significantly cleaned up the code, as well. [Ron]
+
+o The nselib/data directory is now installed. It was not installed
+ before because of an error in the Makefile. The scripts that would
+ not have worked after installation because they were missing data
+ files are http-enum.nse, http-favicon.nse, http-iis-webdav-vuln.nse,
+ http-userdir-enum.nse, smb-pwdump.nse, pop3-brute.nse,
+ smb-brute.nse, and snmp-brute.nse. [David]
+
+o Upgraded the included libpcap to 1.0.0. [David]
+
+o Optimize MAC address prefix lookup by using an std::map rather than
+ a custom hash table. This increases performance and code simplicity
+ at the cost of some extra memory consumption. In one test, this
+ reduced the time of a single target ARP ping scan from 0.59 seconds
+ to 0.13. [David]
+
+o Added -Pn and -sn as aliases for -PN and -sP, respectively. They
+ will eventually become the recommended and documented way to disable
+ host discovery (ping scanning) and port scanning. They are more
+ consistent and also match the existing -n option for disabling
+ reverse DNS resolution. [David]
+
+o Fixed an error in the handling of exclude groups that used IPv4
+ ranges. Si Stransky reported the problem and provided a number of
+ useful test cases in http://seclists.org/nmap-dev/2009/q4/276. The
+ error caused various assertion failures along the lines of
+ TargetGroup.cc:465: int
+ TargetGroup::get_next_host(sockaddr_storage*, size_t*):
+ Assertion `ipsleft > 1' failed.
+ [David]
+
+o [NSE] Improved the authentication used by the smb-* scripts. Instead of
+ looking in a bunch of places (registry, command-line, etc) for the
+ usernames/passwords, a table is kept. This lets us store any number
+ of accounts for later use, and remove them if they stop working. This
+ also fixes a bug where typing in a password incorrectly would lock
+ out an account (since it wouldn't stop trying the account in question).
+ [Ron]
+
+o Removed IP ID matching in packet headers returned in ICMP errors.
+ This was already the case for some operating systems that are known
+ to mangle the IDs of sent IP packets. Requiring such a match could
+ occasionally cause valid replies to be ignored. See
+ http://seclists.org/nmap-dev/2009/q2/580 for an example of host
+ order affecting scan results due to this phenomenon. [David]
+
+o [NSE] The HTTP library now handles chunked transfer decoding more
+ robustly. See http://seclists.org/nmap-dev/2009/q3/13 [David]
+
+o [NSE] Unexpected error messages from scripts now include the target
+ host and port number. [David]
+
+o [NSE] Fixed many libraries which were inappropriately using global
+ variables, meaning that multiple scripts running concurrently could
+ overwrite each others values. NSE now automatically checks for this
+ problem at runtime, and we have a static code checker
+ (check_globals) available as well. See this whole thread
+ http://seclists.org/nmap-dev/2009/q3/70. [Patrick]
+
+o Added some additional matching rules to keep a reply to a SYN probe
+ from matching an ACK probe to the same port, or vice versa, in ping
+ scans that include both scan types. Such a mismatch could cause an
+ ineffective timing ping or traceroute probe to be selected. [David]
+
+o [Zenmap] There is a new command-line option, --confdir, which sets
+ the per-user configuration directory. Its value defaults to
+ $HOME/.zenmap. This was suggested by Jesse McCoppin. [David]
+
+o Open bpf devices in read/write mode, not read-only, in libdnet on
+ BSD. This is to work around a bug in Mac OS X 10.6 that causes
+ incoming traffic to become invisible. [David]
+
+o "make install" now removes from the Nmap script directory some
+ scripts which only existed in previous versions of Nmap but weren't
+ deleted during upgrades. [David]
+
+o [NSE] Added the reconnect_ssl method for sockets. We sometimes need
+ to reconnect a socket with SSL because the initial communication on
+ the socket is done without SSL. See this thread for more details:
+ http://seclists.org/nmap-dev/2009/q4/3 [Patrick, Tom Sellers]
+
+o [Zenmap] Fixed a crash that could occur when entering certain
+ characters in the target entry (those whose UTF-8 encoding contains
+ a byte that counts as whitespace in the Windows locale):
+ File "zenmapGUI\ScanNotebook.pyo", line 184, in _target_entry_changed
+ File "zenmapCore\NmapOptions.pyo", line 719, in render_string
+ UnicodeDecodeError: 'utf8' codec can't decode byte 0xc3 in position 1:
+ unexpected end of data
+ For more details on this curious problem, see
+ http://seclists.org/nmap-dev/2009/q4/82 [David]
+
+o [NSE] There is a new function, nmap.bind, to set the source address
+ of a socket. [David]
+
+o [Nsock] Made it a fatal error instead of silent memory corruption
+ when an attempt is made to use a file descriptor whose number is not
+ less than FD_SETSIZE. This applies only on non-Windows platforms
+ where FD_SETSIZE is a limit on the value of file descriptors as well
+ as a limit on the number of descriptors in the set. The error will
+ look like
+ nsock_core.c:186: Attempt to FD_SET fd 1024, which is not less
+ than FD_SETSIZE (1024). Try using a lower parallelism.
+ Thanks to Brandon Enright for discovering the problem and much help
+ debugging it, and to Jay Fink for submitting an initial patch. [David]
+
+o [Ncat] Fixed proxy connections in connect mode on Windows. Because
+ the dup function does not work on Windows, an assertion failure
+ would be raised reading
+ (fh >= 0 && (unsigned)fd < (unsigned)_nhandle)
+ [David]
+
+o [Ncat] Fixed the combination of --max-conns and --exec on Windows.
+ The count of connected clients was not decreased when the program
+ spawned by --exec finished. With --max-conns 5, for example, no more
+ connections would be allowed after the fifth, even if some of the
+ earlier ones had ended. Jon Greaves reported the problem and Venkat
+ contributed a patch.
+
+o [Ncat] The code that manages the count of connected clients has been
+ made robust with respect to signals. The code was contributed by
+ Solar Designer.
+
+o The files read by the -iL (input from file) and --excludefile
+ options now support comments that start with # and go to the end of
+ the line. [Tom Sellers]
+
+o [Zenmap] On Windows, Zenmap no longer uses the cmd.exe shell to run
+ Nmap sub-processes. This means that canceling a scan will kill the
+ Nmap process as it does on other platforms (previously it would just
+ kill the shell). It also means that that scanning will work as a
+ user whose name contains characters like '&' that are significant to
+ the shell. Mike Crawford and Nick Marsh reported bugs related to
+ this. [David]
+
+o [NSE] All scripts (except for those in "version" or "demo"
+ categories) are now classified in either the "safe" or "intrusive"
+ categories, based on how likely they are to cause problems when run
+ against other machines on the network. Those classifications already
+ existed, but weren't used consistently. [Fyodor]
+
+o Added a check for a SMBv2 vulnerability (CVE-2009-3103) to
+ smb-check-vulns. Due to its nature (it performs a DoS, then checks
+ if the system is still online), the script isn't run by default and
+ requires a special script-arg to work. [Ron]
+
+o Fixed an integer overflow in uptime calculation which could occur
+ when a target with a low TCP timestamp clock frequency uses large
+ timestamp values, such that a naive uptime calculation shows a boot
+ time before the epoch. Also fixed a printf format specifier mismatch
+ that was revealed by the bug. Toby Simmons reported the problem and
+ helped with the fix. [David]
+
+o [NSE] The HTTP library now supports HTTP cookies. [Joao Correa]
+
+o Fixed a compile error on NetBSD. It was
+ tcpip.cc:2948: error: pointer of type 'void *' used in arithmetic
+ Thanks to Jay Fink for reporting the problem and submitting a patch.
+
+o [Zenmap] If you have any hosts or services selected, they will
+ remain selected after aggregating another scan or running a filter
+ (as long as they are still up and visible). Previously the selection
+ was lost whenever the scan inventory was changed. This is
+ particularly important due to the new host filter system. [David]
+
+o [Zenmap] New translation: Russian (contributed by Alexander Khodyrev).
+ Updated translations: French and German.
+
+o Nmap now generates IP addresses without duplicates (until you cycle
+ through all the allowed IPs) thanks to a new collision-free 32-bit
+ number generator in nbase_rnd.c. See
+ http://seclists.org/nmap-dev/2009/q3/695 [Brandon]
+
+o There is a new OS detection pseudo-test, SCAN.DC, which records how
+ the network distance in SCAN.DS was calculated. Its value can be "L"
+ for localhost, "D" for a direct connection, "I" for an ICMP TTL
+ calculation, and "T" for a traceroute hop count. This is mainly for
+ the benefit of OS integration, when it is sometimes important to
+ distinguish between DS=1%DC=I (probably the result of forged TTLs)
+ and DS=1%DC=D (a true one-hop connection.) [David]
+
+o Canonicalized the list of OS detection device types to a smaller set
+ with descriptions: https://svn.nmap.org/nmap/docs/device-types.txt .
+ [David, Fyodor, Doug]
+
+o [Ncat] The --idle-timeout option now exits when *both* stdin and the
+ socket have been idle for the given time. Previously it would exit
+ when *either* of them had been idle, meaning that the program would
+ quit contrary to your expectation when downloading a large file
+ without sending anything, for example. [David]
+
+o [Ncat] Ncat now always prefixes its own output messages with "Ncat: "
+ or "NCAT DEBUG: " to make it clear that they are not coming from the
+ remote host. This only matters when output goes to a terminal, where
+ the standard output and standard error streams are mixed. [David]
+
+o Nmap's Nbase library now has a new hexdump() function which produces
+ output similar to Wireshark. nmap_hexdump() is a wrapper which
+ prints the output using Nmap's log_write facility. The old hdump()
+ and lamont_dump() functions have been removed. [Luis]
+
+o Added explicit casts to (int)(unsigned char) for arguments to ctype function
+ calls in nmap, ncat and nbase. Thanks to Solar Designer for pointing out
+ the need and fix for this. [Josh]
+
+o Ncat now supports wildcard SSL certificates. The wildcard character
+ (*) can be in commonname field or in DNS field of Subject
+ Alternative Name (SAN) Extension of SSL certificate. Matching Rules:
+ - '*' should be only on the leftmost component of FQDN. (*.example.com
+ but not www.*.com or www.example*.com).
+ - The leftmost component should contain only '*' and it should be
+ followed by '.' (*.example.com but not *w.example.com or
+ w*.example.com).
+ - There should be at least three components in FQDN. (*.example.com but
+ not *.com or *.com.). [venkat]
+
+o Nmap now handles the case when a primary network interface (venet0)
+ does not have an address assigned but its aliases do (venet0:1
+ etc.). This could result in the error messages
+ Failed to find device venet0 which was referenced in /proc/net/route
+ Failed to lookup subnet/netmask for device (venet0): venet0: no IPv4 address assigned
+ This was observed under OpenVZ. [Dmitry Levin]
+
+o [Ncat] The --ssl-cert, --ssl-key, and --ssl-trustfile options now
+ automatically turn on SSL mode. Previously they were ignored if
+ --ssl was not also used. [David]
+
+o [Nsock] Now Nsock supports pure TLSv1 and SSLv3 servers in addition
+ to the (already supported and far more common) SSLv2 and SSLv23
+ servers. Ncat currently never uses SSLv2 for security reasons, so
+ it is unaffected by this change.
+
+o [Ncat] Implemented basic SCTP client functionality (server already
+ exists). Only the default SCTP stream is used. This is also called
+ TCP compatible mode. While it allows Ncat to be used for manually
+ probing open SCTP ports, more complicated services making use of
+ multiple streams or depending on specific message boundaries cannot
+ be talked to successfully. [Daniel Roethlisberger]
+
+o [Ncat] Implemented SSL over SCTP in both client (connect) and server
+ (listen) modes. [Daniel Roethlisberger]
+
+o Nmap now filters received ARP packets based on their target address
+ address field, not the destination address in the enclosing ethernet
+ frame. Some operating systems, including Windows 7 and Solaris 10,
+ are known to at least sometimes send their ARP replies to the
+ broadcast address and Nmap wouldn't notice them. The symptom of this
+ was that root scans wouldn't work ("Host seems down") but non-root
+ scans would work. Thanks to Mike Calmus and Vijay Sankar for
+ reporting the problem, and Marcus Haebler for suggesting the
+ fix. [David]
+
+o The -fno-strict-aliasing option is now used unconditionally when
+ using GCC. It was already this way, in effect, because a test
+ against the GCC version number was reversed: <= 4 rather than >= 4.
+ Solar Designer reported the problem.
+
+o Nmap now prints a warning instead of a fatal error when the hardware
+ address of an interface can't be found. This is the case for
+ FireWire interfaces, which have a hardware address format not
+ supported by libdnet. Thanks to Julian Berdych for the bug report.
+ [David]
+
+o Zenmap's UI performance has improved significantly thanks to
+ optimization of the update_ui() function. In particular, this speeds
+ up the new host filter system. [Josh]
+
+o Add a service probe for DNS-based service discovery (DNS-SD). See
+ http://seclists.org/nmap-dev/2009/q3/0610.html . [David]
+
+o Made RPC grinding work from service detection again by changing the
+ looked-for service name from "rpc" to "rpcbind", the name it has in
+ nmap-service-probes. Also removed some dead code. [David]
+
+o Fixed a log_write call and a pfatal call to use a syntax which is
+ safer from format strings bugs. This allows Nmap to build with the
+ gcc -Wformat -Werror=format-security options. [Guillaume Rousse,
+ Dmitry Levin]
+
+o A bug in Nsock was fixed: On systems where a non-blocking connect
+ could succeed immediately, connections that were requested to be
+ tunneled through SSL would actually be plain text. This could be
+ verified with an Ncat client and server running on localhost. This
+ was observed to happen with localhost connections on FreeBSD 7.2.
+ Non-localhost connections were likely not affected. The bug was
+ reported by Daniel Roethlisberger. [David]
+
+o Ncat proxy now hides the proxy's response ("HTTP/1.0 200 OK" or
+ whatever it may be). Before, if you retrieved a file through a
+ proxy, it would have the "HTTP/1.0 200 OK" stuck to the top of
+ it. For this Ncat uses blocking sockets until the proxy negotiation
+ is done and once it is successful, Nsock takes over for rest of the
+ connection.[Venkat]
+
+o [NSE] socket garbage collection was rewritten for better performance
+ and to ensure that socket slots are immediately available to others
+ after a socket is closed. See
+ http://seclists.org/nmap-dev/2009/q2/0624.html . [Patrick]
+
+o [NSE] Fixed a rare but possible segfault which could occur if the
+ nsock binding attempted to push values on the stack of a thread
+ which had already ended due to an error, and if that internal Lua
+ stack was already completely full. This bug is very hard to
+ reproduce with a SEGFAULT but is usually visible when Lua assertion
+ checks are turned on. A socket handler routine must be called AFTER
+ a thread has ended in error. [Patrick]
+
+o [Ncat] Fixed an error that would cause Ncat to use 100% CPU in
+ broker mode after a client disconnected or a read error happened.
+ [Kris, David]
+
+o [NSE] --script-args may now have whitespace in unquoted strings (but
+ surrounding whitespace is ignored). For example,
+ --script-args 'greeting = This is a greeting' Becomes:
+ { ["greeting"] = "This is a greeting" } [Patrick]
+
+o [Ncat] Using --send-only in conjunction with the plain listen or
+ broker modes now behaves as it should: nothing will be read from the
+ network end. Ncat previously read and discarded any data
+ received. [Kris]
+
+o [Nsock] Added a socket_count abstraction that counts the number of
+ read or write events pending on a socket, for the purpose of
+ maintaining an fd_set. The bit is set in the fd_set whenever the
+ count is positive, and cleared when it is zero. The reason for doing
+ this was that write bits were not being properly cleared when using
+ Ncat with SSL in connect mode, such that a client send would cause
+ Ncat to use 100% CPU until it received something from the
+ server. See the thread at
+ http://seclists.org/nmap-dev/2009/q2/0413.html . This change will
+ also make it easier to use a different back end than select in the
+ future. [David]
+
+o [Nsock] Added compilation dependency generation (makefile.dep)
+ [David]
+
+o [Ncat] The --broker option now automatically implies --listen. [David]
+
+o Fixed a logic error in getinterfaces_siocgifconf. The check for
+ increasing the capacity of the list of interfaces was off by
+ one. This caused a crash on initialization for systems with more
+ than 16 network interfaces. [David]
+
+o Added Apache JServe protocol version detection probe and signatures
+ and some some other nmap-service-probes patches. [Tom Sellers]
+
+o Fixed two memory leaks in ncat_posix.c and a bug where an open file was not
+ being closed in libdnet-stripped/src/intf.c [Josh Marlow]
+
+o [Zenmap] Added profile editor support for the Nmap SCTP options:
+ -PY, -sY and -sZ. [Josh Marlow]
+
+o Fixed a bug in --data-length parsing which in some cases could
+ result in useless buffer allocations and unpredictable payload
+ lengths. See http://seclists.org/nmap-dev/2009/q2/0763.html [Luis]
+
+o The configure script now allows cross-compiling by assuming that
+ libpcap is recent enough to use rather than trying to compile and
+ run a test program. Libpcap will always be recent enough when Nmap's
+ included copy is used. [Mike Frysinger]
+
+o Updated the IANA assignment IP list for random IP (-iR)
+ generation. The Mac OS prefix file was updated as
+ well. [Kris, Fyodor]
+
+o [Zenmap] Fix a bug which could cause a crash in the (very rare) case
+ where Nmap would produce port tags in XML output without a state
+ attribute. [David]
+
+o Added a convenience top-level BSDmakefile which automatically
+ redirects BSD make to GNU make on BSD systems. The Nmap Makefile
+ relies on numerous GNU Make extensions. [Daniel Roethlisberger]
+
+Nmap 5.00 [2009-07-16]
+
+o Bumped up version number to 5.00!
+
+o [NSE] http-open-proxy script fixed to avoid false positives from bad
+ pattern matching and to properly declare some formerly-global
+ variables as local. [Joao]
+
+Nmap 4.90RC1 [2009-06-25]
+
+o [Zenmap] Fixed a display hanging problem on Mac OS X reported by
+ Christopher Caldwell at
+ http://seclists.org/nmap-dev/2009/q2/0721.html . This was done by
+ adding gtk2 back to macports-1.8.0-universal.diff and removing the
+ dependency on shared-mime-info so it doesn't expect /usr/share/mime
+ files at runtime. Also included GDK pixbuf loaders statically rather
+ than as external loadable modules. [David]
+
+o Fixed a memory bug (access of freed memory) when loading exclude
+ targets with --exclude. This was reported to occasionally cause a
+ crash. Will Cladek reported the bug and contributed an initial
+ patch. [David]
+
+o Zenmap application icons were regenerated using the newer SVG
+ representation of the Nmap eye. [David]
+
+Nmap 4.85BETA10 [2009-06-12]
+
+o The host discovery (ping probe) defaults have been enhanced to
+ include twice as many probes. The default is now "-PE -PS443 -PA80
+ -PP". In exhaustive testing of 90 different probes, this emerged as
+ the best four-probe combination, finding 14% more Internet hosts
+ than the previous default, "-PE -PA80". The default for non-root
+ users is -PS80,443, replacing the previous default of -PS80. In
+ addition, ping probes are now sent in order of effectiveness (-PE
+ first) so that less effective probes may not have to be sent. ARP
+ ping is still the default on local ethernet networks. [David,
+ Fyodor]
+
+o Added SCTP port scanning support to Nmap. SCTP is a layer 4 protocol
+ used mostly for telephony related applications. This brings the
+ following new features:
+ - SCTP INIT chunk port scan (-sY): open ports return an INIT-ACK
+ chunk, closed ones an ABORT chunk. This is the SCTP equivalent
+ of a TCP SYN stealth scan.
+ - SCTP COOKIE-ECHO chunk port scan (-sZ): open ports are silent,
+ closed ports return an ABORT chunk.
+ - SCTP INIT chunk ping probes (-PY): host discovery using SCTP
+ INIT chunk packets.
+ - SCTP-specific IP protocol scan (-sO -p sctp).
+ - SCTP-specific traceroute support (--traceroute).
+ - The ability to use the deprecated Adler32 algorithm as specified
+ in RFC 2960 instead of CRC32C from RFC 4960 (--adler32).
+ - 42 well-known SCTP ports were added to the nmap-services file.
+ - The server scanme.csnc.ch has been set up for your SCTP scan
+ testing pleasure. But note that SCTP doesn't pass through most
+ NAT devices. See http://seclists.org/nmap-dev/2009/q2/0669.html .
+ Part of the work on SCTP support was kindly sponsored by
+ Compass Security AG, Switzerland. [Daniel Roethlisberger]
+
+o [NSE] Added http-iis-webdav-vuln.nse, which detects the recently
+ discovered WebDAV unicode bug in MS IIS 5.1/6.0 web server which can
+ allow arbitrary users to access password protected folders without
+ authentication. See
+ https://nmap.org/svn/scripts/http-iis-webdav-vuln.nse. [Ron]
+
+o The Nmap Reference Guide has been translated to German by Open
+ Source Press and Indonesian by Tedi Heriyanto. You can now read it
+ in 16 languages at https://nmap.org/docs.html . We're always looking
+ for more translations of Nmap and its documentation--if you'd like
+ to help, see http://seclists.org/nmap-dev/2009/q2/0667.html .
+
+o Open Source Press completed and released the German translation of
+ the official Nmap book (Nmap Network Scanning). Learn more at
+ https://nmap.org/book/#translations.
+
+o [NSE] Added socks-open-proxy.nse for scanning networks for open
+ SOCKS proxy servers. See
+ https://nmap.org/nsedoc/scripts/socks-open-proxy.html . [Joao Correa]
+
+o [NSE] http-open-proxy.nse has been updated to attempt HEAD and
+ CONNECT methods as well as previously supported GET method. It
+ still tries to reach http://www.google.com through the proxy by
+ default, but now also offers an argument for specifying a different
+ URL. [Joao Correa]
+
+o [Ncat] There is a backwards-incompatible change in the way that
+ listen mode works. The new default behavior is to accept only one
+ connection, and quit when the connection ends. This was necessary to
+ prevent data loss in some situations; some programs require Ncat to
+ send an EOF before they flush their internal buffers and finish
+ processing the last bit of data. See
+ http://seclists.org/nmap-dev/2009/q2/0528.html for more information.
+ Use the new -k or --keep-open option to get the old behavior, in
+ which Ncat will accept multiple simultaneous connection, combine all
+ their input, and accept more connections after a disconnection.
+ [Daniel Roethlisberger, David]
+
+o Ncat handling of newlines on Windows has been improved. CRLF is
+ automatically converted to a bare LF when input is from the console,
+ but left untouched when it is from a pipe or a file. No newline
+ translation is done on output (where it was being done before). This
+ makes it possible to transfer binary files with Ncat on Windows
+ without any corruption, while still being able to interactively ncat
+ into UNIX shells and other processes which require bare
+ newlines. Ncat clients now work the same way on UNIX and Windows in
+ that respect. For cases where you do want \r\n line endings (such
+ as connections to web and email servers or Windows cmd.exe shells),
+ specify -C whether your client is running on UNIX or
+ Windows. [David]
+
+o Nmap RPM packages (x86 and x86-64) are now built with OpenSSL
+ support (statically linked in to avoid dependencies). They are also
+ now built on CentOS 5.3 for compatibility with RHEL, Fedora, and
+ other distributions. Please let us know if you discover any
+ compatibility problems (or other issues) with the new RPMs. [Fyodor]
+
+o [Zenmap] The Topology tab now has a "Save Graphic" button that
+ allows saving the current topology display as a PNG, postscript,
+ PDF, and SVG image. [Joao Medeiros, David]
+
+o Changed the default UDP ping (-PU) port from 31338 to 40125. This
+ appears to be a better port based on David's empirical testing.
+
+o [NSE] Added the imap-capabilities script, which uses the CAPABILITY
+ command to determine the capabilities of a target IMAP mail server.
+ A simple supporting IMAP library was added as well. See
+ https://nmap.org/nsedoc/scripts/imap-capabilities.html . [Brandon]
+
+o [NSE] Brandon Enright from UCSD reports that, thanks to all the NSE
+ fixes in this release, he no longer sees any Nmap crashes in his
+ large scale scans. See
+ http://seclists.org/nmap-dev/2009/q2/0639.html .
+
+o Zenmap now works on RHEL/CentOS since it no longer requires the
+ hashlib library (which was introduced in Python 2.5, but RHEL 5
+ still uses 2.4) and removing the pysqlite2 requirement (RHEL does
+ not offer that module). It is still desirable to have pysqlite2
+ when available, since it enables Zenmap searching and database
+ saving features. [David]
+
+o Ncat can now send SSL certificates in connect mode for client
+ authentication by using the --ssl-cert and --ssl-key options. The
+ specified certificates are only sent when requested by the
+ server. [Venkat]
+
+o Nmap can now handle -PS and -PA at the same time when running nmap
+ as non-root or using IPv6. It now combines the two port lists [Josh
+ Marlow]
+
+o [Ncat] SSL in listen mode now works on systems like BSD in which a
+ socket inherits its blocking or non-blocking status from the
+ listening socket. [David, Daniel Roethlisberger]
+
+o The --packet-trace/--version-trace options now shows the names of
+ version detection probes as they are sent, making the version
+ detection process easier to understand and debug. [Tom Sellers]
+
+o The GPG detached signatures for Nmap releases now use the more
+ standard .asc extension rather than .gpg.txt. They can still be
+ found at https://nmap.org/dist/sigs/ and the .gpg.txt versions for
+ previous releases are still available for compatibility reasons. For
+ instructions on verifying Nmap package integrity, see
+ https://nmap.org/book/install.html#inst-integrity. [Fyodor]
+
+o [Zenmap] Fixed two bugs: 1) When two scans are performed in Zenmap
+ and aggregated, the first one was being modified in the process,
+ preventing you from doing diffs in the "compare scans" dialogue or
+ properly saving the first scan individually. 2) If you start two
+ scans, then the faster one finishes and you cancel and remove the
+ slower one while still in progress, much of the results from both
+ scans are lost. [Josh Marlow]
+
+o [Ncat] When connecting to an SSL service in verbose mode, Ncat now
+ prints confirmation of the SSL connection, some certificate
+ information, and a cert fingerprint. For example:
+ SSL connection to 64.147.188.3:443. Electronic Frontier Foundation
+ SHA-1 fingerprint: 28BE B476 2E49 7ED5 3A9B 4D79 AD1E 69A9 82DB C75A
+
+o [NSE] Clean up output (generally reducing default verbosity) for the
+ p2p-conficker, smb-check-vulns, and http-iis-webdav-vuln scripts. In
+ general, we don't ask scripts to report that a host is clean unless
+ Nmap's verbosity level (-v) is at least one or two. [Ron, Fyodor]
+
+o [Zenmap] Added the -PS22,25,80 option found in the Quick Traceroute
+ profile to some of the Intense scan profiles for improved host
+ discovery. [Josh Marlow]
+
+o Fixed a bug with the --defeat-rst-ratelimit option which prevented
+ it from working properly. See this thread:
+ http://seclists.org/nmap-dev/2009/q2/0476.html . [Josh]
+
+o [Ndiff] Avoid printing a "Not shown:" line if there weren't any
+ ports in the non-shown (extraports) list. [David]
+
+o [Ncat] Fixed Ncat compilation with versions of OpenSSL before 0.9.7.
+ Previously it would fail in ncat_openssl.c with the message
+ "structure has no member named `it'". The problem was reported by
+ Jaroslav Fojtik. [David]
+
+o [NSE] Removed the packet.hextobin(str) and packet.bintohex(str)
+ functions. They are redundant since you get the same functionality
+ by calling bin.pack("H", str) and bin.unpack("H", str),
+ respectively. [Patrick]
+
+o [NSE] Fixed the parsing of --script-args, which was only accepting
+ alphanumeric characters and underscores in values. Now a key, value,
+ or array value may be a sequence of any characters except '{', '}',
+ ',', '=', and all space characters. You may overcome this
+ restriction by using quotes (single or double) to allow all
+ characters within the quotation marks. You may also use the quote
+ delimiter inside the sequence so long as it is escaped by a
+ backslash. See
+ http://seclists.org/nmap-dev/2009/q2/0211.html . [Patrick]
+
+o [NSE] When a script ends for any reason, all of its mutexes are now
+ unlocked. This prevents a permanent (and painful to debug) deadlock
+ when a script crashes without unlocking a mutex. See
+ http://seclists.org/nmap-dev/2009/q2/0533.html . [Patrick]
+
+o Fixed a bug wherein nmap would not display the post-scan count of
+ raw packets sent during a SYN ping scan (-sP -PS). [Josh Marlow]
+
+o Changed the ICMP ping probes to use a random non-zero ICMP id.
+ David's empirical testing found that some hosts drop probes when the
+ ICMP id is 0 [Josh Marlow]
+
+o [NSE] Fixed a --script argument processing bug in which Nmap would
+ abort when an expression matches a set of scripts which were loaded
+ by other expressions first (a simple example is "--script
+ default,DEFAULT". [Patrick]
+
+o [Zenmap] Operating system icons are now always loaded as PNGs, even on
+ platforms which support SVG images. That is much faster, and Zenmap
+ currently never scales the images anyway. [Josh]
+
+o [Ncat] The Nmap Windows uninstaller now removes the Ncat CA list
+ (ca-bundle.crt) which has been installed since 4.85BETA9. [Jah]
+
+o Optimized some Nmap version detection match lines for slightly
+ better performance. See
+ http://seclists.org/nmap-dev/2009/q2/0328.html . [Brandon]
+
+o [NSE] Upon connection failure, a socket now immediately unlocks its
+ "socket lock" to allow other pending socket connections to succeed
+ sooner. This slightly improves scan speeds by eliminating the wait
+ for garbage collection to free the resource. [Patrick]
+
+o [NSE] Corrected a bug in nse_nsock.cc that could result in a crash
+ from the use of an invalid Lua state if a thread is collected due to
+ timeout or other rare reasons. Essentially, the callbacks from the
+ nsock library were returning to an already-collected Lua state. We
+ now maintain a reference to the Lua State Thread in the nsock
+ userdata environment table to prevent early collection. This is a
+ temporary patch for the stable release pending a more detailed
+ review of the NSE nsock library binding. [Patrick]
+
+o [NSE] When an NSE script in the database (script.db) is requested
+ but not found on the filesystem, Nmap now prints a warning rather
+ than aborting. We accidentally shipped with such a phantom script
+ (smb-check-vulns-2.nse) in 4.85BETA8. [Patrick]
+
+o Fixed a bug where an ICMP echo, timestamp, or address mask reply
+ could be matched up with the wrong ICMP probe if more than one ICMP
+ probe type was being sent (as with the new default ping). This lead
+ to timing calculation problems. [David]
+
+o Improved the host expression parser to better handle a few cases
+ where invalid target specifiers would case Nmap to scan unintended
+ hosts. See http://seclists.org/nmap-dev/2009/q2/0319.html . [Jah]
+
+o [Zenmap] Fixed a crash, introduced in 4.85BETA4, that happened when
+ searching scan results by date. [David]
+ The error message was: File "zenmapGUI\SearchGUI.pyo", line 816, in
+ set_date TypeError: argument must be sequence of length 9, not 3
+
+o Patched configure.ac to detect Lua include and library files in
+ "lua5.1" subdirectories of /usr/include and the like. Debian
+ apparently puts them there. We still check the likes of
+ /usr/include/lua.h and /usr/include/lua/lua.h as well. [Jan
+ Christoph Nordholz]
+
+o Improved nsock's fselect() to be a more complete replacement for
+ select() on the Windows platform. In particularly, any or all of the
+ FD sets can be null or empty descriptor sets. This fixes an error
+ ("nsock_loop error 10022") which would occur when you ran ncat
+ --send-only on Windows. [David]
+
+o The --with-openssl= directive now works for specifying the SSL
+ location to the nsock library. It was previously not passing the
+ proper include file path to the compiler. [Fyodor]
+
+o The --traceroute feature is now properly disabled for IPv6 ping
+ scans (-6 -sP) since IPv6 traceroute is not currently
+ supported. [Jah]
+
+o Fixed an assertion failure which could occur on at least SPARC Linux
+ The error looked like "nsock_core.c:294: handle_connect_result:
+ Assertion `0' failed. Aborted". [David Fifield, Fabio Pedretti]
+
+o Nmap's make install target now uses $(INSTALL) rather than cp to
+ copy NSE scripts and libraries to ensure that file permissions are
+ set properly. [Fyodor]
+
+o Improved the Oracle DB version detection signatures. [Tom Sellers]
+
+o [NSE] Remove the old nse_macros.h header file. This involved
+ removing the SCRIPT_ENGINE_* status defines, moving the likes of
+ SCRIPT_ENGINE_LUA_DIR to nse_main.h, removing the last remaining use
+ of SCRIPT_ENGINE_TRY, and moving the FILES and DIRS defines to
+ nse_fs.h. [Patrick]
+
+o Cleaned up the libpcre build system a bit by removing Makefile.am
+ and modifying configure.ac to prevent unnecessary removal of
+ pcre_chartables.cc in some instances. [Fyodor]
+
+o Fixed a bug which would cause Nmap to sometimes miscount the number
+ of hosts scanned and produce warnings such as "WARNING: No targets
+ were specified, so 0 hosts scanned" when --traceroute and -sP were
+ combined. [Jah]
+
+o Changed Nmap and Ncat's configure.ac files to check in more
+ situations whether -ldl is required for compilation and add it where
+ necessary. [Fyodor]
+
+o When building Nmap RPMs using the spec file, you can now pass in an
+ openssl argument, the contents of which are passed to ./configure's
+ --with-openssl option. So you can pass rpmbuild an option such as
+ --define "openssl /usr/local/ssl". [Fyodor]
+
+o Fixed the make distclean target to avoid a failure which could occur
+ when you ran it right after a make clean (it might have failed in
+ other situations as well). [David]
+
+o Updated nmap-mac-prefixes with the latest MAC address prefix data
+ from http://standards.ieee.org/regauth/oui/oui.txt as of
+ 5/20/09. [Fyodor]
+
+o Ncat now makes sockets blocking before handing them off to another
+ program with --exec or --sh-exec. This is to resolve a failure where
+ the command "ncat --exec /usr/bin/yes localhost" would stop sending
+ because yes would send data so quickly that kernel send buffers
+ could not keep up and socket writes would start generating EAGAIN
+ errors. [Venkat]
+
+o Ncat now ignores SIGPIPE in listen mode. This fixes the command
+ "yes | ncat -l --keep-open --send-only", which was failing after the
+ first client disconnected due to a broken pipe signal when Ncat
+ would try to write more date before realizing that the client had
+ closed the connection.
+
+o Version detection can now detect Ncat's --chat mode. [David]
+
+Nmap 4.85BETA9 [2009-05-12]
+
+o Integrated all of your 1,156 of your OS detection submissions and
+ your 50 corrections since January 8. Please keep them coming! The
+ second generation OS detection DB has grown 14% to more than 2,000
+ fingerprints! That is more than we ever had with the first system.
+ The 243 new fingerprints include Microsoft Windows 7 beta, Linux
+ 2.6.28, and much more. See
+ http://seclists.org/nmap-dev/2009/q2/0335.html . [David]
+
+o [Ncat] A whole lot of work was done by David to improve SSL
+ security and functionality:
+ - Ncat now does certificate domain and trust validation against
+ trusted certificate lists if you specify --ssl-verify.
+ - [Ncat] To enable SSL certificate verification on systems whose
+ default trusted certificate stores aren't easily usable by
+ OpenSSL, we install a set of certificates extracted from Windows
+ in the file ca-bundle.crt. The trusted contents of this file are
+ added to whatever default trusted certificates the operating
+ system may provide. [David]
+ - Ncat now automatically generates a temporary keypair and
+ certificate in memory when you request it to act as an SSL server
+ but you don't specify your own key using --ssl-key and --ssl-cert
+ options. [David]
+ - [Ncat] In SSL mode, Ncat now always uses secure connections,
+ meaning that it uses only good ciphers and doesn't use
+ SSLv2. Certificates can optionally be verified with the
+ --ssl-verify and --ssl-trustfile options. Nsock provides the
+ option of making SSL connections that prioritize either speed or
+ security; Ncat uses security while version detection and NSE
+ continue to use speed. [David]
+
+o [NSE] Added Boolean Operators for --script. You may now use ("and",
+ "or", or "not") combined with categories, filenames, and wildcarded filenames
+ to match a set files. Parenthetical subexpressions are allowed for
+ precedence too. For example, you can now run:
+ nmap --script "(default or safe or intrusive) and not http-*" scanme.nmap.org
+ For more details, see
+ https://nmap.org/book/nse-usage.html#nse-args. [Patrick]
+
+o [Ncat] The HTTP proxy server now works on Windows too. [David]
+
+o [Zenmap] The command wizard has been removed. The profile editor has
+ the same capabilities with a better interface that doesn't require
+ clicking through many screens. The profile editor now has its own
+ "Scan" button that lets you run an edited command line immediately
+ without saving a new profile. The profile editor now comes up
+ showing the current command rather than being blank. [David]
+
+o [Zenmap] Added an small animated throbber which indicates that a
+ scan is still running (similar in concept to the one on the
+ upper-right Firefox corner which animates while a page is
+ loading). [David]
+
+o Regenerate script.db to remove references to non-existent
+ smb-check-vulns-2.nse. This caused the following error messages when
+ people used the --script=all option: "nse_main.lua:319:
+ smb-check-vulns-2.nse is not a file!" The script.db entries are now
+ sorted again to make diffs easier to read. [David, Patrick]
+
+o Fixed --script-updatedb on Windows--it was adding bogus backslashes
+ preceding file names in the generated script.db. Reported by
+ Michael Patrick at http://seclists.org/nmap-dev/2009/q2/0192.html,
+ and fixed by Jah. The error message was also improved.
+
+o The official Windows binaries are now compiled with MS Visual C++
+ 2008 Express Edition SP1 rather than the RTM version. We also now
+ distribute the matching SP1 version of the MS runtime components
+ (vcredist_x86.exe). A number of compiler warnings were fixed
+ too. [Fyodor,David]
+
+o Fixed a bug in the new NSE Lua core which caused it to round
+ fractional runlevel values to the next integer. This could cause
+ dependency problems for the smb-* scripts and others which rely on
+ floating point runlevel values (e.g. that smb-brute at runlevel 0.5
+ will run before smb-system-info at the default runlevel of 1).
+
+o The SEQ.CI OS detection test introduced in 4.85BETA4 now has some
+ examples in nmap-os-db and has been assigned a MatchPoints value of
+ 50. [David]
+
+o [Ncat] When using --send-only, Ncat will now close the network
+ connection and terminate after receiving EOF on standard input.
+ This is useful for, say, piping a file to a remote ncat where you
+ don't care to wait for any response. [Daniel Roethlisberger]
+
+o [Ncat] Fix hostname resolution on BSD systems where a recently
+ fixed libc bug caused getaddrinfo(3) to fail unless a socket type
+ hint is provided. Patch originally provided by Hajimu Umemoto of
+ FreeBSD. [Daniel Roethlisberger]
+
+o [NSE] Fixed bug in the DNS library which caused the error message
+ "nselib/dns.lua:54: 'for' limit must be a number". [Jah]
+
+o Fixed Solaris 10 compilation by renaming a yield structure which
+ conflicted with a yield function declared in unistd.h on that
+ platform. [Pieter Bowman, Patrick]
+
+o [Ncat] Minor code cleanup of Ncat memory allocation and string
+ duplication calls. [Ithilgore]
+
+o Fixed a bug which could cause -iR to only scan the first host group
+ and then terminate prematurely. The problem related to the way
+ hosts are counted by o.numhosts_scanned. [David]
+
+o Fixed a bug in the su-to-zenmap.sh script so that, in the cases
+ where it calls su, it uses the proper -c option rather than
+ -C. [Michal Januszewski, Henry Gebhardt]
+
+o Overhaul the NSE documentation "Usage and Examples" section and add
+ many more examples: https://nmap.org/book/nse-usage.html [David]
+
+o [NSE] Made hexify in nse_nsock.cc take an unsigned char * to work
+ around an assertion in Visual C++ in Debug mode. The isprint,
+ isalpha, etc. functions from ctype.h have an assertion that the
+ value of the character passed in is <= 255. If you pass a character
+ whose value is >= 128, it is cast to an unsigned int, making it a
+ large positive number and failing the assertion. This is the same
+ thing that was reported in
+ http://seclists.org/nmap-dev/2007/q2/0257.html, in regard to
+ non-ASCII characters in nmap-mac-prefixes. [David]
+
+o [NSE] Fixed a segmentation fault which could occur in scripts which
+ use the NSE pcap library. The problem was reported by Lionel Cons
+ and fixed by Patrick.
+
+o [NSE] Port script start/finish debug messages now show the target
+ port number as well as the host/IP. [Jah]
+
+o Updated IANA assignment IP list for random IP (-iR)
+ generation. [Kris]
+
+o [NSE] Fixed http.table_argument so that user-supplied HTTP headers
+ are now properly sent in HTTP requests. [Jah]
+
+Nmap 4.85BETA8 [2009-04-21]
+
+o Ncat's HTTP proxy now supports the GET, HEAD, and POST methods in
+ addition to the CONNECT tunneling method, so it can be used as a
+ proxy with an ordinary web browser.[David]
+
+o Ncat can now run as an authenticated proxy in HTTP proxy mode. Use
+ --proxy-auth to provide a username and password that will be required
+ of proxy users. Only the insecure (not encrypted) Basic authentication
+ method is supported. [David]
+
+o Ndiff's text output has been redone to look more like Nmap output
+ and be easier to read. See the Ndiff README file for an example. The
+ XML output is now based on Nmap's XML output as well. Zenmap's diff
+ viewer now shows the new output with syntax highlighting. [David]
+
+o The new versions of the Conficker Internet worm ban infected systems
+ from visiting Insecure.Org and Nmap.Org. We take that as a
+ compliment to the effectiveness of our remote Conficker scanner.
+ They also ban DNS substrings "honey" (for the Honeynet Project),
+ "doxpara" (for Dan Kaminsky's site), "tenablese" for Tenable
+ Security, "coresecur" for Core Security Technologies, and
+ "iv.cs.uni" for those meddlesome (to the Conficker authors)
+ researchers at the University of Bonn. For people who can't reach
+ nmap.org due to infection, I've mirrored this release at
+ http://sectools.org/nmap/. [Fyodor]
+
+o New Conficker versions eliminate the loophole we were using to
+ detect them with smb-check-vulns,nse, so we've added new methods
+ which work with the newest variants. Here are the Conficker-related
+ improvements since BETA7:
+ - Added new p2p-conficker script which detects Conficker using its
+ P2P update ports rather than MSRPC. This is based on some new
+ research by Symantec. See
+ https://nmap.org/nsedoc/scripts/p2p-conficker.html [Ron]
+ - Since new Conficker variants prevent detection by our previous
+ MSRPC check in smb-check-vulns, we've added a new check which still
+ works. It involves calling netpathcanonicalize on "\" rather than
+ "\..\" and checking for a different return value. It was discovered
+ by Felix Leder and Tillmann Werner. [Ron]
+ - Improved smb-check-vulns Conficker error message text to be more
+ useful. [David]
+ - smb-check-vulns now defaults to using basic login rather than
+ extended logins as this seems to work better on some
+ machines. [Ron]
+ - Recommended command for a fast Conficker scan (combine into 1 line):
+ nmap -p139,445 --script p2p-conficker,smb-os-discovery,smb-check-vulns
+ --script-args checkconficker=1,safe=1 -T4 [target networks]
+ - Recommended command for a more comprehensive (but slower) scan:
+ nmap --script p2p-conficker,smb-os-discovery,smb-check-vulns -p-
+ --script-args checkall=1,safe=1 -T4 [target networks]
+
+o [NSE] The Nmap Script Engine core (C++) was rewritten in Lua for
+ code simplicity and extensibility. See
+ http://seclists.org/nmap-dev/2009/q2/0090.html and
+ http://seclists.org/nmap-dev/2009/q1/0047.html . [Patrick]
+
+o [Zenmap] The "Cancel" button has been restored to the main screen.
+ It will cancel the scan that is currently being displayed. [David]
+
+o Fixed an SMB library bug which could case a nil-pointer exception
+ when scanning broken SMB implementations. Reported by Steve
+ Horejsi. [Ron]
+
+o [Ndiff] The setup.py installation script now suggests installing the
+ python-dev package in a certain error situation. Previously the
+ error message it printed was misleading:
+ error: invalid Python installation: unable to open
+ /usr/lib/python2.6/config/Makefile (No such file or directory)
+ The change was suggested by Aaron Leininger. [David]
+
+o [Nbase] The checksum functions now have an nbase_ prefix. This
+ should prevent name collisions with internal but exported functions
+ in shared libraries Nmap links against (e.g. adler32() in zlib).
+ Such collisions seem to confuse the runtime linker on some platforms.
+ [Daniel Roethlisberger]
+
+o Fixed banner.nse to remove surrounding whitespace from banners. For
+ example, this avoids a superfluous carriage return and newline at the
+ end of SSH greetings. [Patrick]
+
+o Expanded and tweaked the product/version/info of service scans in an
+ attempt to reduce the number of warnings like "Warning: Servicescan
+ failed to fill info_template...". Parts of this change include:
+ - Improved the text of the warning to be less confusing
+ - Increased the internal version info buffer to 256 chars from 128
+ - Increased the final version string length to 160 from 128 chars
+ - Changed the behavior when constructing the final version string so
+ that if it runs out of space, rather than dropping the output of that
+ template it truncates the template with ...
+ - Fixed the printing of unneeded spaces between templates when one of the
+ templates isn't going to be printed at all.
+ [Brandon]
+
+o Improved the service scan DB to remove certain problematic regex
+ patterns which could lead to PCRE_MATCHLIMIT errors. For example,
+ instances of ".*\r\n.*" and ".*\n.*\n" were generally collapsed to
+ ".*" as long as the DOTALL (/s) modifier was set. [Brandon]
+
+o Changed some error() calls (which were more informational than error
+ messages) to use log_write() instead, and changed a few f?printf()
+ calls into error() or log_write(). [Brandon]
+
+o [Ncat] Fixed a bug in the resolve() function which could cause Ncat
+ to resolve names using the wrong address family (such as AF_INET
+ rather than AF_INET6) in some rare cases. [Daniel Roethlisberger]
+
+o [Zenmap] Worked around a GTK+ bug on Windows reported by Henry Nymann.
+ It caused a crash when opening the Hosts Viewer on a host that had OS
+ information. A window appeared saying simply "Runtime Error!". [David]
+
+o [Zenmap] Gracefully handle unrecognized port states in the hosts
+ viewer. Apparently old versions of Nmap can return a state of
+ "unknown". This prevents this crash:
+ File "radialnet\gui\NodeNotebook.pyo", line 107, in __init__
+ File "radialnet\gui\NodeNotebook.pyo", line 257, in __create_widgets
+ KeyError: u'unknown'
+ [David]
+
+o Rewrote the debugging error message "Found whacked packet protocol
+ 17 in get_ping_pcap_result" because we decided that receiving a UDP
+ packet during TCP ping scan is not egregious enough to qualify as
+ "whacked". [David]
+
+Nmap 4.85BETA7 [2009-04-1]
+
+o Improvements to the Conficker detection script (smb-check-vulns):
+ - Reduce false negative rate. We (and all the other scanners) used
+ to require the 0x57 return code as well as a canonicalized path
+ string including 0x5c450000. Tenable confirmed an infected system
+ which returned a 0x00000000 path, so we now treat any hosting
+ returning code 0x57 as likely infected. [Ron]
+ - Add workaround for crash in older versions of OpenSSL which would
+ occur when we received a blank authentication challenge string
+ from the server. The error looked like: evp_enc.c(282): OpenSSL
+ internal error, assertion failed: inl > 0". [Ron]
+ - Add helpful text for the two most common errors seen in the
+ Conficker check in smb-check-vulns.nse. So instead of saying
+ things like "Error: NT_STATUS_ACCESS_DENIED", output is like:
+ | Conficker: Likely CLEAN; access was denied.
+ | | If you have a login, try using --script-args=smbuser=xxx,smbpass=yyy
+ | | (replace xxx and yyy with your username and password). Also try
+ | |_ smbdomain=zzz if you know the domain. (Error NT_STATUS_ACCESS_DENIED)
+ The other improved message is for
+ NT_STATUS_OBJECT_NAME_NOT_FOUND. [David]
+
+o The NSEDoc portal at https://nmap.org/nsedoc/ now provides download
+ links from the script and module pages to browse or download recent versions
+ of the code. It isn't quite as up-to-date as obtaining them from
+ svn directly, but may be more convenient. For an example, see
+ https://nmap.org/nsedoc/scripts/ssl-enum-ciphers.html . [David, Fyodor]
+
+o A copy of the Nmap public svn repository (/nmap, plus its zenmap,
+ nsock, nbase, and ncat externals) is now available at
+ https://nmap.org/svn/. We'll be updating this regularly, but it may
+ be slightly behind the SVN version. This is particularly useful
+ when you need to link to files in the tree, since browsers generally
+ don't handle svn:// repository links. [Fyodor]
+
+o Declare a couple msrpc.lua variables as local to avoid a potential
+ deadlock between smb-server-stats.nse instances. [Ron]
+
+Nmap 4.85BETA6 [2009-03-31]
+
+o Fixed some bugs with the Conficker detection script
+ (smb-check-vulns) [Ron]:
+ - SMB response timeout raised to 20s from 5s to compensate for
+ slow/overloaded systems and networks.
+ - MSRPC now only signs messages if OpenSSL is available (avoids an
+ error).
+ - Better error checking for MS08-067 patch
+ - Fixed forgotten endian-modifier (caused problems on big-endian
+ systems such as Solaris on SPARC).
+
+o Host status messages (up/down) are now uniform between ping scanning
+ and port scanning and include more information. They used to vary
+ slightly, but now all look like
+ Host <host> is up (Xs latency).
+ Host <host> is down.
+ The new latency information is Nmap's estimate of the round trip
+ time. In addition, the reason for a host being up is now printed for
+ port scans just as for ping scans, with the --reason option. [David]
+
+o Version detection now has a generic match line for SSLv3 servers,
+ which matches more servers than the already-existing set of specific
+ match lines. The match line found 13% more SSL servers in a test.
+ Note that Nmap will not be able to do SSL scan-through against a
+ small fraction of these servers, those that are SSLv3-only or
+ TLSv1-only, because that ability is not yet built into Nsock. There
+ is also a new version detection probe that works against SSLv2-only
+ servers. These have shown themselves to be very rare, so that probe
+ is not sent by default. Kristof Boeynaems provided the patch and did
+ the testing.
+
+o [Zenmap] A typo that led to a crash if the ndiff subprocess
+ terminated with an error was fixed. [David] The message was
+ File "zenmapGUI\DiffCompare.pyo", line 331, in check_ndiff_process
+ UnboundLocalError: local variable 'error_test' referenced before assignment
+
+o [Zenmap] A crash was fixed:
+ File "zenmapGUI\SearchGUI.pyo", line 582, in operator_changed
+ KeyError: "Syst\xc3\xa8me d'Exploitation"
+ The text could be different, because the error was caused by
+ translating a string that was also being used as an index into an
+ internal data structure. The string will be untranslated until that
+ part of the code can be rewritten. [David]
+
+o [Zenmap] A bug was fixed that caused a crash when doing a keyword:
+ or target: search over hosts that had a MAC address. [David]
+ The crash output was
+ File "zenmapCore\SearchResult.pyo", line 86, in match_keyword
+ File "zenmapCore\SearchResult.pyo", line 183, in match_target
+ TypeError: argument of type 'NoneType' is not iterable
+
+o Fixed a bug which prevented all comma-separated --script arguments
+ from being shown in Nmap normal and XML output files where they show
+ the original Nmap command. [David]
+
+o Fixed ping scanner's runtime statistics system so that instead of
+ saying "0 undergoing Ping Scan" it gives the actual number of hosts in
+ the group (e.g. 4096). [David]
+
+o [Zenmap] A crash was fixed in displaying the "Error creating the
+ per-user configuration directory" dialog:
+ File "zenmap", line 104, in <module>
+ File "zenmapGUI\App.pyo", line 129, in run
+ UnicodeDecodeError: 'utf8' codec can't decode bytes in position 43-45:
+ invalid data
+ The crash would only happen to users with paths containing
+ multibyte characters in a non-UTF-8 locale, who also had some error
+ preventing the creation of the directory. [David]
+
+Nmap 4.85BETA5 [2009-03-30]
+
+o Ron (in just a few hours of furious coding) added remote detection
+ of the Conficker worm to smb-check-vulns. It is based on new
+ research by Tillmann Werner and Felix Leder. You can scan your
+ network for Conficker with a command like: nmap -PN -T4 -p139,445 -n
+ -v --script=smb-check-vulns --script-args safe=1 [targetnetworks]
+
+o Ndiff now includes service (version detection) and OS detection
+ differences. [David]
+
+o [Ncat] The --exec and --sh-exec options now work in UDP mode like
+ they do in TCP mode: the server handles multiple concurrent clients
+ and doesn't have to be restarted after each one. Marius Sturm
+ provided the patch.
+
+o [Ncat] The -v option (used alone) no longer floods the screen with
+ debugging messages. With just -v, we now only print the most
+ important status messages such as "Connected to ...", a startup
+ banner, and error messages. At -vv, minor debugging messages are
+ enabled, such as what command is being executed by --sh-exec. With
+ -vvv you get detailed debugging messages. [David]
+
+o [Ncat] Chat mode now lets other participants know when someone
+ connects or disconnects, and it also broadcasts a current list of
+ participants at such times. [David]
+
+o [Ncat] Fixed a socket handling bug which could occur when you
+ redirect Ncat stdin, such as "ncat -l --chat < /dev/null". The next
+ user to connect would end up with file descriptor 0 (which is
+ normally stdin) and thus confuse Ncat. [David]
+
+o [Zenmap] The "Scan Output" expanders in the diff window now behave
+ more naturally. Some strange behavior on Windows was noted by Jah.
+ [David]
+
+o The following OS detection tests are no longer included in OS
+ fingerprints: U1.RUL, U1.TOS, IE.DLI, IE.SI, and IE.TOSI. URL, DLI,
+ and SI were found not be helpful in distinguishing operating systems
+ because they didn't vary. TOS and TOSI were disabled in 4.85BETA1
+ but now they are not included in prints at all. [David]
+
+o The compile-time Nmap ASCII dragon is now more ferocious thanks to
+ better teeth alignment. [David]
+
+o Version 4.85BETA4 had a bug in the implementation of the new SEQ.CI
+ test that could cause a closed-port IP ID to be written into the
+ array for the SEQ.TI test and cause erroneous results. The bug was
+ found and fixed by Guillaume Prigent.
+
+o Nbase has grown routines for calculating Adler32 and CRC32C
+ checksums. This is needed for future SCTP support. [Daniel
+ Roethlisberger]
+
+o [Zenmap] Zenmap no longer shows an error message when running Nmap
+ with options that cause a zero-length XML file to be produced (like
+ --iflist). [David]
+
+o Fixed an off-by-one error in printableSize() which could cause Nmap
+ to crash while reporting NSE results. Also, NmapOutputTable's memory
+ allocation strategy was improved to conserve memory. [Brandon,
+ Patrick]
+
+o [Zenmap] We now give the --force option to setup.py for installation
+ to ensure that it replaces all files. [David]
+
+o Nmap's --packet-trace, --version-trace, and --script-trace now use
+ an Nsock trace level of 2 rather than 5. This removes some
+ superfluous lines which can flood the screen. [David]
+
+o [Zenmap] Fixed a crash which could occur when loading the help URL
+ if the path contains multibyte characters. [David]
+
+o [Ncat] The version number is now matched to the Nmap release it came
+ with rather than always being 0.2. [David]
+
+o Fixed a strtok issue between load_exclude and
+ TargetGroup::parse_expr that caused only the first exclude on
+ a line to be loaded as well as an invalid read into free()'d
+ memory in load_exclude(). [Brandon, David]
+
+o NSE's garbage collection system (for cleaning up sockets from
+ completed threads, etc.) has been improved. [Patrick]
+
+Nmap 4.85BETA4 [2009-3-15]
+
+o Added two new SMB/MSRPC NSE scripts by Ron Bowes:
+ - smb-brute.nse: Bruteforce to discover SMB accounts. Has advanced
+ features, such as lockout detection, username validation, username
+ enumeration, and optimized case detection.
+ - smb-pwdump.nse: Uses executables from the Pwdump6 project to dump
+ password hashes from a remote machine (and optionally crack them
+ with Rainbow Crack). Pwdump6 files have to be downloaded
+ separately
+
+o [Ncat] The --exec and --sh-exec options now work on Windows. This
+ was a big job, considering that Windows doesn't even have a fork()
+ call and has all sorts of socket idiosyncrasies. [David]
+
+o Doug performed one of the largest version detection integration runs
+ ever, processing 1,746 submissions and 18 corrections. We are now
+ current with all submissions up to February 3. Keep them coming.
+ The version detection database has grown to 5,476 signatures for 510
+ application protocols. Doug posted his notes on the integration at
+ http://hcsw.org/blog.pl/37. We now have 1,868 http server
+ signatures, and the number of gopher signatures has bumped up from 5
+ to 6.
+
+o Released the new Ncat guide which contains practical real-life Ncat
+ usage examples for Ncat's major features. It complements the more
+ option-centric man page. Read it here: https://nmap.org/ncat/guide/
+ [David, Fyodor]
+
+o Ndiff is now included in the Windows zip distribution. For space
+ reasons, it is not an executable compiled with py2exe as in the
+ executable installer, rather it is the Ndiff source code (ndiff.py)
+ and a batch file wrapper (ndiff.bat). Because it's not precompiled,
+ it's necessary to have a Python interpreter installed. [David]
+
+o The new --stats-every option takes a time interval that controls how
+ often timing status updates are printed. It's intended to be used
+ when Nmap is run by another program as a subprocess. Thanks to
+ Aleksandar Petrinic for the initial implementation. [David]
+
+o [NSE] A new function stdnse.sleep allows a script to sleep for a
+ given time (and yield control to other scripts). [David]
+
+o [Ncat] In --chat mode (formerly --talk), the server now announces to
+ everyone when someone connects or disconnects. Besides letting you
+ know who's connected, this also informs you of your "user name" as
+ soon as you connect. [David]
+
+o [Ncat] Ncat now works interactively on Windows. Before,
+ peculiarities in the way Windows handles reading from the keyboard
+ meant that typing interactively into Ncat would cause it to quit
+ with a write timeout. [David]
+
+o Refactored SMB and MSRPC NSE scripts significantly, moving much of
+ the code into the smb.lua and msrpc.lua modules where it can be
+ leveraged by other scripts. For example, the user enumeration
+ functions are used by smb-brute.nse. [Ron Bowes]
+
+o [Ncat] The syntax accepted by the --allow, --deny, --allowfile, and
+ --denyfile options is now the same as Nmap's target specifications.
+ Additionally any errors in the allow or deny specifications are
+ reported when the program starts, not deferred until a connection is
+ received. [David]
+
+o You can now use '-' by itself in a target IP specification to mean
+ 0-255, so you could scan 192.168.-.-. An asterisk can also still be
+ used as an octet wildcard, but then you have to deal with shell
+ escaping on many platforms. [David]
+
+o Nmap was discovered in another movie! In the Russian film
+ Khottabych, teenage hacker Gena uses Nmap (and telnet) to hack
+ Microsoft. In response, MS sends a pretty female hacker to flush
+ him out. More details and screenshots: https://nmap.org/movies/#khottabych .
+
+o Improved operating system support for the smb-enum-sessions NSE
+ script; previous revisions worked on Windows 2003 or Windows 2000,
+ but never both. Currently, it is tested and working on both
+ versions. [Ron Bowes]
+
+o Implemented file-management functions in SMB, including file upload,
+ file download, and file delete. Only leverages by smb-pwdump.nse at
+ the moment, these functions give scripts the ability to perform
+ checks against the filesystem of a server. [Ron Bowes]
+
+o [Zenmap] A crash was fixed that occurred when you ran a scan
+ that didn't produce any host output (like "nmap --iflist") and then
+ tried to remove it from the inventory. [David]
+ The crash looked like
+ ValueError: list.remove(x): x not in list
+
+o [Ncat] In --chat mode, the server escapes potentially dangerous
+ control characters (in octal) before sending them to
+ clients. [David]
+
+o [Ndiff] Added a workaround for a bug in PyXML. The bug would cause a
+ crash that looked like "KeyError: 0". [David]
+
+o [Zenmap] Fixed a crash when something that looked like a format
+ specifier (like %y) appeared in a profile. The error message was
+ ValueError: unsupported format character 'y' (0x79)
+ [David]
+
+o A bug was fixed in route finding on BSD Unix. The libdnet function
+ addr_stob didn't handle the special case of the sa_len member of
+ struct sockaddr being equal to 0 and accessed unrelated memory past
+ the end of the sockaddr. A symptom of this was the fatal error
+ nexthost: failed to determine route to ...
+ which was caused by the default route being assigned a netmask other
+ than 0.0.0.0. [David]
+
+o Added bindings for the service control (SVCCTL) and at service (ATSVC)
+ services. These are both related to running processes on the remote
+ system (identical to how PsExec-style scripts work). These bindings
+ are used by smb-pwdump.nse. [Ron Bowes]
+
+o Refactored SMB authentication code into its own module, smbauth.lua.
+ Improved scripts' ability to store and retrieve login information
+ discovered by modules such as smb-brute.nse. [Ron Bowes]
+
+o Added message signing to SMB. Connections will no longer fail if the
+ server requires message signatures. This is a rare case, but comes up
+ on occasion. If a server allows but doesn't require message signing,
+ smb.lua will negotiate signing. This improves security by preventing
+ man in the middle attacks. [Ron Bowes]
+
+o Fixed the daytime.nse script to work for UDP again (it was checking
+ a "proto" field when the field name is actually "protocol"). [Jah]
+
+o Implemented extended security negotiations in the NSE SMB
+ module. Creates no noticeable change from the user's perspective,
+ but it's a more modern protocol. [Ron Bowes]
+
+o Nmap wins LinuxQuestions.Org Network Security Application of the
+ Year for the sixth year in a row! See
+ http://seclists.org/nmap-dev/2009/q1/0395.html .
+
+o [Zenmap] Removed some unnecessary (mostly GTK+-related) files from
+ the Windows installer--nmap-4.85BETA4-setup.exe is now smaller than
+ it has ever been since Nmap 4.22SOC6, which was released in August
+ 2007! [David]
+
+o Fixed the install-zenmap make target for Solaris portability.
+ Solaris /bin/sh does not have test(1) -e. [Daniel Roethlisberger]
+
+o Version detection used to omit the "ssl/" service name prefix if an
+ SSL-tunneled port didn't respond to any version probes. Now it keeps
+ "ssl/" as an indication that SSL was discovered, even if the service
+ behind it wasn't identified. Kristof Boeynaems reported the problem
+ and contributed a patch. [David]
+
+o [Ncat] The --talk option has been renamed --chat. --talk remains as an
+ undocumented alias.
+
+o There is a new OS detection test named SEQ.CI. Like TI and II, CI
+ classifies the target's IP ID sequence generation algorithm. CI is
+ based on the responses received to the probes sent to a closed port.
+ The algorithm for closed ports has been observed to differ from that
+ for open ports on some operating systems (though we don't yet know
+ which ones). The new test won't have an effect until new
+ fingerprints containing it are added to nmap-os-db. We got the idea
+ from some notes sent in by Dario Ciccarone. [David, Fyodor]
+
+o OS fingerprints now include the SEQ.II test (ICMP IP ID sequence
+ generation) even if there are no other SEQ test results. The
+ previous omission of SEQ.II in that case was a bug. [David]
+
+o [Ncat] The --send-only and --recv-only options now work in listen
+ mode as well as connect mode. [David]
+
+o [Ncat] An error in formatting bytes with the high bit set in hex
+ dump output was fixed. [David]
+
+o [Zenmap] New translation: Croatian (contributed by Vlatko Kosturjak).
+
+o Fixed a DNS decoding bug in dns-zone-transfer.nse that created
+ garbage output and could crash Zenmap by including 0x0C bytes in XML
+ files. The Zenmap crash looked like
+ SAXParseException: .../zenmap-XXXXXX.xml:39:290: not well-formed
+ (invalid token)
+ Thanks to Anino Belan and Eric Nickel for sending in affected log
+ files. [David]
+
+o [NSEDoc] Scripts that use modules automatically have the script
+ arguments defined by those modules included in their documentation.
+ It's no longer necessary to manually supply @args for the arguments
+ in the modules you use. For those who haven't seen the NSEDoc portal
+ yet, check out https://nmap.org/nsedoc/. [David]
+
+o An integer overflow in the scan progress meter was fixed. It caused
+ nonsense output like
+ UDP Scan Timing: About 11.34% done; ETC: 03:21 (-688:-41:-48 remaining)
+ during very long scans. [Henri Doreau]
+
+o [Zenmap] A better method of detecting the system locale is used, so
+ it should not be necessary to set the LANG environment variable on
+ Windows to get internationalized text. Thanks to Dirk Loss for the
+ suggestion. [David]
+
+o [Ncat] Added a number of automated tests for ensuring that Ncat is
+ working correctly. They are in /ncat/test in SVN. [David]
+
+o [Ncat] Now builds again when using the --without-openssl
+ option. [David]
+
+o [Zenmap] Fix auto-scroll behavior while Nmap is producing output, as
+ that previously failed in some cases involving wide lines in
+ output. [David]
+
+o [Zenmap] The network topology feature (Radialnet) has been
+ internationalized so its strings will be localized as well (as soon
+ as the relevant language's translation files are updated. To help
+ out, see https://nmap.org/book/zenmap-lang.html . Some remaining search
+ interface elements were internationalized as well. [David]
+
+o Improved the efficiency of the xml_convert() routine which handles
+ XML escaping. It was so inefficient that this stupid little routine
+ was noticeably slowing Nmap down in some cases. [David]
+
+o Removed 9 OS detection device types which only had one or two
+ instances in our whole database (ATM, TV, oscilloscope, etc.) and
+ made some other cleanups as well. We plan to enhance this even
+ further for the next release. [Fyodor, David, Doug]
+
+o [Zenmap] Removed some unnecessary GTK+ files from the files
+ installed by the Windows executable installer. [David]
+
+o [Zenmap] Tweaked the file format of the topology icons
+ (firewall.png, padlock.png, etc.) in an attempt to improve
+ compatibility with some versions of GTK+. This may fix a crash like
+ File "radialnet/gui/Image.py", line 53, in get_pixbuf
+ self.__cache[icon + image_type] = gtk.gdk.pixbuf_new_from_file(file)
+ GError: Couldn't recognize the image file format for file 'radialnet/padlock.png'
+ Thanks to Trevor Bain for a report and help debugging. [David]
+
+o Removed a bunch of unnecessary files (mostly GTK related) from the
+ Win32 exe installer to reduce its size. [David]
+
+o Fixed an NSE crash (assertion error) which looked like
+ "nsock_core.c:293: handle_connect_result: Assertion `0'
+ failed". Brandon reported the bug, which was fixed by Doug and
+ David. See http://seclists.org/nmap-dev/2009/q1/0546.html .
+
+Nmap 4.85BETA3 [2009-2-2]
+
+o Revert the temporary GTK DLL workaround (r11899) which added
+ duplicate DLL files to the distribution. David found that using a
+ different GTK download fixed the problem (see
+ docs/win32-installer-zenmap-buildguide.txt) and Fyodor was able to
+ reproduce and implement.
+
+o The conditions for printing OS fingerprints to XML output are now
+ the same as are used to decide whether to print them in the other
+ formats. So they will be printed if submission is desirable,
+ otherwise they are only printed if debugging is enabled or verbosity
+ is 2 or higher. [Tom Sellers]
+
+o Removed some Brazilian poetry/lyrics from Zenmap source code
+ (NmapOutputViewer.py). We've seen enough of it in the debug logs. "E
+ nao se entrega, nao".
+
+o Fix Ncat compilation with the MingW windows compiler. [Gisle Vanem]
+
+o Corrected some NSE libraries (datafiles, tab) which were using the
+ old arg table interface. [Patrick]
+
+o [Zenmap] Fixed a crash that happened when running a scan directly
+ from the command wizard without saving a profile [David]:
+ NmapParser.py", line 417, in set_target
+ self.ops.target_specs = target.split()
+ AttributeError: 'NoneType' object has no attribute 'split'
+
+o Fixed an NSE pop3 library error which gave a message such as:
+ SCRIPT ENGINE (506.424s): ./scripts/pop3-capabilities.nse against
+ a.b.1.47:995 ended with error: ./scripts/pop3-capabilities.nse:32:
+ bad argument #1 to 'pairs' (table expected, got string) [Jah]
+
+o Upgraded the OpenSSL binaries shipped in our Windows installer to
+ version 0.9.8j. [Kris]
+
+o Updated IANA assignment IP list for random IP (-iR)
+ generation. [Kris]
+
+Nmap 4.85BETA2 [2009-1-29]
+
+o Added some duplicate GTK DLLs to Windows installer, as a temporary
+ fix for this issue: http://seclists.org/nmap-dev/2009/q1/0207.html
+ The problem caused a warning message complaining of problems finding
+ librsvg-2-2.dll to pop up 32 times before Zenmap would start. We're
+ still looking for a better fix. [Fyodor, Rob, Jah]
+
+o Made a few improvements to nmap.xsl (details:
+ http://seclists.org/nmap-dev/2009/q1/0210.html) [Tom Sellers]
+
+o [Zenmap] New translation: French (contributed by Gutek)
+
+o Updated the mswin32 installer build guide and posted it to
+ https://svn.nmap.org/nmap/docs/win32-installer-zenmap-buildguide.txt [Fyodor]
+
+o The xampp-default-auth.nse script was renamed to ftp-brute.nse since
+ it has become more general.
+
+Nmap 4.85BETA1 [2009-1-23]
+
+o Added Ncat, a much-improved reimplementation of the venerable Netcat
+ tool which adds modern features and makes use of Nmap's efficient
+ networking libraries. Features include SSL support, proxy
+ connections (client or server, socks4 or connect-based, with or
+ without authentication, optionally chained), TCP and UDP connection
+ redirection, connection brokering (facilitating connections between
+ machines which are behind NAT gateways), and much more. It is
+ cross-platform (Linux, Windows, Mac, etc.) and supports IPv6 as well
+ as standard IPv4. See https://nmap.org/ncat/ for details. It is now
+ included in our binary packages (Windows, Linux, and Mac OS X), and
+ built by default. You can skip it with the --without-ncat configure
+ option. Thanks to Kris and David for their great work on this!
+
+o Added the Ndiff utility, which compares the results of two Nmap
+ scans and describes the new/removed hosts, newly open/closed ports,
+ changed operating systems, etc. This makes it trivial to scan your
+ networks on a regular basis and create a report (XML or text format)
+ on all the changes. See https://nmap.org/ndiff/ and ndiff/README for
+ more information. Ndiff is included in our binary packages and built
+ by default, though you can prevent it from being built by specifying
+ the --without-ndiff configure flag. Thanks to David and Michael
+ Pattrick for their great work on this.
+
+o Released Nmap Network Scanning: The Official Nmap Project Guide to
+ Network Discovery and Security Scanning. From explaining port
+ scanning basics for novices to detailing low-level packet crafting
+ methods used by advanced hackers, this book suits all levels of
+ security and networking professionals. A 42-page reference guide
+ documents every Nmap feature and option, while the rest of the book
+ demonstrates how to apply those features to quickly solve real-world
+ tasks. It was briefly the #1 selling computer book on Amazon.
+ Translations to the German, Korean, and Brazilian Portuguese
+ languages are forthcoming. More than half of the book is already
+ free online. For more, see https://nmap.org/book/.
+
+o David spent more than a month working on algorithms to improve port
+ scan performance while retaining or improving accuracy. The changes
+ are described at http://seclists.org/nmap-dev/2009/q1/0054.html . He
+ was able to reduce our "benchmark scan time" (which involves many
+ different scan types from many source networks to many targets) from
+ 1879 seconds to 1321 without harming accuracy. That is a 30% time
+ reduction!
+
+o Introduced the NSE documentation portal, which documents every NSE
+ script and library included with Nmap. See https://nmap.org/nsedoc/.
+ Script documentation was improved substantially in the process.
+ Scripts and libraries must use the new NSEDoc format, which is
+ described at https://nmap.org/book/nsedoc.html . Thanks to Patrick
+ and David for their great work on this.
+
+o The 2nd Generation OS Detection System was dramatically improved for
+ improved accuracy. After substantial testing, David and Fyodor made
+ the following changes:
+ - The "T" (TTL test) result ranges were widened to prevent minor
+ routing (and device hardware inconsistency) variations from causing
+ so many matches to fail.
+ - The TG (TTL guess) results were canonicalized. Nmap is only
+ capable of assigning the values 0x20, 0x40, 0x80, and 0xFF for
+ these tests, yet many fingerprints had different values. This was
+ due to bugs in our fingerprint integration tools.
+ - The U1.TOS and IE.TOSI tests (both having to do with the IP Type
+ of Service field) have been effectively eliminated (MatchPoints
+ set to 0). These proved particularly susceptible to false results
+ due to networking hardware along the packet route manipulating the
+ TOS header field.
+ - An important bug in OS detection's congestion control algorithms
+ was fixed. It could lead to Nmap sending packets much too quickly
+ in some cases, which hurt accuracy.
+
+o Integrated all of your OS detection fingerprint submissions and
+ corrections up to January 8. The DB has grown more than 17% to
+ 1,761 fingerprints. Newly detected services include Mac OS X
+ 10.5.6, Linux 2.6.28, iPhone 2.1, and all manner of WAPs, VoIP
+ phones, routers, oscilloscopes, employee timeclocks, etc. Keep those
+ submissions coming!
+
+o Ron Bowes embarked on a massive MSRPC/NETBIOS project to allow Nmap
+ to interrogate Windows machines much more completely. He added
+ three new nselib modules: msrpc, netbios, and smb. As the names
+ suggest, they contain common code for scripts using MSRPC, NetBIOS,
+ and SMB. These modules allow scripts to extract a great deal of
+ information from hosts running Windows, particularly Windows
+ 2000. New or updated scripts using the modules are:
+ - nbstat.nse: get NetBIOS names and MAC address.
+ - smb-enum-domains.nse: enumerate domains and policies.
+ - smb-enum-processes.nse: allows a user with administrator
+ credentials to view a tree of the processes running on the
+ remote system (uses HKEY_PERFORMANCE_DATA hive).
+ - smb-enum-sessions.nse: enumerate logins and SMB sessions.
+ - smb-enum-shares.nse: enumerate network shares.
+ - smb-enum-users.nse: enumerate users and information about them.
+ - smb-os-discovery.nse: get operating system over SMB (replaces
+ netbios-smb-os-discovery.nse).
+ - smb-security-mode.nse: determine if a host uses user-level or
+ share-level security, and what other security features it
+ supports.
+ - smb-server-stats.nse: grab statistics such as network traffic
+ counts.
+ - smb-system-info.nse: get lots of information from the registry.
+
+o A problem that caused OS detection to fail for most hosts in a
+ certain case was fixed. It happened when sending raw Ethernet frames
+ (by default on Windows or on other platforms with --send-eth) to
+ hosts on a switched LAN. The destination MAC address was wrong for
+ most targets. The symptom was that only one out of each scan group
+ of 20 or 30 hosts would have a meaningful OS fingerprint. Thanks go
+ to Michael Head for running tests and especially Trent Snyder for
+ testing and finding the cause of the problem. [David]
+
+o Zenmap now runs ndiff to for its "Compare Results" function. This
+ completely replaces the old diff view. The diff window size is now
+ more flexible for user resizing as well. [David]
+
+o Added a Russian translation of the Nmap Reference Guide by Guz
+ Alexander. We now have translations in 15 languages available from
+ https://nmap.org/docs.html . More volunteer translators are welcome,
+ as we are still missing some important languages. Translation
+ instructions are available from that docs.html page.
+
+o Update Windows installer to handle Windows 7 (tested with the Beta
+ build 7000) [Rob Nicholls]
+
+o Improved port scan performance by changing the list of high priority
+ ports which Nmap shifts closer to the beginning of scans because
+ they are more likely to be responsive. We based the change on
+ empirical data from large-scale scanning. The new port list is:
+ 21, 22, 23, 25, 53, 80, 110, 111, 113, 135, 139, 143, 199, 256,
+ 443, 445, 554, 587, 993, 995, 1025, 1720, 1723, 3306, 3389, 5900,
+ 8080, 8888
+ [Fyodor, David]
+
+o [NSE] Almost all scripts were renamed to be more consistent. They
+ are now all lowercase and most of them start with the name of the
+ service name they query. Words are separated by hyphens. [David,
+ Fyodor]
+
+o [NSE] Now that scripts are better named, the "Id" field has been
+ removed and the script name (sans the .nse or directory path
+ information) is used in script output instead. [David]
+
+o [NSE] Added banner.nse, a simple script which connects to open TCP
+ ports and prints out anything sent in the first five seconds by the
+ listening service. [Jah]
+
+o [NSE] Added a new OpenSSL library with functions for multiprecision
+ integer arithmetic, hashing, HMAC, symmetric encryption and
+ symmetric decryption. [Sven]
+
+o [Zenmap] Internationalization has been fixed [David]. Currently
+ Zenmap has two translations:
+ - German by Chris Leick
+ - Brazilian Portuguese by Adriano Monteiro Marques (partial)
+ For details on using an existing translation or localizing Zenmap
+ into your own native language, see
+ https://nmap.org/book/zenmap-lang.html . [David]
+
+o Zenmap no longer outputs XML elements and attributes that are not in
+ the Nmap XML DTD. This was done mostly by removing things from
+ Zenmap's output, and adding a few new optional things to the Nmap
+ DTD. A scan's profile name, host comments, and interactive text
+ output are what were added to nmap.dtd. The .usr filename extension
+ for saved Zenmap files is deprecated in favor of the .xml extension
+ commonly used with Nmap. Because of these changes the
+ xmloutputversion has been increased to 1.03. [David]
+
+o The NSE registry now persists across host groups so that values
+ stored in it will remain until they are explicitly removed or Nmap
+ execution ends. [David]
+
+o Enhanced the AS Numbers script (ASN.nse) to better consolidate
+ results and bail out if the DNS server doesn't support the ASN
+ queries. [Jah]
+
+o Complete re-write of the marshaling logic for Microsoft RPC calls.
+ [Ron Bowes]
+
+o Added a script that checks for ms08-067-vulnerable hosts
+ (smb-check-vulns.nse) using the smb nselib. It also checks for an
+ unfixed denial of service vulnerability Ron discovered in the
+ Windows 2000 registry service. [Ron Bowes]
+
+o [Zenmap] Text size is larger on Mac OS X thanks to a new included
+ gtkrc file. [David]
+
+o Reduced memory consumption for some longer-running scans by removing
+ completed hosts from the lists after two minutes. These hosts are
+ kept around in case there is a late response, but this draws the
+ line on how long we wait and hence keep this information in memory.
+ See http://seclists.org/nmap-dev/2008/q3/0902.html for more. [Kris]
+
+o The Windows installer now uses Zenmap binaries built using Python
+ 2.6.1 rather than 2.5.1 [Fyodor]
+
+o When a system route can't be matched up directly with an interface
+ by comparing addresses, Nmap now tries to match the route through
+ another route. This helps for instance with a PPP connection where
+ the default route's gateway address is routed through a different
+ route, the one associated with the address of the PPP device. The
+ problem would show itself as an inability to scan through the
+ default route and the error message
+ WARNING: Unable to find appropriate interface for system route to ...
+ [David]
+
+o Removed a code comment which simply declared /* WANKER ALERT! */ for
+ no good reason. [Fyodor]
+
+o NSE prints messages in debugging mode whenever a script starts or
+ finishes. [Patrick, David]
+
+o [Ncat] The -l option can now be specified w/o a port number to
+ listen on Ncat's default port number (31337).
+
+o [Zenmap] The Nmap output window now scrolls automatically as a scan
+ progresses. [David]
+
+o [NSE] We now have a canonical way for scripts to check for
+ dependency libraries such as OpenSSL. This allows them to handle
+ the issue gracefully (by exiting or doing some of their work if
+ possible) rather than flooding the console with error messages as
+ before. See https://nmap.org/nsedoc/lib/openssl.html . [Pattrick,
+ David, Fyodor]
+
+o Nmap now reports a proper error message when you combine an IPv6
+ scan (-6) with random IPv4 address selection (-iR). [Henri Doreau]
+
+o Nmap now builds with the _FORTIFY_SOURCE=2 define. With modern
+ versions of GCC, this adds extra buffer overflow protection and
+ other security checks. It is described at
+ http://gcc.gnu.org/ml/gcc-patches/2004-09/msg02055.html . [David,
+ Doug]
+
+o The --excludefile option correctly handles files with no terminating
+ newline instead of claiming "Exclude file line 0 was too long to
+ read." [Henri Doreau]
+
+o [NSE] Changed the datafiles library to remove constraining input
+ checks, move nmap.fetch_file() to read_from_file(), and make
+ get_array() and get_assoc_array() into normal functions. [Sven]
+
+o [NSE] Fixed some bugs and typos in the datafiles library. [Jah]
+
+o Nsock handles a certain Windows connect error, WSAEADDRNOTAVAIL
+ (errno 10049), preventing an assertion failure that looked like
+ Strange connect error from 203.65.42.255 (10049): No such file or directory
+ Assertion failed: 0, file .\src\nsock_core.c, line 290
+ The error could be seen by running a version scan against a
+ broadcast address. Thanks to Tilo Köppe and James Liu for reporting
+ the problem. [David]
+
+o An "elapsed" attribute has been added to the XML output (in the
+ "finished" tag), representing the total Nmap scanning time in
+ seconds (floating point). [Kris]
+
+o Fixed a division by zero error in the packet rate measuring code
+ that could cause a display of infinity packets per seconds near the
+ start of a scan. [Jah]
+
+o Substantially updated the Nmap Scripting Engine guide/chapter
+ (https://nmap.org/book/nse.html) so that it is up-to-date with all
+ the latest NSE improvements.
+
+o Fixed a bug in the IP validation code which would have let a specially
+ crafted reply sent from a host on the same LAN slip through and cause
+ Nmap to segfault. Thanks to ithilgore of sock-raw.homeunix.org for
+ the very detailed bug report. [Kris]
+
+o [Zenmap] The crash reporter further enhances user privacy by showing
+ all the information that will be submitted so you can edit it to
+ remove identifying information such as the name of your home
+ directory. If you provide an email address the report will be marked
+ private so it will not appear on the public bug tracker. [David]
+
+o [Zenmap] Zenmap now parses and records XSL stylesheet information
+ from Nmap XML files, so files saved by Zenmap will be viewable in a
+ web browser just like those produced by Nmap. [David]
+
+o A possible Lua stack overflow in the DNS module was fixed. Lua detects
+ these sorts of overflows and quits. [David]
+
+o [NSE] Improved html-title script to support http-alt and https-alt
+ (with SSL) and to handle a wider variety of redirects. [Jah]
+
+o NSE scripts that require a list of DNS servers (currently only
+ ASN.nse) now work when IPv6 scanning. Previously it gave an error
+ message: "Failed to send dns query. Response from dns.query(): 9".
+ [Jah, David]
+
+o [Zenmap] Added a workaround for a crash
+ GtkWarning: could not open display
+ on Mac OS X 10.5. The problem is caused by setting the DISPLAY
+ environment variable in one of your shell startup files; that
+ shouldn't be done under 10.5 and removing it will make other
+ X11-using applications work better. Zenmap will now handle the
+ situation automatically. [David]
+
+o http-auth.nse now properly checks for default authentication
+ credentials. A bug prevented it from working before. [Vlatko
+ Kosturjak]
+
+o Renamed irc-zombie.nse to auth-spoof and improved its description
+ and output a bit. [Fyodor]
+
+o Removed some unnecessary "demo" category NSE scripts: echoTest,
+ chargenTest, showHTTPVersion, and showSMTPVersion.nse. Moved
+ daytimeTest from the "demo" category to "discovery". Removed
+ showHTMLTitle from the "demo" category, but it remains in the
+ "default" and "safe" categories. This leaves just smtp-open-relay in
+ the undocumented "demo" category. [Fyodor]
+
+o [NSE] Removed ripeQuery.nse because we now have the much more robust
+ whois.nse which handles all the major registries. [Fyodor]
+
+o [NSE] Removed showSSHVersion.nse. Its only real claim to fame was
+ the ability to trick some SSH servers (including at least OpenSSH
+ 4.3p2-9etch3) into not logging the connection. This trick doesn't
+ seem to work with newer versions of OpenSSH, as my
+ openssh-server-4.7p1-4.fc8 does log the connection. Without the
+ stealth advantage, the script has no real benefit over version
+ detection or the upcoming banner grabbing script. [Fyodor]
+
+o [Zenmap] Profile updates: The -sS option was added to the "Intense
+ scan plus UDP" and "Slow comprehensive scan" profiles. The -PN (ping
+ only) option was added to "Quick traceroute". [David]
+
+o [NSE] The smtp-commands script output is now more compact. [Jasey
+ DePriest, David]
+
+o [Zenmap] Added a simple workaround for a bug in PyXML (an add-on
+ Python XML library) that caused a crash. The crash would happen when
+ loading an XML file and looked like "KeyError: 0". [David]
+
+o A crash caused by an incorrect test condition was fixed. It would
+ happen when running a ping scan other than a protocol ping, without
+ debugging enabled, if an ICMP packet was received referring to a
+ packet that was not TCP, UDP, or ICMP. Thanks to Brandon Enright and
+ Matt Castelein for reporting the problem. [David]
+
+o [Zenmap] The keyboard shortcut for "Save to Directory" has been
+ changed from Ctrl+v to Ctrl+Alt+s so as not to conflict with the
+ usual paste shortcut. [Jah, Michael]
+
+o Nmap now quits if you give a "backwards" port or protocol range like
+ -p 20-10. The issue was noted by Arturo "Buanzo" Busleiman. [David]
+
+o Fixed a bug which caused Nmap to infer an improper distance against
+ some hosts when performing OS detection against a group whose
+ distance varies between members. [David, Fyodor]
+
+o [Zenmap] Host information windows are now like any other windows,
+ and will not become unclosable by having their controls offscreen.
+ Thanks to Robert Mead for the bug report.
+
+o [NSE] showHTMLTitle can now follow (non-standard) relative
+ redirects, and may do a DNS lookup to find if the redirected-to host
+ has the same IP address as the scanned host. [Jah]
+
+o [NSE] Enhanced the tohex() function in the stdnse library to support
+ strings and added options to control the formatting. [Sven]
+
+o [NSE] The http module tries to deal with non-standards-compliant
+ HTTP traffic, particularly responses in which the header fields are
+ separated by plain LF rather than CRLF. [Jah, Sven]
+
+o [Zenmap] The help function now properly converts the pathname of the
+ local help file to a URL, for better compatibility with different
+ web browsers. [David]
+ This should fix the crash
+ WindowsError: [Error 2] The system cannot find the file specified:
+ 'file://C:\\Program Files\\Nmap\\zenmap\\share\\zenmap\\docs\\help.html'
+
+o [NSE] Fixed a number of small bugs in the Nmap library
+ (nse_nmaplib.cc), as described at
+ http://seclists.org/nmap-dev/2008/q4/0663.html [Patrick]
+
+o The HTTP_open_proxy.nse script was updated to match Google Web
+ Server's changed header field: "Server: gws" instead of
+ "Server: GWS/". [Vlatko Kosturjak]
+
+o Enhanced the ssh service detection signatures to properly
+ detect protocol version 2 services. [Matt Selsky]
+
+o Nsock now uses fselect() to work around problems with select() not
+ working properly on non-socket descriptors on Windows. This was
+ needed for Ncat to work properly on that platform. See
+ http://seclists.org/nmap-dev/2008/q3/0766.html . [Kris]
+
+o Removed trailing null bytes from Ncat's responses in HTTP proxy
+ mode. [David]
+
+o [NSE] daytime.nse now runs against TCP ports in addition to the UDP
+ ports it already handled. The output format was also
+ improved. [David]
+
+o XML output now contains the full path to nmap.xml on Windows. The
+ path is converted to a file:// URL to provide better compatibility
+ across browsers. [Jah]
+
+o Made DNS timeouts in NSE a bit more aggressive at higher timing
+ levels such as -T4 and -T5. [Jah]
+
+o A script could be executed twice if it was given with the --script
+ option, also in the "version" category, and version detection (-sV)
+ was requested. This has been fixed. [David]
+
+o Fixed port number representation in some Nmap and Nsock message
+ output. Incorrect conversion modifiers caused high ports to wrap
+ around and be shown as negative values. [Kris]
+
+o Upgraded the shipped libdnet library to version 1.12 (with our
+ modifications). [Kris]
+
+o Upgraded the OpenSSL binaries shipped in our Windows installer to
+ version 0.9.8i. [Kris]
+
+o [NSE] The SSLv2-support script no longer prints duplicate cyphers if
+ they exist in the server's supported cypher list. [Kris]
+
+o Fix compilation w/IPv6 support on Solaris by checking for inet_addr
+ in -lnsr before using APR_CHECK_WORKING_GETNAMEINFO in
+ configure. [David]
+
+o Removed the nbase_md5.* and nbase_sha1.* files because our
+ new nse_openssl library includes that functionality. [David]
+
+o The robots.txt NSE script is now silent when there are no
+ interesting results, rather than printing that robots.txt "is empty
+ or has no disallowed entries". [Kris]
+
+o Fixed a file (socket) descriptor leak which could occur when connect
+ scan probes receive certain unusual error messages (including
+ EHOSTUNREACH, and EHOSTDOWN). This led to error messages such as
+ "Socket creation in sendConnectScanProbe: Too many open files (24)"
+ [David]
+
+o [Zenmap] Made floating host details windows into normal top-level
+ windows. This avoids a problem where the edge of a window could be
+ off the edge of a screen and it would not be closable. The bug was
+ reported by Robert Mead. [David]
+
+o Use TIMEVAL_AFTER(...) instead of TIMEVAL_SUBTRACT(...) > 0 when
+ deciding whether a probe response counts as a drop for scan delay
+ purposes. This prevents an integer overflow which could
+ substantially degrade scan performance. [David]
+
+o Reorganized macosx/Makefile to make it easier to add in new packages
+ such as Ncat and Ndiff. Also removed the bogus clean-nmap and
+ clean-zenmap targets. [David]
+
+o [Zenmap] Fixed a crash related to the use of NmapOptions in
+ ScanNotebook.py using the old interface (ops.num_random_targes,
+ ops.input_filename) rather than the newer dict-style
+ interface. [Jah]
+
+o Split parallel DNS resolution and system DNS resolution into
+ separate functions. Previously system DNS resolution was encapsulated
+ inside the parallel DNS function, inside a big if block. Now the if
+ is on the outside and decides which of the two functions to
+ call. [David]
+
+o [NSE] Remove "\r\r" in script output. If you print "\r\n", the
+ Windows C library will transform it to "\r\r\n". So we just print
+ "\n" with no special case for Windows. Also fixed
+ showSMTPversion.nse so that it doesn't print "\r\r" in the first
+ place. [David]
+
+o Updated IANA assignment IP list for random IP (-iR)
+ generation. [Kris]
+
+o OS scan point matching code can now handle tests worth zero
+ points. We now assign zero points to ignore a couple tests which
+ proved ineffective. [David]
+
+o [Zenmap] Catch the exceptions that are caused when there's no XML
+ output file, an empty one, or one that's half-complete. You can
+ cause these three situations, respectively, with: "nmap -V", "nmap
+ --iflist", or "nmap 0". Also remove the target requirement for scans
+ because you should be able to run commands such as "nmap --iflist"
+ from Zenmap. [David]
+
+o [Zenmap] Guard against the topology graph becoming empty in the
+ middle of an animation. This could happen if you removed a scan
+ from the list of scans during an animation. The error looked like:
+ File "usr/lib/python2.5/site-packages/radialnet/gui/RadialNet.py",
+ line 1533, in __livens_up AttributeError: 'NoneType' object has no
+ attribute 'get_nodes'
+ [David]
+
+o [Zenmap] Fixed a crash which could occur when you entered a command
+ containing only whitespace. David fixed various other possible
+ crashes found in the crash report tracker too. Zenmap users really
+ are capable of finding every possible edge case which could cause a
+ crash :).
+
+Nmap 4.76 [2008-9-12]
+
+o There is a new "external" script category, for NSE scripts which
+ rely on a third-party network resource. Scripts that send data to
+ anywhere other than the target are placed in this category. Initial
+ members are ASN.nse, dns-safe-recursion-port.nse,
+ dns-safe-recursion-txid.nse, ripeQuery.nse, HTTP_open_proxy.nse, and
+ whois.nse [David]
+
+o [Zenmap] A crash was fixed that affected Windows users with
+ non-ASCII characters in their user names. [David]
+ The error looked like this (with many variations):
+ UnicodeDecodeError: 'utf8' codec can't decode byte 0x9c in position 28:
+ unexpected code byte
+
+o [Zenmap] Several corner-case crashes were fixed: [David]
+ File "radialnet\gui\NodeNotebook.pyo", line 429, in __create_widgets
+ KeyError: 'tcp'
+ File "radialnet\gui\RadialNet.pyo", line 1531, in __livens_up
+ AttributeError: 'NoneType' object has no attribute 'get_nodes'
+ File "zenmapGUI\MainWindow.pyo", line 308, in _create_ui_manager
+ GError: Odd character '\'
+ File "radialnet/gui/ControlWidget.py", line 104, in __create_widgets
+ AttributeError: 'module' object has no attribute 'STOCK_INFO'
+ File "radialnet\util\integration.pyo", line 385, in make_graph_from_hosts
+ KeyError: 'hops'
+
+o [Zenmap] A crash was fixed that happened when opening the Hosts
+ Viewer with an empty list of hosts. [David]
+ The error message was
+ File "radialnet\gui\HostsViewer.pyo", line 167, in __cursor_callback
+ TypeError: GtkTreeModel.get_iter requires a tree path as its argument
+
+o Improved rpcinfo.nse to correctly parse a wider variety of server
+ responses. [Sven Klemm]
+
+o [Zenmap] Fixed a data encoding bug which could cause the crash
+ reporter itself to crash! [David]
+
+o Nmap's Windows self-installer now correctly registers/deletes the
+ npf (WinPcap) service during install/uninstall. Also the silent
+ install mode was improved to avoid a case where the WinPcap
+ uninstaller was (non-silently) shown. [Rob Nicholls]
+
+o Nmap's Windows self-installer now checks whether the MS Visual C++
+ runtime components have already been installed to avoid running it
+ again (which doesn't hurt anything, but slows down
+ installation). [Rob Nicholls]
+
+o Fixed an assertion failure where raw TCP timing ping probes were
+ wrongly used during a TCP connect scan:
+ nmap: scan_engine.cc:2843: UltraProbe* sendIPScanProbe(UltraScanInfo*,
+ HostScanStats*, const probespec*, u8, u8):
+ Assertion `USI->scantype != CONNECT_SCAN' failed.
+ Thanks to LevelZero for the report. [David]
+
+o Update the NSE bit library to replace deprecated use of
+ luaL_openlib() with luaL_register(). This fixes a build error which
+ occurred on systems which have Lua libraries installed but
+ LUA_COMPAT_OPENLIB not defined [Sven]
+
+o [Zenmap] The automatic crash reporter no longer requires an email
+ address. [David]
+
+o [Zenmap] Highlighting of hostnames was improved to avoid wrongful
+ highlighting of certain elapsed times, byte counts, and other
+ non-hostname data. The blue highlight effects are now more subtle
+ (no longer bold, underlined, or italic) [David]
+
+o [Zenmap] A warning that would occur when a host had the same service
+ running on more than one port was removed. Thanks to Toralf Förster
+ for the bug report. [David]
+ GtkWarning: gtk_box_pack_start: assertion `child->parent == NULL' failed
+ self.pack_start(widget, expand=False, fill=False)
+
+Nmap 4.75 [2008-9-7]
+
+o [Zenmap] Added a new Scan Topology system. The idea is that if we
+ are going to call Nmap the "Network Mapper", it should at least be
+ able to draw you a map of the network! And that is what this new
+ system does. It was achieved by integrating the RadialNet Nmap
+ visualization tool (http://www.dca.ufrn.br/~joaomedeiros/radialnet),
+ into Zenmap. Joao Medeiros has been developing RadialNet for more
+ than a year. For details, complete with some of the most beautiful
+ Zenmap screen shots ever, visit
+ https://nmap.org/book/zenmap-topology.html . The integration work was
+ done by SoC student Vladimir Mitrovic and his mentor David Fifield.
+
+o [Zenmap] Another exciting new Zenmap feature is Scan Aggregation.
+ This allows you to visualize and analyze the results of multiple
+ scans at once, as if they were from one Nmap execution. So you might
+ scan one network, analyze the results a bit, then scan some of the
+ machines more intensely or add a completely new subnet to the
+ scan. The new results are seamlessly added to the old, as described
+ at https://nmap.org/book/zenmap-scanning.html#aggregation. [David,
+ Vladimir]
+
+o Expanded nmap-services to include information on how frequently each
+ port number is found open. The results were generated by scanning
+ tens of millions of IPs on the Internet this summer, and augmented
+ with internal network data contributed by some large
+ organizations. [Fyodor]
+
+o Nmap now scans the most common 1,000 ports by default in either
+ protocol (UDP scan is still optional). This is a decrease from
+ 1,715 TCP ports and 1,488 UDP ports in Nmap 4.68. So Nmap is faster
+ by default and, since the port selection is better thanks to the
+ port frequency data, it often finds more open ports as
+ well. [Fyodor]
+
+o Nmap fast scan (-F) now scans the top 100 ports by default in either
+ protocol. This is a decrease from 1,276 (TCP) and 1,017 (UDP) in
+ Nmap 4.68. Port scanning time with -F is generally an order of
+ magnitude faster than before, making -F worthy of its "fast scan"
+ moniker. [Fyodor]
+
+o The --top-ports option lets you specify the number of ports you wish
+ to scan in each protocol, and will pick the most popular ports for
+ you based on the new frequency data. For both TCP and UDP, the top
+ 10 ports gets you roughly half of the open ports. The top 1,000
+ (out of 65,536 possible) finds roughly 93% of the open TCP ports and
+ more than 95% of the open UDP ports. [Fyodor, Doug Hoyte]
+
+o David integrated all of your OS detection fingerprint and correction
+ submissions from March 11 until mid-July. In the process, we
+ reached the 1500-signature milestone for the 2nd generation OS
+ detection system. We can now detect the newest iPhones, Linux
+ 2.6.25, OS X Darwin 9.2.2, Windows Vista SP1, and even the Nintendo
+ Wii. Nmap now has 1,503 signatures, vs. 1,320 in 4.68. Integration
+ is now faster and more pleasant thanks to the new OSassist
+ application developed by Nmap SoC student Michael Pattrick. See
+ http://seclists.org/nmap-dev/2008/q3/0089.html and
+ http://seclists.org/nmap-dev/2008/q3/0139.html for more details.
+
+o Nmap now works with Windows 2000 again, after being broken by our
+ IPv6 support improvements in version 4.65. A couple new dependencies
+ are required to run on Win2K, as described at
+ https://nmap.org/book/inst-windows.html#inst-win2k .
+
+o [Zenmap] Added a context-sensitive help system to the Profile
+ Editor. You can now mouse-over options to learn more about what
+ they are used for and their proper argument syntax. [Jurand Nogiec]
+
+o When Nmap finds a probe during ping scan which elicits a response,
+ it now saves that information for the port scan and later phases.
+ It can then "ping" the host with that probe as necessary to collect
+ timing information even if the host is not responding to the normal
+ port scan packets. Previously, Nmap's port scan timing pings could
+ only use information gathered during that port scan itself. A
+ number of other "port scan ping" system improvements were made at
+ the same time to improve performance against firewalled hosts. For
+ full details, see http://seclists.org/nmap-dev/2008/q3/0647.html
+ [David, Michael, Fyodor]
+
+o --traceroute now uses the timing ping probe saved from host
+ discovery and port scanning instead of finding its own probe. The
+ timing ping probe is always the best probe Nmap knows about for
+ eliciting a response from a target. This will have the most effect
+ on traceroute after a ping scan, where traceroute would sometimes
+ pick an ineffective probe and traceroute would fail even though the
+ target was up. [David]
+
+o Added dns-safe-recursion-port and dns-safe-recursion-txid
+ (non-default NSE scripts) which use the 3rd party dns-oarc.net
+ lookup to test the source port and transaction ID randomness of
+ discovered DNS servers (assuming they allow recursion at all).
+ These scripts, which test for the "Kaminsky" DNS bugs, were
+ contributed by Brandon Enright.
+
+o Added whois.nse, which queries the Regional Internet Registries
+ (RIRs) to determine who the target IP addresses are assigned
+ to. [Jah]
+
+o [Zenmap] Overhauled the default list of scan profiles based on
+ nmap-dev discussion. Users now have a much more diverse and useful
+ set of default profile options. And if they don't like any of those
+ canned scan commands, they can easily create their own in the
+ Profile Editor! [David]
+
+o Fyodor made a number of performance tweaks, such as:
+ - increase host group sizes in many cases, so Nmap will now commonly
+ scan 64 hosts at a time rather than 30
+ - align host groups with common network boundaries, such as /24 or
+ /25
+ - Increase maximum per-target port-scan ping frequency to one every
+ 1.25 seconds rather than every five. Port scan pings happen
+ against heavily firewalled hosts and the like when Nmap is not
+ receiving enough responses to normal scan to properly calculate
+ timing variables and detect packet drops.
+
+o Added a new NSE binlib library, which offers bin.pack() and
+ bin.unpack() functions for dealing with storing values in and
+ extracting them from binary strings. For details, see
+ https://nmap.org/book/nse-library.html#nse-binlib . [Philip
+ Pickering]
+
+o Added a new NSE DNS library. See this thread:
+ http://seclists.org/nmap-dev/2008/q3/0310.html [Philip Pickering]
+
+o Added new NSE libraries for base64 encoding, SNMP, and POP3 mail
+ operations. They are described at
+ http://seclists.org/nmap-dev/2008/q3/0233.html . [Philip Pickering]
+
+o Added NSE scripts popcapa (retrieves POP3 server capabilities) and
+ brutePOP3 (brute force POP3 authentication cracker) which make use
+ of the new POP3 library. [Philip Pickering]
+
+o Added the SNMPcommunitybrute NSE script, which is a brute force
+ community string cracker. Also modified SNMPsysdescr to use the new
+ SNMP library. [Philip Pickering]
+
+o Fixed the SMTPcommands script so that it can't return multiple
+ values (which was causing problems). Thanks to Jah for tracking down
+ the problem and sending a fix for SMTPcommands. Then Patrick fixed
+ NSE so it can handle misbehaving scripts like this without causing
+ mysterious side effects.
+
+o Added a new NSE Unpwdb (username/password database) library for
+ easily obtaining usernames or passwords from a list. The functions
+ usernames() and passwords() return a closure which returns a new
+ list entry with every call, or nil when the list is exhausted. You
+ can specify your own username and/or password lists via the script
+ arguments userdb and passdb, respectively. [Kris]
+
+o Nmap's Nsock-utilizing subsystems (DNS, NSE, version detection) have
+ been updated to support the -S and --ip-options flags. [Kris]
+
+o A new --max-rate option was added, which complements --min-rate. It
+ allows you to specify the maximum byte rate that Nmap is allowed to
+ send packets. [David]
+
+o Added --ip-options support for the connect() scan (-sT). [Kris]
+
+o Nsock now supports binding to a local address and setting IPv4
+ options with nsi_set_localaddr() and nsi_set_ipoptions(),
+ respectively. [Kris]
+
+o Added IPProto Ping (-PO) support to Traceroute, and fixed support for
+ IPProto Scan (-sO) and the ICMP Pings (-PE, -PP, -PM) in Traceroute
+ as well. These could cause Nmap to hang during Traceroute. [Kris]
+
+o [Zenmap] Added a "Cancel" button for cancelling a scan in progress
+ without losing any Nmap output obtained so far. [Jurand Nogiec]
+
+o Improve the netbios-smb-os-discovery NSE script to improve target
+ port selection and to also decode the system's timestamp from an SMB
+ response. [Ron at SkullSecurity]
+
+o Nmap now avoids collapsing large numbers of ports in open|filtered
+ state (e.g. just printing that 500 ports are in that state rather
+ than listing them individually) if verbosity or debugging levels are
+ greater than two. See this thread:
+ http://seclists.org/nmap-dev/2008/q3/0312.html . [Fyodor]
+
+o The NSE http library now supports chunked encoding. [Sven Klemm]
+
+o The NSE datafiles library now has generic file parsing routines, and
+ the parsing of the standard nmap data files (e.g. nmap-services,
+ nmap-protocols, etc.) now uses those generic routines. NSE scripts
+ and libraries may find them useful for dealing with their own data
+ files, such as password lists. [Jah]
+
+o Passed the big revision 10,000 milestone in the Nmap project SVN
+ server: http://seclists.org/nmap-dev/2008/q3/0682.html
+
+o Added some Windows and MinGW compatibility patches submitted by
+ Gisle Vanem.
+
+o Improved nse_init so that compilation/runtime errors in NSE scripts
+ no longer cause the script engine to abort. [Patrick]
+
+o Fix a cosmetic bug in --script-trace hex dump output which resulting
+ in bytes with the highest bit set being prefixed with ffffff. [Sven
+ Klemm]
+
+o Removed the nselib-bin directory. The last remaining shared NSE
+ module, bit, has been made static by Patrick. Shared modules were
+ broken for static builds of Nmap, such as those in the RPMS. We also
+ had the compilation problems (particularly on OpenBSD) with shared
+ modules which lead us to make PCRE static a while back. [David]
+
+o Updated rpcinfo NSE script to use the new pack/unpack (binlib)
+ functions, use the new tab library, include better documentation, and
+ fix some bugs. [Sven Klemm]
+
+o Add useful details to the error message printed when an NSE script
+ fails to load (due to syntax error, etc.) [Patrick]
+
+o Fix a bug in the NSE http library which would cause some scripts to
+ give the error: SCRIPT ENGINE: C:\Program
+ Files\Nmap\nselib/http.lua:77: attempt to call field 'parse' (a nil
+ value) [Jah]
+
+o Fixed a couple of Makefile problems (race condition) which could
+ lead to build failures when launching make in parallel mode (e.g.
+ -j4). [Michal Januszewski, Chris Clements]
+
+o Added new addrow() function to NSE tab library. It allows
+ developers to add a whole row at once rather than doing a separate
+ add() call for each column in a row. [Sven Klemm]
+
+o Completion time estimates provided in verbose mode or when you hit a
+ key during scanning are now more accurate thanks to algorithm
+ improvements by David.
+
+o Fixed a number of NSE scripts which used print_debug()
+ incorrectly. See
+ http://seclists.org/nmap-dev/2008/q3/0470.html . [Sven Klemm]
+
+o [Zenmap] The Ports/Hosts view now provides full version detection
+ values rather than just a simple summary. [Jurand Nogiec]
+
+o [Zenmap] When you edit the command-entry field, then change the
+ target selection, Nmap no longer blows away your edits in favor of
+ using your current profile. [Jurand Nogiec]
+
+o Nsock now returns data from UDP packets individually, preserving the
+ packet boundary, rather than concatenating the data from multiple
+ packets into a single buffer. This fixes a problem related to our
+ reverse-DNS system, which can only handle one DNS packet at a time.
+ Thanks to Tim Adam of ManageSoft for debugging the problem and
+ sending the patch. Doug Hoyte helped with testing, and it was
+ applied by Fyodor.
+
+o [Zenmap] Fixed a crash which would occur when you try to compare two
+ files, either of which has more than one extraports element. [David]
+
+o Added the undocumented (except here) --nogcc option which disables
+ global/group congestion control algorithms and so each member of a
+ scan group of machines is treated separately. This is just an
+ experimental option for now. [Fyodor]
+
+o [Zenmap] The Ports/Hosts display now has different colors for open
+ and closed ports. [Vladimir]
+
+o Fixed Zenmap so that it displays all Nmap errors. Previously, only
+ stdout was redirected into the window, and not stderr. Now they are
+ both redirected. [Vladimir]
+
+o NSE can now be used in combination with ping scan (e.g. "-sP
+ --script") so that you can execute host scripts without needing to
+ perform a port scan. [Kris]
+
+o [NSE] Category names are now case insensitive. [Patrick]
+
+o [NSE] Each thread for a script now gets its own action closure (and
+ upvalues). See: http://seclists.org/nmap-dev/2008/q2/0549.html
+ [Patrick]
+
+o [NSE] The script_scan_result structure has been changed to a class,
+ ScriptResult, which now holds a Script's output in an std::string.
+ This removes the need to use malloc and free to manage this memory.
+ A similar change was made to the run_record structure. [Patrick]
+
+o [NSE] Fixed a socket exhaustion deadlock which could prevent a
+ script scan from ever finishing. Now, rather than limit the total
+ number of sockets which can be open, we limit the number of scripts
+ which can have sockets open at once. And once a script has one
+ socket opened, it is permitted to open as many more as it
+ needs. [Patrick]
+
+o A hashing library (code from OpenSSL) was added to NSE. hashlib
+ contains md5 and sha1 routines. [Philip Pickering]
+
+o Fixed host discovery probe matching when looking at the returned TCP
+ data in an ICMP error message. This could formerly lead to
+ incorrectly discarded responses and the debugging error message:
+ "Bogus trynum or sequence number in ICMP error message" [Kris]
+
+o Fixed a segmentation fault in Nsock which occurred when calling
+ nsock_write() with a data length of -1 (which means the data is a
+ NUL-terminated string and Nsock should take the length itself) and
+ the Nsock trace level was at least 2. [Kris]
+
+o The NSE Comm library now defaults to trying to read as many bytes as
+ are available rather than lines if neither the "bytes" nor "lines"
+ options are given. Thanks to Brandon for reporting a problem which
+ he noticed in the dns-test-open-recursion script. [Kris]
+
+o Updated zoneTrans.nse to replace length bytes in returned domain
+ names to periods itself rather than relying on NSE's old behavior of
+ replacing non-printable characters with periods. Thanks to Rob
+ Nicholls for reporting the problem. [Kris]
+
+o Some Zenmap crashes have been fixed: trying to "refresh" the output
+ of a scan loaded from a file, and trying to re-save a file loaded
+ from the command line in some circumstances. [David]
+
+o [Zenmap] The file selector now remembers what directory it was last
+ looking at. [David]
+
+o Added an extra layer of validity checking to received packets
+ (readip_pcap), just to be extra safe. See
+ http://seclists.org/nmap-dev/2008/q3/0644.html . [Kris]
+
+o Zenmap defaults to showing files matching both *.xml and *.usr in
+ the file selector. Previously it only showed those matching *.usr.
+ The new combined format will be XML and .usr will be deprecated.
+ See http://seclists.org/nmap-dev/2008/q3/0093.html .
+
+o Nmap avoids printing the sending rate in bytes per second during a
+ TCP connect scan. Because the number of bytes per probe is not
+ known, it used to print current sending rates: 11248.85 packets / s,
+ 0.00 bytes / s. Now it will print simply print rates like "11248.85
+ packets / s". [David]
+
+o [Zenmap] Nmap's installation process now include .desktop files
+ which install menu items for launching Zenmap as a privileged or
+ non-privileged process on Linux. This will mainly affect people who
+ install nmap and Zenmap directly from the source code. [Michael]
+
+o Improved performance of IP protocol scan by fixing a bug related to
+ timing calculations on ICMP probe responses. See r8754 svn log for
+ full details. [David]
+
+o Nmap --reason output no longer falsely reports a localhost-response
+ during -PN scans. See
+ http://seclists.org/nmap-dev/2008/q3/0188.html . [Michael]
+
+o [Zenmap] The higwidgets Python package has moved so it is now a
+ subpackage of zenmapGUI. This avoids naming conflicts with Umit,
+ which uses a slightly different version of higwidgets. [David]
+
+o A bug that could cause some host discovery probes to be incorrectly
+ interpreted as drops was fixed. This occurred only when the IP
+ protocol ping (-PO) option was combined with other ping
+ types. [David]
+
+o A new scanflags attribute has been added to XML output, which lists
+ all user specified --scanflags for the scan. nmap.dtd has been
+ modified to account for this. [Michael]
+
+o The loading of the nmap-services file has been made much
+ faster--roughly 9 times faster in common cases. This is important
+ for the new (much larger) frequency augmented nmap-services
+ file. [David]
+
+o Added a script (ASN.nse) which uses Team Cymru's DNS interface to
+ determine the routing AS numbers of scanned IP addresses. They even
+ set up a special domain just for Nmap queries. The script is still
+ experimental and non-default. [Jah, Michael]
+
+o [Zenmap] Clicking "Cancel" in a file chooser in the diff interface
+ no longer causes a crash. [David]
+
+o The shtool build helper script has been updated to version 2.0.8. An
+ older version of shutil caused installation to fail when the locale
+ was set to et_EE. Thanks to Michal Januszewski for the bug
+ report. [David]
+
+o [Zenmap] Removed services.dmp and os_dmp.dmp and all the files that
+ referred to them. They are not needed with the new search
+ interface. Also removed an unused search progress bar. And some
+ broken fingerprint submission code. Yay for de-bloating! [David]
+
+o [Zenmap] Added "%F" to the Exec link in the new Zenmap desktop
+ file. We expect (hope) that this will allow dragging and dropping
+ XML files onto the icon. [David]
+
+o [Zenmap] The -o[XGASN] options can now be specified, just as you can
+ at the console. [Vladimir]
+
+o [Zenmap] You can now shrink the scan window below its default
+ size thanks to NmapOutputViewer code enhancements. [David]
+
+o [Zenmap] Removed optional use of the Psyco Python optimizer since
+ Zenmap is not the kind of CPU-bound application which benefits from
+ Psyco.
+
+o [Zenmap] You can now select more than one host in the "Ports /
+ Hosts" view by control-clicking them in the column at left.
+
+o [Zenmap] The profile editor now offers the --traceroute option.
+
+o Zenmap now uses Unicode objects pervasively when dealing with Nmap
+ text output, though the only internationalized text Nmap currently
+ outputs is the user's time zone. [David]
+
+o Unprintable characters in NSE script output (which really shouldn't
+ happen anyway) are now printed like \xHH, where HH is the
+ hexadecimal representation of the character. See
+ http://seclists.org/nmap-dev/2008/q3/0180.html . [Patrick]
+
+o Nmap sometimes sent packets with incorrect IP checksums,
+ particularly when sending the UDP probes in OS detection. This has
+ been fixed. Thanks to Gisle Vanem for reporting and investigating the
+ bug. [David]
+
+o Fixed the --without-liblua configure option so that it works
+ again. [David]
+
+o In the interest of forward compatibility, the xmloutputversion
+ attribute in Nmap XML output is no longer constrained to be a
+ certain string ("1.02"). The xmloutputversion should be taken as
+ merely advisory by authors of parsers.
+
+o Zenmap no longer leaves any temporary files lying around. [David]
+
+o Nmap only prints an uptime guess in verbose mode now, because in
+ some situations it can be very inaccurate. See the discussion at
+ http://seclists.org/nmap-dev/2008/q3/0392.html . [David]
+
+Nmap 4.68 [2008-6-28]
+
+o Doug integrated all of your version detection submissions and
+ corrections for the year up to May 31. There were more than 1,000
+ new submissions and 18 corrections. Please keep them coming! And
+ don't forget that corrections are very important, so do submit them
+ if you ever catch Nmap making a version detection or OS detection
+ mistake. The version detection DB has grown to 5,054 signatures
+ representing 486 service protocols. Protocols span the gamut from
+ abc, acap, access-remote-pc, activefax, and activemq, to zebedee,
+ zebra, zenimaging, and zenworks. The most popular protocols are
+ http (1,672 signatures), telnet (519), ftp (459), smtp (344), and
+ pop3 (201).
+
+o Nmap compilation on Windows is now done with Visual C++ Express 2008
+ rather than 2005. Windows compilation instructions have been
+ updated at https://nmap.org/book/inst-windows.html#inst-win-source .
+ [Kris]
+
+o The Nmap Windows self-installer now automatically installs the MS
+ Visual C++ 2008 runtime components if they aren't already installed
+ on a system. These are some reasonably small DLLs that are
+ generally necessary for applications compiled with Visual C++ (with
+ dynamic linking). Many or most systems already have these installed
+ from other software packages. The lack of these components led to
+ the error message "The Application failed to initialize properly
+ (0xc0150002)." with Nmap 4.65. A related change is that Nmap on
+ Windows is now compiled with /MD rather than /MT so that it
+ consistently uses these runtime libraries. The patch was created by
+ Rob Nicholls.
+
+o Added advanced search functionality to Zenmap so that you can locate
+ previous scans using criteria such as which ports were open, keywords
+ in the target names, OS detection results, etc. Try it out with
+ Ctrl-F or "Tools->Search Scan Results". [Vladimir]
+
+o Nmap's special WinPcap installer now handles 64-bit Windows machines
+ by installing the proper 64-bit npf.sys. [Rob Nicholls]
+
+o Added a new NSE Comm (common communication) library for common
+ network discovery tasks such as banner-grabbing (get_banner()) and
+ making a quick exchange of data (exchange()). 16 scripts were
+ updated to use this library. [Kris]
+
+o The Nmap Scripting Engine now supports mutexes for gracefully
+ handling concurrency issues. Mutexes are documented at
+ https://nmap.org/book/nse-api.html#nse-mutex . [Patrick]
+
+o Added a UDP SNMPv3 probe to version detection, along with 9 vendor
+ match lines. The patch was from Tom Sellers, who contributed other
+ probes and match lines to this release as well.
+
+o Added a new timing_level() function to NSE which reports the Nmap
+ timing level from 0 to 5, as set by the Nmap -T option. The default
+ is 3. [Thomas Buchanan]
+
+o Update the HTTP library to use the new timing_level functionality to
+ set connection and response timeouts. An error preventing the new
+ timing_level feature from working was also fixed. [Jah]
+
+o Optimized the doAnyOutstandingProbes() function to make Nmap a bit
+ faster and more efficient. This makes a particularly big difference
+ in cases where --min-rate is being used to specify a very high
+ packet sending rate. [David]
+
+o Fixed an integer overflow which prevented a target specification of
+ "*.*.*.*" from working. Support for the CIDR /0 is now also
+ available for those times you wish to scan the entire
+ Internet. [Kris]
+
+o The robots.nse script has been improved to print output more
+ compactly and limit the number of entries of large robots.txt files
+ based on Nmap verbosity and debugging levels. [Eddie Bell]
+
+o The Nmap NSE scripts have been re-categorized in a more logical
+ fashion. The new categories are described at
+ https://nmap.org/book/nse-usage.html#nse-categories . [Kris]
+
+o Improve AIX support by linking against -lodm and -lcfg on that
+ platform. [David]
+
+o Updated showHTMLTitle NSE script to follow one HTTP redirect if
+ necessary as long as it is on the same server. [Jah]
+
+o Michael Pattrick and David created a new OSassist application which
+ streamlines the OS fingerprint submission integration process and
+ prevents certain previously common errors. OSassist isn't part of
+ Nmap, but the system was used to integrate some submissions for this
+ release. 13 fingerprints were added during OSassist testing, and
+ some existing fingerprints were improved as well. Expect many more
+ fingerprints coming soon.
+
+o Improved the mapping from dnet device names (like eth0) and WinPcap
+ names (like \Device\NPF_{28700713...}). You can see this mapping
+ with --iflist, and the change should make Nmap more likely to work
+ on Windows machines with unusual networking configurations. [David]
+
+o Service fingerprints in XML output are no longer be truncated to
+ 2kb. [Michael]
+
+o Some laptops report the IP Family as NULL for disabled WiFi cards.
+ This could lead to a crash with the "sin->sin_family == AF_INET6"
+ assertion failure. Nmap no longer quits when this is
+ encountered. [Michael]
+
+o On systems without the GNU getopt_long_only() function, Nmap has its
+ own replacement. That replacement used to call the system's
+ getopt() function if it exists. But the AIX and Solaris getopt()
+ functions proved insufficient/buggy, so Nmap now always calls its
+ own internal getopt() now from its getopt_long_only()
+ replacement. [David]
+
+o Integrated several service match lines from Tom Sellers.
+
+o An error was fixed where Zenmap would crash when trying to load from
+ the recent scans database a file containing non-ASCII
+ characters. The error looked like
+ pysqlite2.dbapi2.OperationalError: Could not decode to UTF-8 column
+ 'nmap_xml_output' with text
+ '<?xml version="1.0" encoding="iso-8859-1"?>
+ <nmaprun profile="nmap -T Aggressive -n -v %s" scanner="nmap" hint=""
+ The error would be seen when such a scan was found in using the
+ search interface. [David]
+
+o Fix a Zenmap crash which occurred when local.getpreferredencoding()
+ returns "None". Similarly, deal with the case when a "X-MAC-KOREAN"
+ is returned by this function. Both problems were found with the
+ Zenmap crash reporter. [David]
+
+o A whole bunch of internal Zenmap cleanup was done by David to make
+ the code more logical and remove dead code.
+
+o Install icons and pixmaps under /usr/share/zenmap/{icons,pixmaps} so
+ they don't get mixed in with the files in
+ /usr/share/{icons,pixmaps}. [Jurand Nogiec]
+
+o Fixed a Zenmap command entry problem where Zenmap would lose a
+ custom command you had entered into the command entry field if you
+ changed the target field after entering the custom command. [Jurand
+ Nogiec]
+
+o The Zenmap crash reporter now includes a stack trace rather than
+ just the exception name. [David]
+
+o Zenmap now executes the proper Nmap command by honoring the
+ nmap_command_path variable in zenmap.conf. [Jurand Nogiec]
+
+o Fixed a bug which caused -PN to erroneously bail out for
+ unprivileged users. Thanks to Jabra (jabra(a)spl0it.org) for the
+ report. [Kris]
+
+o Fixed several Nmap NSE memory leaks found with Valgrind. [Kris]
+
+o Migrated some stray malloc()/realloc() calls to the Nbase
+ safe_malloc()/safe_realloc() versions which guard against certain
+ errors.
+
+o Fixed a bunch of subtle bugs, some of which could have resulted in
+ a crash, reported by Ilja van Sprundel. [Kris]
+
+o Fixed several byte-order bugs in Traceroute. [Kris]
+
+o Fixed a crash in RateMeter::update() which could lead to an error
+ saying "diff >= 0.0" assertion failed. I think the problem was
+ actually caused by SMP machines which didn't sync the clock time
+ perfectly. This lead to gettimeofday() sometimes reporting that
+ time decreased by some microseconds. Now Nmap is willing to
+ tolerate decreases of up to 1 millisecond in this function. [Fyodor]
+
+o Nmap now returns correct values for --iflist in windows even
+ if interface aliases have been set. Previously it would misreport
+ the windevices and not list all interfaces. [Michael]
+
+o Nmap no longer crashes with an 'assert' error when its told to
+ access a disabled WiFi NIC on some laptops. [Michael]
+
+o Upgraded the OpenSSL shipped for Windows to 0.9.8h. [Kris]
+
+o The NSE http library was updated to gracefully handle certain bogus
+ (non-)http responses. [Jah]
+
+o The zoneTrans.nse script now takes a "domain" script argument to
+ specify the desired domain name to transfer. You can narrow the
+ scope down with the form "zoneTrans={domain=xxx}". [Kris]
+
+o Increase write buffer length for Nmap output on Windows. This should
+ prevent error messages like: "log_vwrite: vsnprintf failed. Even
+ after increasing bufferlen to 819200, Vsnprintf returned -1 (logt ==
+ 1)." Thanks to prozente0 for the report. [Fyodor]
+
+o Fixed the --script-updatedb command, which was claiming to be
+ "Aborting database update" even when the update was performed
+ perfectly. See http://seclists.org/nmap-dev/2008/q2/0623.html .
+ Thanks to Jah for the report.
+
+Nmap 4.65 [2008-6-1]
+
+o A Mac OS X Nmap/Zenmap installer is now available from the Nmap
+ download page! It is rather straightforward, but detailed
+ instructions are available anyway at
+ https://nmap.org/book/inst-macosx.html . As a universal installer,
+ it works on both Intel and PPC Macs. It is distributed as a disk
+ image file (.dmg) containing an mpkg package. The installed Nmap
+ does include OpenSSL support. It also supports Authorization
+ Services so that Zenmap can run as root. David created this
+ installer. He wants to thank Benson Kalahar and Vlad Alexa for
+ extensive testing of the nine test releases.
+
+o The Windows version of Nmap now supports OpenSSL just as the UNIX
+ versions have for years. Both the .zip and executable installer
+ binary packages we ship from the Nmap download page now include
+ OpenSSL. [Kris, Thomas Buchanan]
+
+o We now compile in IPv6 support on Windows. In order to use this,
+ you need to have IPv6 set up. It is installed by default on Vista,
+ but must be downloaded from Microsoft for XP. See
+ http://www.microsoft.com/technet/network/ipv6/ipv6faq.mspx . [Kris]
+
+o Seven Google-sponsored Summer of Code students began working on
+ exciting Nmap projects full times. The winning students and their
+ Nmap development projects are described at
+ http://seclists.org/nmap-dev/2008/q2/0132.html .
+
+o Our WinPcap installer now starts the NPF driver running as a
+ service immediately upon installation and after restarts. You can
+ disable this with new check-boxes. This behavior is important for
+ Vista and Windows Server 2008 machines when User Account
+ Control (UAC) is enabled. [Rob Nicholls]
+
+o Nmap and Nmap-WinPcap silent installation now works. Nmap can
+ be silently installed with the /S option to the installer.
+ If you install Nmap from the zip file, you can install just
+ WinPcap silently with the /S option to that
+ installer. [Rob Nicholls]
+
+o Our WinPcap installer is now included with the Nmap Win32 zip
+ file. [Fyodor]
+
+o Numerous miscellaneous improvements were made to our Win32
+ installer, such as using the "Modern" NSIS UI for WinPcap,
+ improving the option description labels, and showing a finish
+ page in all cases. [Rob Nicholls]
+
+o The nmap-dev and nmap-hackers mailing list RSS feeds at seclists.org
+ now include message excerpts to make it easier to identify
+ interesting messages and speed the process of reading through the
+ list. Feeds for all other mailing lists archived at SecLists.Org
+ have been similarly augmented. For details, see
+ http://seclists.org/nmap-dev/2008/q2/0333.html . [David]
+
+o A new "default" Nmap Scripting Engine category was added. Only
+ scripts in this category now run by default (except for "version"
+ scripts which run when version detection was requested).
+ Previously, any scripts in the "safe" or "intrusive" categories were
+ run. 21 scripts are now in this default category. [Kris]
+
+o The NSE HTTP library now uses the host name specified on the command
+ line when making requests, which improves script scanning against
+ web servers with virtual hosts. Thanks to Sven Klemm for the patch.
+
+o Added some new and improved version detection signatures. [Brandon]
+
+o Fixed an OS detection bug that prevented the R1.UID test result from
+ being recorded properly when scanning certain printers from
+ little-endian computers. Updated nmap-os-db to compensate for
+ signatures that had an incorrect U1.RID value. [Michael]
+
+o Updated to include the latest MAC Address prefixes from the IEEE in
+ nmap-mac-prefixes [Fyodor]
+
+o Updated the SMTPcommands NSE script to work better against Postfix
+ and reduce verbosity. [Jasey DePriest, Fyodor]
+
+o Reorganized the way ping probes are handled internally. Rather than
+ being stored in the NmapOps structure, they are now stored within
+ the individual scan_lists structures. This is a cleaner
+ organization. [Michael]
+
+o Fix grepable output's "Ignored State" reporting. Only one ignored
+ state (the one with the highest numbers of ports) is shown. [David]
+
+o Update to Lua version 5.1.3 [Patrick]
+
+o Add NSE stdnse library to include tobinary, tooctal, and tohex
+ functions. [Patrick]
+
+o Fixed a bug which caused the Zenmap crash reporter to, uh,
+ crash. [David]
+
+o NSE engine was cleaned up significantly. nse_auxiliar was removed,
+ and file system manipulation functions were moved from nse_init.cc
+ into a new nse_fs.cc file. Numerous interfaces between Nmap and Lua
+ were improved. Most of these functions are now callable directly by
+ Lua. [Patrick]
+
+o Fixed a bug in the showOwner NSE script which caused it to try UDP
+ ports instead of just TCP ports. This made it very slow in the
+ common case where there are many UDP ports in the open|filtered
+ state. Thanks to Jasey DePriest for reporting the problem and Jah
+ for tracking it down and fixing it.
+
+o Nbase now generates pseudo-random numbers itself rather than using
+ /dev/urandom on Linux and the terrible rand() function on Windows.
+ The new system uses ARC4 based on libdnet's
+ implementation. [Brandon]
+
+o Made a number of updates and improvements to the Zenmap Users' Guide
+ at https://nmap.org/book/zenmap.html . [David]
+
+o Fixed the way Zenmap handles command-line entry to prevent your
+ custom command-line to be overwritten with the current profile's
+ command just because you edited the target field. [Jurand]
+
+o Nsock was improved to better support reading from non-network
+ descriptors such as stdin. This is important for the upcoming Ncat
+ project Mixter is working on. [Mixter]
+
+o A bug was fixed that could cause Zenmap to crash when loading a
+ results file that had multibyte characters in it. The error looked
+ like:
+ Gtk-ERROR **: file gtktextsegment.c: line 196
+ (_gtk_char_segment_new): assertion failed:
+ (gtk_text_byte_begins_utf8_char (text))
+ [David]
+
+o Removed a superfluous test for the existence of the C++ compiler in
+ the configure script. The test was not robust when configured with
+ CXX="ccache g++". Thanks to Rainer Müller for the report.
+
+o Optimized cached DNS lookups so they are equally efficient when
+ running on big-endian or little-endian systems. [Michael]
+
+o Fixed the nmap_command_path Zenmap configuration variable so that it
+ is actually used to start the specified Nmap executable
+ path. [Jurand Nogiec]
+
+o Nmap now reports scan start and end times for individual hosts
+ within a larger scan. The information is added to the XML host
+ element like so: <host starttime="1198292349" endtime="1198292370">
+ It is also printed in normal output if -d or "-v -v" are
+ specified. [Brandon, Kris, Fyodor]
+
+o "make uninstall" now uninstalls Zenmap as well as Nmap. The
+ uninstall_zenmap script now deletes directories that were
+ installed. [David]
+
+o Fixed a bug which caused Nmap to send bad checksums on Solaris 10
+ x86. This was due to a workaround for an Ancient Solaris 2.1 bug
+ which activated when the OS string matched "solaris2.1*". The
+ problem has now been resolved until Solaris 20 comes out and hits
+ our "solaris2.2*" bug workarounds. Thanks to Nathan Bills for the
+ problem report. Fixed by Fyodor.
+
+o Fixed a minor memory leak in getpts_simple which occurs when no
+ ports are to be added to 'list'. 'porttbl' is now free'd regardless
+ of how the function returns. [Michael]
+
+o Nmap now understands the RFC 4007 percent syntax for IPv6 Zone IDs.
+ On Windows, this ID has to be a numeric index. On Linux and some
+ other OS's, this ID can instead be an interface name. Some examples
+ of this syntax:
+ fe80::20f:b0ff:fec6:15af%2
+ fe80::20f:b0ff:fec6:15af%eth0
+ [Kris]
+
+o The Zenmap installer and uninstaller are more careful about escaping
+ filenames and dealing with an installation root (DESTDIR). [David]
+
+o Since assert() calls are used for various security-related tests,
+ their safety is now ensured by keeping NDEBUG undefined throughout
+ Nmap, Nbase and Nsock. [Kris]
+
+o Fix a couple bugs in the way the Nmap build system checked for an
+ existing LUA library. A bashism caused one test to fail on system
+ which don't use bash as /bin/sh, and another bug fixed --with-liblua
+ configure option for specifying your own liblua. [Daniel
+ Roethlisberger]
+
+o The NSE nmap.registry.args table is now available, albeit empty,
+ when --script-args isn't used. Now scripts don't need to check if
+ it's nil before attempting to index it. [Kris]
+
+o Changed SSLv2-support.nse so that it only enumerates the list of
+ available ciphers with a verbosity level of at least two or with
+ debugging enabled. [Kris]
+
+o Replaced kibuvDetection.nse with version detection match lines which
+ work better than the script. [Kris, Brandon]
+
+o Removed mswindowsShell.nse as there is a version detection NULL
+ probe match which does the same thing. [Brandon, Fyodor, Kris]
+
+o Updated IANA assignment IP list for random IP (-iR)
+ generation. [Kris]
+
+Nmap 4.62 [2008-5-3]
+
+o Added a new --min-rate option that allows specifying a minimum rate
+ at which to send packets. This allows you to override Nmap's
+ congestion control algorithms and request that Nmap try to keep at
+ least the rate you specify. The rate is given in packets per
+ second. Read more in the Nmap man page
+ (https://nmap.org/book/man-performance.html) [David]
+
+o Create /nmap/macosx directory in SVN with files necessary to build
+ binary Mac OS X Nmap/Zenmap packages. We are trying to create
+ binary installer packages which are as useful and easy to use as the
+ Windows installer. This has involved a lot of work by David. We
+ aren't quite yet distributing the results on the Nmap download page,
+ but testing our beta versions is useful. You can find the latest
+ universal (PPC and Intel) binary test version by looking at David
+ Fifield's posts at http://seclists.org/nmap-dev/2008/q2/author.html .
+ You can also read /nmap/macosx/README in svn for more info.
+
+o Nmap 2008 Summer of Code students have began working (though full
+ time doesn't start until late May). Learn about the winners and
+ their projects at http://seclists.org/nmap-dev/2008/q2/0132.html .
+
+o Brandon added/modified a whole bunch of version detection signatures
+ based on systems discovered when scanning UCSD's network.
+
+o Reformat Nmap COPYING file (e.g. remove C comment markers, reduce
+ line length) during Nmap windows build so that it looks much better
+ when presented by the Windows executable (NSIS) installer. Thanks
+ to Jah for the patch, which was modified slightly by Fyodor.
+
+o Added NSE Datafiles library which reads and parses Nmap's nmap-*
+ data files for scripts. The functions (parse_protocols(),
+ parse_rpc() and parse_services()) return tables with numbers
+ (e.g. port numbers) indexing names (e.g. service names). The
+ rpcinfo.nse script was also updated to use this library. [Kris]
+
+o Fixed a bug in the nbase random number generator (and the way it
+ interacted with Nmap and MS Windows) which caused duplicates in some
+ instances. Thanks to Jah for reporting the problem and working with
+ Brandon Enright, Fyodor and Kris to fix it.
+
+o It turns out that hours contain 60 minutes, not 24. Fixed a scan
+ status message which was rolling over the hours column
+ prematurely. [David]
+
+o Added scripting options to Zenmap profile editor and command wizard
+ to make use of NSE. [David]
+
+o Zenmap now prints an exception message rather than segfaulting when
+ it can't open a display (such as when trying to connect to an X
+ server as an unauthorized user). Thanks to Aaron Leininger for the
+ initial report and Guilherme Polo for suggesting the fix.
+
+o Now ports in the "unfiltered" state can be selected for attention by
+ NSE scripts. [Kris]
+
+o Nbase random number generation system now avoids having a high-bit
+ of zero in every other byte on Windows due to Windows having such a
+ low RAND_MAX. [Jah]
+
+o Added release dates for each Nmap version to this CHANGELOG going
+ back to Nmap 3.00 (July 31, 2002). Dates are in MM/DD/YY format.
+ If someone wants to track down dates for the last 22% of the file
+ (pre-3.00), you are welcome to do so and send a patch. Searching
+ Google for the version number and site:seclists.org seems to work
+ well. [Fyodor]
+
+o Nmap RPM builds now use the versions of libdnet, libpcap, libpcre,
+ and liblua included with Nmap rather than whatever happens to be
+ installed on the build system. [David]
+
+o Zenmap can now be installed in and run in directories with a space
+ in the name. [David]
+
+o Fixed an assertion failure ("Target.cc:396: void
+ Target::stopTimeOutClock(const timeval*): Assertion
+ 'htn.toclock_running == true' failed.") caused when a host had NSE
+ scripts in multiple runlevels. This also fixes --host-timeout
+ behavior in NSE. [Kris]
+
+o Reduce the maximum number of socket descriptors which Nmap is
+ allowed to open concurrently. This resoles a bug which could cause
+ "Too many open files" error on Mac OS X when not running as
+ root. [David]
+
+o Canonicalized service names between nmap-service-probes (version
+ detection DB) and nmap-services (port scanning DB). [Kris]
+
+o Removed the "class" attribute from the tcpsequence element in XML
+ output. For a long time it had always been "unknown class" because
+ Nmap doesn't calculate a class anymore. The XML output version has
+ been increased from 1.01 to 1.02. [David]
+
+o Fixed a bug on Win32 which caused an infinite loop when Nmap
+ encountered certain broadcast addresses. [Dudi Itzhakov]
+
+o Fix MingW compilation by adding a signal.h include to
+ main.cc. [Gisle Vanem]
+
+o Fix the test in our build system to determine if liblua is already
+ available or not. For example, the test needed to link with -lm
+ since some systems require that. [David]
+
+o Added TIMEVAL_BEFORE and TIMEVAL_AFTER macros to test whether one
+ timeval is earlier than another while avoiding possible integer
+ overflows in a naive approach we were using previously. [David]
+
+o Adjusted a bunch of code to avoid compilation warning messages on
+ some Linux machines. [Andrew J. Bennieston]
+
+o Fixed the NmapArpCache so that it actually works. Previously, Nmap
+ was always falling back to the system ARP cache. Of course this
+ raises the question of whether NmapArpCache is needed in the first
+ place. [Daniel Roethlisberger]
+
+o Fix a Zenmap bug which could cause the error message
+ "zenmapCore.NmapOptions.OptionNotFound: No option named '' found!"
+ if you create a new profile without checking any options then try to
+ edit it. [David]
+
+o Zenmap now shows a more helpful error message when there is an error
+ in executing Nmap. [David]
+
+o Zenmap now creates the directory ~/.zenmap-etc to store
+ automatically generated GTK+ and Pango files. They used to go in the
+ application bundle but that doesn't work on a read-only file system
+ or disk image. This is what Wireshark does (~/.wireshark-etc),
+ although the directory could be called anything. It doesn't have to
+ persist across sessions.
+
+o Added a mechanism in Zenmap for including extra executable search
+ paths on specific platforms, so we can include /usr/local/bin in
+ PATH on Mac OS X by default and add the Nmap install directory on
+ Windows. [David]
+
+o We now use --no-strip when building Zenmap Mac OS X packages to
+ prevent many mysterious warnings which occur when the binary is
+ stripped. [David]
+
+o When Zenmap invokes Nmap, it now copies the whole environment for
+ the Nmap invocation rather than just providing $PATH. Windows may
+ need this to do proper name resolution. [David]
+
+o Corrected uptime parsing and reporting in SNMPsysdesr.nse for an
+ uptime of less than 46 hours. [Kris]
+
+o Modified the use of CXXFLAGS, CFLAGS, and CPPFLAGS in Nmap build
+ system to work better when building Mac OS X universal
+ binaries. [David]
+
+o Added many additional PCRE option flags to the list returned by the
+ NSE pcre.flags() function. [Kris]
+
+o Changed the NSE function nmap.set_port_state() so that it checks to
+ see if the requested port is already in the requested state. This
+ prevents "Duplicate port" messages during the script scan and the
+ inaccurate "script-set" state reason. [Kris]
+
+o Canonicalize NSE script license text--more than half did not even
+ spell license correctly. They all still say that they are under
+ Nmap's license, just with consistent capitalization and spelling,
+ and now a link to Nmap legal page at
+ https://nmap.org/book/man-legal.html .
+
+o Updated ripeQuery.nse to not print extraneous whitespace. [Kris]
+
+o Switched telnet brute force password cracking NSE (bruteTelnet.nse)
+ to vulnerability category so it isn't executed by default. It can
+ take too long to run. [Eddie]
+
+o NSE status messages now print host name and IP, rather than just the
+ host name (which was blank when Nmap didn't know it). [Jah]
+
+o Allocate 128 characters for the idle scan ScanProgressMeter
+ title. Previously it was 32 characters. The "idle scan against " and
+ the \0 terminator take up 19 characters, leaving only 13, which
+ isn't enough to represent all IP addresses, let alone host
+ names. Bug reported by Stephan Fijneman, fixed by David.
+
+Nmap 4.60 [2008-3-15]
+
+o Nmap has moved. Everything at http://insecure.org/nmap/ can now be
+ found at https://nmap.org . That should save your fingers from a
+ little bit of typing. Even though transparent redirectors are in
+ place for the old URLs, please update your links and bookmarks. And
+ if you don't have a link to Nmap on your web site, now is a good
+ time to add one :).
+
+o All of your OS detection fingerprints up until March 10, 2008 have
+ now been integrated by David. The second generation database has
+ grown from 1,085 fingerprints representing 421 operating
+ systems/devices, to 1,304 fingerprints representing 478 systems.
+ That is an increase of more than 20%. New fingerprints were added
+ for Mac OS X Tiger, iPod Touch, the La Fonera WAP, FreeBSD 7.0,
+ Linux 2.6.24, Windows 2008, Vista, OpenBSD 4.2, and of course
+ hundreds of broadband routers, VoIP phones, printers, some crazy
+ oscilloscope, etc. We get a ton of new fingerprint submissions, but
+ not as many corrections. Please remember to visit
+ https://nmap.org/submit/ if Nmap gives you bad results, whether they
+ are completely wrong or just a slight mistake (like Nmap says Linux
+ 2.6.20-2.6.23, but you're running 2.6.24). Of course you need to be
+ certain you know exactly what is running on the target before you do
+ this.
+
+o All of your service fingerprints and corrections submitted until
+ January 14, 2008 have now been integrated by Doug. As usual, he has
+ documented his adventures at http://hcsw.org/blog.pl/33 . More than
+ a hundred signatures were added, growing the database to 4,645
+ signatures for 457 services. Corrections are welcome for service
+ detection too -- visit https://nmap.org/submit/ if you get incorrect results.
+
+o Nmap now saves the target name (if any) specified on the command
+ line, since this can differ from the reverse DNS results. It can be
+ particularly important when doing HTTP tests against virtual hosts.
+ The data can be accessed from target->TargetName() from Nmap proper
+ and host.targetname from NSE scripts. The NSE HTTP library now uses
+ this for the Host header. Thanks to Sven Klemm for adding this
+ useful feature.
+
+o Added NSE HTTP library which allows scripts to easily fetch URLs
+ with http.get_url() or create more complex requests with
+ http.request(). There is also an http.get() function which takes
+ components (hostname, port, and path) rather than a URL. The
+ HTTPAuth, robots, and showHTMLTitle NSE scripts have been updated to
+ use this library. Sven Klemm wrote all of this code.
+
+o Fixed an integer overflow in the DNS caching code that caused nmap
+ to loop infinitely once it had expunging the cache of older
+ entries. Thanks to David Moore for the report, and Eddie Bell for
+ the fix.
+
+o Fixed another integer overflow in the DNS caching code which caused
+ infinite loops. [David]
+
+o Added IPv6 host support to the RPC scan. Attempting this before
+ (via -sV) caused a segmentation fault. Thanks to Will Cladek for
+ the report. [Kris]
+
+o Fixed an event handling bug in NSE that could cause execution of
+ some in-progress scripts to be excessively delayed. [Marek]
+
+o A new NSE table library (tab.lua) allows scripts to deliver better
+ formatted output. The Zone transfer script (zoneTrans.nse) has been
+ updated to use this new facility. [Eddie]
+
+o Rewrote HTTPpasswd.nse to use Sven's excellent HTTP library and to
+ do some much-needed cleaning up. [Kris]
+
+o Added a new MsSQL version detection probe and a bunch of match lines
+ developed by Tom Sellers.
+
+o Added a new service detection probe and signatures for the memcached
+ service [Doug]
+
+o Added new service detection probes and signatures for the Beast
+ Trojan and Firebird RDBMS. [Brandon Enright]
+
+o Fixed a crash in Zenmap which occurred when attempting to edit or
+ create a new profile based on an existing one when there wasn't one
+ selected. The error message was:
+ 'NoneType' object has no attribute 'toolbar'
+ Now a new Profile Editor is opened. Thanks to D1N (d1n@inbox.com)
+ for the report. [Kris]
+
+o Fixed another crash in Zenmap which occurred when exiting the
+ Profile Editor (while editing an existing profile) by clicking the
+ "X", then going to edit the same profile again. The error message
+ was: "No option named '' found!". Now the same window that appears
+ when clicking Cancel comes up when clicking "X". Thanks to David
+ for reporting this bug. [Kris]
+
+o Another Zenmap bug was fixed: ports consolidated into "extra ports"
+ groups are now counted and shown in the "Host Details" tab. The
+ closed, filtered and scanned port counts in this tab didn't contain
+ this information before so they were usually very inaccurate. [Kris]
+
+o Another Zenmap bug was fixed: the --scan-delay and --max-scan-delay
+ buttons ("amount of time between probes") under the Advanced tab in
+ the Profile Editor were backwards. [Kris]
+
+o Added the UDP Scan (-sU) and IPProto Ping (-PO) to Zenmap's Profile
+ Editor and Command Wizard. [Kris]
+
+o Reordered the UDP port selection for Traceroute: a closed port is
+ now chosen before an open one. This is because an open UDP port is
+ usually due to running version detection (-sV), so a Traceroute
+ probe wouldn't elicit a response. [Kris]
+
+o Add Famtech Radmin remote control software probe and signatures to
+ the Nmap version detection DB. [Tom Sellers, Fyodor]
+
+o Add "Connection: Close" header to requests from HTTP NSE scripts so
+ that they finish faster. [Sven Klemm]
+
+o Update SSLv2-support NSE script to run against more services which
+ are likely SSL. [Sven Klemm]
+
+o A bunch of service name canonicalization was done in the Nmap
+ version detection file by Brandon Enright (e.g. capitalizing D-Link
+ and Netgear consistently).
+
+o Upgraded the shipped LibPCRE from version 7.4 to 7.6. [Kris]
+
+o Updated to latest (as of 3/15) autoconf config.sub/config.guess
+ files from http://cvs.savannah.gnu.org/viewvc/config/?root=config.
+ [Fyodor]
+
+o We now escape newlines, carriage returns, and tabs (\n\r\t) in XML
+ output. While those are allowed in XML attributes, they get
+ normalized which can make formatting the output difficult for
+ applications which parse Nmap XML. [Joao Medeiros, David, Fyodor]
+
+o The Zenmap man page is now installed on Unix when "make install" is
+ run. This was supposed to work before, but didn't. [Kris]
+
+o Fixed a man page bug related to our DocBook to Nroff translation
+ software producing incorrect Nroff output. The man page no longer
+ uses the ".nse" string which was being confused with the Nroff
+ no-space mode command. [Fyodor]
+
+o Fixed a bug in which some NSE error messages were improperly escaped
+ so that a message including "c:\nmap" would end up with a newline
+ between "c:" and "map".
+
+o Updated IANA assignment IP list for random IP (-iR)
+ generation. [Kris]
+
+o The DocBook XML source code to the Nmap Scripting Engine docs
+ (https://nmap.org/book/nse.html) is now in SVN under docs/scripting.xml .
+
+Nmap 4.53 [2008-1-12]
+
+o Improved Windows executable installer by making uninstall work better
+ on systems which changed the default install path. The shortcut is
+ also now deleted properly on Vista. [Rob Nicholls]
+
+o Windows installer is now generated using NSIS 2.34 rather than
+ 2.13. [Fyodor]
+
+o Added UPnP-info NSE script by Thomas Buchanan. It gathers
+ information from the UPnP service (UDP port 1900) which listens on
+ many network devices such as routers, printers, and networked media
+ players.
+
+o Fixed a --traceroute bug (assertion failure crash) which occurred
+ when the first hop of the first host in a tracegroup (reference
+ trace) times out. Thanks to Sebastián García for the bug report and
+ testing, and Eddie for the patch.
+
+o Fix a problem which prevented proper port number matching in
+ NSE scripts (port_or_service function) due to a variable
+ shadowing bug. [Sven Klemm]
+
+o Improved rpcinfo.nse to better sort and display available RPC
+ services. [Sven Klemm]
+
+Nmap 4.52 [2008-1-1]
+
+o Fixed Nmap WinPcap installer to use CurrentVersion registry key on
+ Windows rather than VersionNumber to more reliably detect Vista
+ machines. This should prevent the XP version of Packet.dll from
+ being installed on Vista. [Rob Nicholls]
+
+o The Nmap Scripting Engine (NSE) now supports run-time interaction
+ and the Nmap --host-timeout option. [Doug]
+
+o Added nmap.fetchfile() function for scripts so they can easily find
+ Nmap's nmap-* data files (such as the OS/version detection DBs, port
+ number mapping, etc.) [Kris]
+
+o Updated rpcinfo.nse to use nmap.fetchfile() to read from nmap-rpc
+ instead of having a huge table of RPC numbers. This reduced the
+ script's size by nearly 75%. [Kris]
+
+o Fixed multiple NSE scripts that weren't always properly closing their
+ sockets. The error message was:
+ "bad argument #1 to 'close' (nsock expected, got no value)" [Kris]
+
+o Added a new version detection probe for the Trend Micro OfficeScan
+ product line. [Tom Sellers, Doug]
+
+Nmap 4.51BETA [2007-12-21]
+
+o David wrote a detailed Zenmap guide: https://nmap.org/book/zenmap.html
+
+o Added rpcinfo.nse script, which contacts a listening RPC portmapper
+ and reports the listening services and port information (like
+ rpcinfo -p does). The script was written by Sven Klemm. Fyodor
+ then enhanced the RPC number list with all of the entries from
+ nmap-rpc.
+
+o Added a new NSE script (MySQLinfo) which prints MySQL server information
+ such as the protocol and version numbers, status, thread id, capabilities,
+ and password salt. [Kris]
+
+o Nmap's output options (-oA, -oX, etc.) now support strftime()-like
+ conversions in the filename. %H, %M, %S, %m, %d, %y, and %Y are
+ all the same as in strftime(). %T is the same as %H%M%S, %R is the
+ same as %H%M, and %D is the same as %m%d%y. A % followed by any
+ other character just yields that character (%% yields a %). This
+ means that "-oX 'scan-%T-%D.xml'" uses an XML file in the form of
+ "scan-144840-121307.xml". [Kris]
+
+o Fixed WinPcap installer to install the right version of Packet.dll
+ on Windows Vista. [Fyodor]
+
+o Fixed our WinPcap installer so that it waits for a WinPcap uninstall
+ (if needed) to complete before trying to install the new WinPcap.
+ [Jah]
+
+o Fix a bunch of warning/error messages which contained an extra
+ newline. [Brandon Enright]
+
+o Fixed an error when attempting to scan localhost as an unprivileged
+ user on Windows (nmap --unprivileged localhost). The error was:
+ Skipping SYN Stealth Scan against localhost (127.0.0.1) because
+ Windows does not support scanning your own machine (localhost) this
+ way.
+ Now connect scan is used instead of SYN scan. [David]
+
+o Fixed a bug that prevented the --resume option from working on
+ Windows. The error message was:
+ ..\utils.cc(996): CreateFileMapping(), file 'testresume', length 103,
+ mflags 000 00006: The parameter is incorrect.(87)
+ [Fixed by David, reported by Rob Nicholls]
+
+o Zenmap's new web page (https://nmap.org/zenmap/) is now shown in the
+ Zenmap about dialogue.
+
+o On Windows, paths beginning with \ are now considered absolute when
+ used with the --script option. jah (jah(a)zadkiel.plus.com) suggested
+ this. [David]
+
+o Zenmap no longer double-spaces its output (by inadvertently
+ duplicating newlines) when viewing scan results that were saved to a
+ file. [Joao Medeiros]
+
+o Upgraded the shipped LibPCRE from version 7.2 to 7.4. [Kris]
+
+o Fixed Zenmap crash that occurred when selecting Help from the Compare
+ Results window. [Kris]
+
+o Updated robots.nse to prevent printing robots.txt comments. [Kris]
+
+o Many version detection match lines were improved to match even when
+ newlines appear in binary data returned by the service. [Fixed by
+ Doug, suggested by Lionel Cons]
+
+Nmap 4.50 [2007-12-13]
+
+o Bumped up the version number to the big 10th anniversary 4.50
+ release! See http://insecure.org/stf/Nmap-4.50-Release.html .
+
+Nmap 4.49RC7 [2007-12-10]
+
+o A Zenmap crash was fixed. Scanning once, then scanning another target
+ on the same scan tab caused an ImportError ("list index out of range")
+ in zenmapGUI/ScanNotebook.py. Joao Medeiros reported the
+ bug. [David]
+
+o Updated a couple of version detection signatures due to problem
+ reports by Lionel Cons. [Doug]
+
+Nmap 4.49RC6 [2007-12-8]
+
+o NSE scripts can now be specified by absolute path to the --script
+ option. This was supposed to work before, but didn't. [David]
+
+o Insert a path separator in returned paths in init_scandir on
+ Windows. Otherwise options such as "--scripts=scripts" (where
+ scripts is a directory) were failing with error messages about being
+ unable to access things like "C:\Nmap\scriptsanonFTP.nse" (should be
+ "C:\Nmap\scripts\anonFTP.nse"). [David]
+
+o Add some "local" declarations to xamppDefaultPass.nse to avoid
+ errors like: "SCRIPT ENGINE: [string "Global Access"]:1: Attempted
+ to change the global 'socket' ..." [David]
+
+o NSE "shortports" function now by default matches ports in the
+ "open|filtered" state as well as "open" ones. [Diman]
+
+o Nsock msevent_new and msevent_delete calls fixed to handle NULL I/O
+ descriptors. This should fix a reported bus error crash. [Diman]
+
+o Prevent old bit.dll and pcre.dll files from being installed in
+ nselib directory by Windows executable installer. Bit.dll is still
+ installed in nselib-bin where it belongs. Thanks to Rob Nicholls for
+ reporting the problem. [Fyodor]
+
+
+Nmap 4.49RC5 [2007-12-8]
+
+o Don't install the orphaned and incomplete Zenmap HTML documentation.
+ Instead point to the Nmap documentation site, which is provides more
+ comprehensive and up-to-date Nmap docs. We're rapidly improving the
+ online Zenmap docs as well. Of course the Nmap and (new!) Zenmap
+ man pages are still installed on Unix. [Fyodor]
+
+o Fix mswin32/Makefile so that the new nselib-bin directory is
+ properly included in the Nmap win32 zipfile distribution. Thanks
+ to Rob Nicholls for reporting the problem. [Fyodor]
+
+o Fix host reason reported when the target is found to be "down" due
+ to no response. Nmap now reports "no-response" rather than
+ "unknown-reason" [Kris]
+
+Nmap 4.49RC4 [2007-12-7]
+
+o David did a huge OS fingerprint integration marathon, going through
+ all of your submissions (more than 1600) since August 20. The 2nd
+ generation database has grown more than 30% to 1,085 entries! Many
+ of the existing fingerprints were improved as well. Notable new or
+ greatly improved entries include the iPhone, iPod Touch, Mac OS X
+ Leopard FreeBSD 7.0, Linux 2.6.23, Nokia cell phones (E61, E65, E70,
+ E90, N95), and OpenBSD 4.2. Of course there were all manner of new
+ printers, cable/DSL routers, switches, enterprise routers, IP
+ phones, cell phones and a heap of obscure equipment such as the
+ BeaconMedaes medical gas alarm. Windows Vista fingerprints were
+ also improved significantly. Please keep those OS fingerprint
+ submissions and corrections coming!
+
+o Doug integrated all of your version detection fingerprints and
+ corrections since October 4. The DB now has an incredible 4,542
+ signatures for 449 service protocols. The service protocols with
+ the most signatures are http (1,473), telnet (459), ftp (423), smtp
+ (327), pop3 (188), http-proxy (111), ssh (104), imap (103), irc (46)
+ and nntp (44).
+
+o Included the netbios-smb-os-discovery.nse script which uses NetBIOS
+ and SMB queries to guess OS version. This script was written by
+ Judy Novak and contributed by Sourcefire.
+
+o Canonicalized the interface type numbers used internally by
+ libdnet. Also Libdnet now recognizes devices with type
+ INTF_TYPE_IEEE80211 as Ethernet devices. This ought to make
+ wireless network scanning work on Windows Vista. For more background
+ see http://seclists.org/nmap-dev/2007/q4/0391.html . [David]
+
+o Documented the "--script all" option in the man page and NSE
+ article. This option executes all scripts in the NSE database
+ regardless of category. [Fyodor]
+
+o NSE scripts can now be specified by name without the .nse
+ extension. So instead of using "--script
+ bruteTelnet.nse,HTTPpasswd.nse,SQLInject.nse,robots.nse", you can
+ just pass "--script bruteTelnet,HTTPpasswd,SQLInject,robots". [Kris]
+
+o Removed some auto-generated files from the new nselib-bin directory
+ as they could cause compatibility problems. Also updated
+ mswin32/Makefile to reflect the new nselib-bin DLL location [David]
+
+o ripeQuery.nse was updated to avoid printing some useless
+ information. [Kris]
+
+o Compatibility with systems that have the pcre.h header file in its
+ own pcre directory should now be fixed for real. [Fyodor]
+
+o Enhanced the radmind service detection signature and added a
+ deprecated radmind port to nmap-services. [Matt Selsky]
+
+o Zenmap now gives better errors to stdout when it can't even pop up a
+ dialog box (such as when PyGTK can't be loaded). [David]
+
+o Fixed a Zenmap crash which occurred on Mac OS X and possibly other
+ platforms. The error message said: "object of type
+ 'ScanHostDetailsPage' has no len()". [David]
+
+o Fixed a crash which occurred when an NSE script called
+ set_port_version() at times that version scanning was not
+ enabled. [Diman]
+
+o Fixed the NSIS installer so that it does not include some excess
+ files (mswin32/* and .svn). Thanks to Alan Jones for reporting the
+ problem. [Fyodor]
+
+o Renamed some Zenmap Python packages to allow Zenmap and Umit to be
+ installed at the same time. [David]
+
+o Updated nmap-mac-prefixes with the latest IEEE data. Also added
+ back Cooperative Linux virtual NIC which was inadvertently removed in
+ a previous release. [Fyodor]
+
+Nmap 4.23RC3 [2007-11-27]
+
+o Zenmap now has a man page! It isn't very long yet, but covers the
+ basics. Thanks to David for writing this.
+
+o A new NSE script, promiscuous.nse, scans devices on a local network
+ looking for sniffers (devices running in promiscuous mode). This
+ script is from Marek Majkowski and is the first to use the NSE pcap
+ extension system (which he also wrote). The script is only in the
+ discovery category for now so it does not run by default. Specify
+ it by name for now. We may make it default after the upcoming
+ stable release.
+
+o Nmap can now handle IP aliases on Windows. A given device such as
+ eth0 might have several IP addresses. Nmap will use the primary
+ address, so you need to use -S if you want to specify a different
+ one. [David]
+
+o An exception (rather than luaL_argerror) is now thrown when an SSL
+ connection is attempted but OpenSSL isn't available. [David]
+
+o There is now an nmap.have_ssl NSE function so you can avoid doing
+ NSE probes when SSL isn't available. [David]
+
+o Zenmap gives clearer error messages when an import error occurs or
+ Zenmap's dump files aren't found. [David]
+
+o Zenmap now looks for its data files relative to the directory of the
+ zenmap script to allow running from the build/svn directory. [David]
+
+o NSE C modules are now installed into an nselib-bin directory. This
+ was needed to make the dns-test-open-recursion and zoneTrans NSE
+ scripts work properly, since they use the NSE bit library
+ (bit.so). [Diman, Fyodor]
+
+o Axillary autoconf scripts such as config.guess, config.sub,
+ depcomp, install-sh, and ltmain.sh were deleted from Nmap
+ subdirectories because configure is smart enough to use the ones from
+ the parent directory. This decreases the Nmap source tarball and svn
+ checkout sizes. [David]
+
+o Nmap now compiles on systems which have the libPCRE include file in
+ pcre/pcre.h rather than just pcre.h. Thanks to Lionel Cons for the
+ report. [Fyodor]
+
+o Nmap binary is now stripped again, but it now uses -x to avoid
+ stripping dynamically loaded NSE functions on Mac OS X. [David]
+
+o Normalized Zenmap's handling of results files specified on the
+ command line. In some cases, Zenmap would ignore specified results
+ files just because some unrelated options were used. [David]
+
+o configure.ac now uses literal directory names rather than variable
+ references in calls to AC_CONFIG_SUBDIRS. This removes an annoying
+ warning message which has existed for years when you regenerate
+ configure. [David]
+
+o Fixed a configure.ac error which prevented you from specifying an
+ alternative libnsock directory. [David]
+
+o Check for Python in configure only if Zenmap is requested, and bail
+ out if Zenmap is explicitly requested (--with-zenmap) and Python is
+ not available. [David]
+
+o Removed some unimplemented Zenmap command-line options and function
+ calls. [David]
+
+Nmap 4.23RC2 [2007-11-18]
+
+o Static code analysis company Coverity generously offered to scan the
+ Nmap code base for flaws, and Kris volunteered to go through their
+ report and fix the ones which were actual/possible problems rather
+ than false positives. Their system proved quite useful, and about a
+ dozen potential problems were fixed. For details, see Kris'
+ 11/15/07 SVN commits.
+
+o Improved the Zenmap RPM file so that it should work on either Python
+ 2.4 or Python 2.5 machines. It should also work on any platform (x86,
+ x86_64, etc.) [David]
+
+o WinPcap updated from version 4.0.1 to the new 4.0.2 release. [David]
+
+o Added PPTP version detection NSE script (PPTPversion.nse) from
+ Thomas Buchanan. Nmap now ships with 38 NSE scripts.
+
+o A number of Solaris compilation fixes were added. Hopefully it
+ works for more Solaris users now. We also fixed an alignment issue
+ which could cause a bus error on Solaris. [David]
+
+o When an NSE script changes the state of a port (e.g. from
+ open|filtered to open), the --reason flag is now changed to
+ "script-set". Also, the port state reason is now available to NSE
+ scripts through a "reason" element in the port-table. Thanks to
+ Matthew Boyle for the patch.
+
+o When version detection changes the state of a port, the reason field
+ is now updated as well (to udp-response or tcp-response as
+ applicable). Thanks to Thomas Buchanan for the patch.
+
+o Reworded an error message after a woman reported that it was "highly
+ offensive and sexist". She also noted that "times have changed and
+ many women now use your software" and "a sexist remark like the one
+ above should have no place in software." The message was: "TCP/IP
+ fingerprinting (for OS scan) requires root privileges. Sorry,
+ dude.". I checked svn blame to call out the insensitive,
+ chauvinistic jerk who wrote that error message, but it was me :).
+
+o We received a bug report through Debian entitled "Nmap is a
+ clairvoyant" because when you run it with -v on September 1 1970, it
+ reports "Happy -27th Birthday to Nmap, may it live to be 73!". We
+ have decided that clairvoyance is a feature and ignored the report.
+
+o We no longer strip the Nmap binary before installing it, as that was
+ leading to a runtime error on Mac OS X: "lazy symbol binding failed:
+ Symbol not found: _luaL_openlib". Unfortunately, the unstripped
+ Nmap binary can be much larger (e.g. 4MB vs. 800KB) so we are
+ working on a better fix which allows us to continue stripping the
+ binary on other platforms.
+
+o Zenmap configuration/customization files renamed from ~/.umit to
+ ~/.zenmap and umit.conf to zenmap.conf, etc. [David]
+
+o Fixed a Zenmap bug where if you try to edit a profile and then
+ click cancel, that profile ends up deleted. [Luis A. Bastiao]
+
+o The NSE shortport rules now allow for multiple matching states
+ (e.g. open or open|filtered) to be specified. This silently failed
+ before. [Eddie]
+
+o Regenerate configure scripts with Autoconf 2.61 and update
+ config.guess and config.sub files with the latest versions from
+ http://cvs.savannah.gnu.org/viewvc/config/?root=config . [David]
+
+Nmap 4.23RC1 [2007-11-10]
+
+o NmapFE is now gone. It had a good run as the default Nmap GUI
+ for more than 8 years (since April 1999). But after two years of
+ development, Zenmap is ready to take its place. Zenmap is portable
+ and provides a much better interface to executing and (especially)
+ viewing and analyzing Nmap results. David did the honors of
+ removing NmapFE.
+
+o We have lost another old friend as well: 1st generation OS
+ detection system. Nmap revolutionized OS detection when this was
+ released in October 1998 and it served us well for more than 9 years
+ as the database grew to 1,684 fingerprints. But the 2nd generation
+ system incorporates everything we learned during all those years and
+ has proven itself even more effective. I couldn't bear to kill this
+ myself, so David did the dirty work.
+
+o There is no longer any artificial limit on the number of ports or
+ protocols that can be used for host discovery. Port lists for ping
+ scan now use the same syntax as the -p option except that T:, U:,
+ and P: are not allowed. This means that you can do
+ nmap -PS1-1000 target
+ nmap -PAhttp,https target
+ nmap -PU'[-]' target
+ [David]
+
+o Zenmap is now available packaged in RPM format. Since Zenmap is
+ written in Python, we no longer have to have separate x86 and x86_64
+ versions like we did with NmapFE (and like we still do with
+ Nmap). [David]
+
+o Fixed a crash (assertion failure) which could occur during ARP Ping
+ scan [Kris]
+
+o Fixed Zenmap so that it can handle asterisks in the command line
+ (e.g. "nmap 192.168.*.*" or "nmap -phttp* localhost") [David]
+
+o Change the Zenmap bug report dialogue to now give instructions for
+ reporting issues to nmap-dev. [David]
+
+o Modified higwidgets/higdialogs.py for compatibility with old
+ versions of PyGTK. [David]
+
+o Updated IANA assignment IP list for random IP (-iR)
+ generation. [Kris]
+
+o Fixed a number of spelling errors in the Reference Guide (man page)
+ [Doug]
+
+Nmap 4.22SOC8 [2007-10-28]
+
+o Removed the old massping() system, since the functionality has now
+ been migrated into the existing ultra_scan() system (which is used
+ for port scanning too). Thanks to David for doing the migration,
+ which involved a lot of work and testing. The new system is
+ frequently faster and more accurate than massping(), and some of the
+ new algorithms benefit port scans too.
+
+o Renamed Umit to Zenmap to reduce confusion between the version we
+ ship with Nmap as the integrated GUI and the version maintained
+ separately at umit.sourceforge.net. We are excited about Zenmap and
+ expect to remove NmapFE in the near future
+
+o Integrated all of your Q3 service detection submissions! We have
+ now surpassed 4500 signatures and are approaching 500 service
+ protocols. Wow! Thanks to Doug for doing the integration. His
+ notes on the crazy and interesting services discovered this quarter
+ are at http://hcsw.org/blog.pl/31 .
+
+o Added a new ping type: IPProto Ping. Use -PO (that is the letter O
+ as in prOtOcOl, not a zero). This is similar to protocol scan (-sO)
+ in that it sends IP headers with different protocols in the hope of
+ eliciting a response from targets. The default is to send with
+ protocols 1 (ICMP), 2 (IGMP), and 4 (IP-in-IP tunnel), but you can
+ specify different protocol numbers on the command line the same way
+ you specify TCP/UDP ports to -PS or -PU. To reduce confusion, we now
+ recommend that -PN be used when you don't want pings done rather
+ than using the old -P0 (zero). [Kris]
+
+o The SMTPcommands.nse script was updated to support the HELP query in
+ addition to EHLO [Jasey DePriest]
+
+o Added --ttl support for connect() scans (-sT). [Kris]
+
+o Combine the Zenmap setup scripts into one portable setup.py rather
+ than having separate versions for Windows, Unix, and Mac OS X.
+
+o Removed a bunch of unnecessary/incomplete code and data files from
+ Zenmap. [David]
+
+o In Nbase, switched from GNU's getopt() replacement functions to
+ Ben Sittler's BSD-licensed (but GNU compatible) functions. [Kris]
+
+o Include nmap.h in portreasons.h. This fixes a compilation problem
+ reported on OpenBSD. [David]
+
+o Change PCRE from an NSELib module back to statically linked code due
+ to OpenBSD compilation problems. See
+ http://seclists.org/nmap-dev/2007/q4/0085.html [David]
+
+o Fix a problem with --reason printing the wrong host discovery
+ reasons when ICMP destination unreachable packets arrived. [Kris]
+
+o Nmap has better dependency tracking now such that it no longer
+ builds the executable every time you type 'make'. This was causing
+ problems where 'make; sudo make install' would create a root-owned
+ nmap executable because it was rebuilt as part of 'make
+ install'. [David]
+
+Nmap 4.22SOC7 [2007-10-11]
+
+o Integrated all of your OS detection new fingerprint submissions and
+ correction reports. The grew more DB more than 18% to 825
+ fingerprints. Keep those submissions coming! [David]
+
+o Made a number of significant improvements to host discovery
+ algorithms for better performance and reliability. [David]
+
+o Fixed a bug which prevented the first OS detection guess from being
+ included in XML output. This only applies when no exact matches
+ were found. Thanks to Martyn Tovey of Netcraft for reporting the
+ problem and helping to track it down in the code.
+
+o Improve the script scan scheduling system to prevent the system from
+ running out of sockets by executing too many scripts concurrently
+ during large scans. Thanks to Brandon Enright for finding the bug
+ and Stoiko for fixing it.
+
+o Added nmap.verbosity() and nmap.debugging() functions for scripts to
+ determine the Nmap verbosity/debugging level. [Kris]
+
+o Fixed a crash (assertion error) which occurred when the first hop of
+ the first system (reference trace) times out. [Eddie]
+
+o UMIT no longer rewrites a bunch of script files to replace variables
+ such as VERSION and REVISION in the SVN working directory. [David,
+ Adriano]
+
+o UMIT icon loading code simplified and made platform
+ independent. [David]
+
+o Removed PIL dependency from UMIT package generation system. We now
+ use GTK to put the version number in the splash screen. [Adriano]
+
+o UMIT no longer crashes just because documentation files are
+ missing. [Adriano]
+
+o Removed unnecessary recent_scans.txt and target_list.txt files from
+ UMIT. Some unnecessary copies of Nmap data files were removed as
+ well. [David, Adriano]
+
+o Updated the *.dmp preprocessed Nmap data files used by UMIT, and
+ also updated the scripts used to create them. [David]
+
+o WinPcap installer was updated so that on Windows Vista it uses a
+ different Packet.dll and omits WanPacket.dll. [Eddie]
+
+o Unix installation now places NSELib dynamic libraries in 'libexec'
+ rather than 'share' directories, since they are architecture
+ dependent. Thanks to Christoph J. Thompson for the patch.
+
+o Fix bug related to users providing custom libpcre location to
+ configure (reported by Daniel Johnson, fixed by Stoiko). A patch
+ from Marek Majkowski which caps the number of sockets opened by NSE
+ scripts was also applied.
+
+o The UMIT version number is automatically updated to be the same as
+ the Nmap version number rather than always being 0.9.4. [David]
+
+o UMIT now sorts port numbers numerically rather than alphabetically
+ [Adriano]
+
+o Three UMIT data files (options.xml, profile_editor.xml, and
+ wizard.xml) are installed in the shared UMIT data directory
+ (e.g. /usr/share/umit/misc) rather than in every user's ~/.umit
+ directory. [David]
+
+o Added HTTPtrace demo NSE script by Kris, who also updated his
+ HTTPpasswd script.
+
+o A bunch of capitalization/spelling canonicalization changes were
+ made to Nmap output. For example: ftp to FTP and idlescan to
+ idle scan.
+
+o Made some improvements to the nmap.xsl stylesheet for converting
+ Nmap XML results to HTML reports. It now does a better job at
+ removing empty sections and headers. Thanks to Henrik Lund Kramshoej
+ for the patch.
+
+o Updated nmap-mac-prefixes with the latest IEEE data.
+
+o Disabled auto-generation of libpcre/pcre_chartables.c because that
+ was useless for our purposes and could also cause some version
+ control related problems. [David]
+
+o Updated IANA assignment IP list for random IP (-iR)
+ generation. [Kris]
+
+Nmap 4.22SOC6 [2007-8-29]
+
+o Included David's major massping migration project. The same
+ underlying engine is now used for ping scanning as for port
+ scanning. We hope this will lead to better performance and
+ accuracy, as well as helping to de-bloat Nmap. Please test it out
+ and report your results to nmap-dev! For more details, see
+ http://seclists.org/nmap-dev/2007/q3/0277.html
+
+o Fixed UMIT bug which occurred when installing to a non-standard
+ directory (e.g. a home directory). This caused Python to not be able
+ to find the necessary files. [Kris]
+
+o Added an NSE script (HTTPpasswd.nse) for finding directory traversal
+ problems and /etc/password files on web servers. [Kris]
+
+o Fixed an error related to version scans against SSL services on
+ UNIX. The error said "nsock_connect_ssl called - but nsock was
+ built w/o SSL support. QUITTING". Thanks to Jasey DePriest for
+ tracking down the problem and David Fifield for fixing it.
+
+o Removed win_dependencies cruft from UMIT directory. [Kris]
+
+o Upgraded Libpcap from version 0.9.4 to 0.9.7 [Kris]
+
+o Removed the effectively empty XML elements for traceroute hops which
+ timed out. [Eddie]
+
+o Fixed (I hope) a problem with running Nmap on Mac OS X machines with
+ VMWare Fusion running. The error message started with:
+ "getinterfaces: Failed to open ethernet interface (vmnet8). A
+ possible cause on BSD operating systems is running out of BPF
+ devices ...." For more details, see
+ http://seclists.org/nmap-dev/2007/q3/0254.html .
+
+o Check that --script arguments are reasonable when Nmap starts rather
+ than potentially waiting for a bunch of port scanning to finish
+ first. [Stoiko]
+
+o Fixed (we hope) a UMIT problem which resulted in the error message:
+ "NameError: global name 'S_IRUSR' is not defined". [Adriano]
+
+o Removed an error message which used to appear when you quit UMIT on
+ Windows. The message used to say "Errors occurred - See the logfile
+ [filename] for details." [Adriano]
+
+o Fix permissions on files installed by Umit so that it should work
+ even if you do 'make install' from an account with a 077 umask.
+
+o Add a feature to Umit that lets you search your unsaved
+ scans. [Eddie]
+
+o Added back a previously removed feature which allows you to specify
+ 'rnd' as one of your decoys (-D option) to let Nmap choose a random
+ IP. You also use a format such as rnd:5 to generate five random
+ decoys. [Kris]
+
+o Reference guide (man page) updates to the NSE section, and some
+ general cleanup.
+
+o When Nmap finishes, it now says "Nmap done" rather than "Nmap run
+ completed". No need to waste pixels on excess verbiage.
+
+Nmap 4.22SOC5 [2007-8-18]
+
+o The Windows installer should actually install UMIT properly now.
+
+o Remove umit.db from the installation process. Let Umit create a new
+ one on its own when needed.
+
+o Fixed the UMIT portion of the Windows installer build system to
+ detect certain heinous errors (like not being able to find Python)
+ and bail out. [Kris]
+
+o Prevent scripts directory from containing .svn cruft when using the
+ Win32 installer (thanks to David Fifield for the patch).
+
+Nmap 4.22SOC3 [2007-8-16]
+
+o Umit is now included in the Nmap Windows executable installer.
+ Please give it a try and let us know what you think! Kris put a lot
+ of work into getting this set up.
+
+o Added four new NSE scripts: HTTP proxy detection (Arturo 'Buanzo'
+ Busleiman), DNS zone transfer attempt (Eddie), detecting SQL
+ injection vulnerabilities on web sites (Eddie), and fetching and
+ displaying portions of /robots.txt from web servers (Eddie).
+
+o All of your 2nd Quarter 2007 Nmap version detection fingerprints
+ were integrated by Doug. The DB now contains 4,347 signatures for
+ 439 service protocols. Doug describes the highlights (craziest
+ services found) in his integration report at
+ http://hcsw.org/blog.pl/29 .
+
+o NSE now supports raw IP packet sending and receiving thanks to a
+ patch from Marek Majkowski. Diman handled testing and applied the
+ patch.
+
+o Nmap now has Snprintf() and Vsnprintf() as safer alternatives to the
+ standard version. The problem is that the Windows version of these
+ functions (_snprintf, _vsnprintf) doesn't properly terminate strings
+ when it has to truncate them. These wrappers ensure that the string
+ written is always truncated. Thanks to Kris for doing the work.
+
+o Upgraded libpcre from version 6.7 to 7.2 [Kris]
+
+o Merged various Umit bug fixes from SourceForge trunk: "missing import
+ webbrowser on umit", "Missing markup in 'OS Class' on
+ HostDetailsPage", "some command line options are now working
+ (target, profile, verbose, open result file and run an nmap
+ command)", "removing unused functions import from os.path",
+ "verbosity works on command line"
+
+o Eddie fixed several Umit bugs. Umit now sets the file save
+ extension to .usr unless the user specifies something else. The
+ details highlight regular expression was improved and an error message was added
+ when no target was specified and -iR and -iL aren't used.
+
+o reason.cc/reason.h renamed to portreasons.cc/.h because a reason.h
+ in the Windows platform SDK was causing conflicts. [Kris]
+
+o Fixed a bug in --iflist which would lead to crashes. Thanks to
+ Michael Lawler for the report, and Eddie for the fix.
+
+o Finished updating WinPcap to 4.01 (a few static libraries were
+ missed) [Eddie]
+
+o Added NSE support for buffered data reads. [Stoiko]
+
+o Added new --script-args option for passing arguments to NSE scripts
+ [Stoiko]
+
+o Performed a bunch of OS fingerprint text canonicalization thanks to
+ reports of dozens of capitalization inconsistencies from Suicidal Bob.
+
+o Fixed an assertion failure which could be experienced when script
+ scan was requested without also requesting version scan. [Stoiko]
+
+o Fixed an output bug on systems like Windows which return -1 when
+ vsnprintf is passed a too-small buffer rather than returning the
+ size needed. Thanks to jah (jah(a)zadkiel.plus.com) for the report.
+
+o Added sys/types.h include to portreasons.h to help OpenBSD compilation.
+ Thanks to Olivier Meyer for the patch.
+
+o Many hard coded function names and instances of __FUNCTION__ were
+ changed to __func__ [Kris]
+
+o Configure scripts for Nmap, Nbase, and Nsock were optimized to
+ remove redundant checks. This improves compilation time
+ performance. [Eddie]
+
+o Updated IANA assignment IP list for random IP (-iR)
+ generation. [Kris]
+
+Nmap 4.22SOC2 [2007-7-11]
+
+o NSE compilation fixes by Stoiko and Kris
+
+Nmap 4.22SOC1 [2007-7-8]
+
+o The UMIT graphical Nmap frontend is now included (as an ALPHA TEST
+ release) with the Nmap tarball distribution. It isn't yet in the
+ RPMs or the Windows distributions. UMIT is written with Python/GTK
+ and has many huge advantages over NmapFE. It installs from the Nmap
+ source tarballs as part of the "make install" process unless you
+ specify --without-umit to configure. Please give UMIT a try (the
+ executable is named umit) and let us know the results! We hope to
+ include UMIT in the Windows Nmap distributions soon.
+
+o Added more Nmap Scripting Engine scripts, bringing the total to 31.
+ The new ones are bruteTelnet (Eddie Bell), SMTPcommands (Jasey
+ DePriest), iax2Detect (Jasey), nbstat (Brandon Enright),
+ SNMPsysdescr (Thomas Buchanan), HTTPAuth (Thomas), finger (Eddie),
+ ircServerInfo (Doug Hoyte), and MSSQLm (Thomas Buchanan).
+
+o Added the --reason option which explains WHY Nmap assigned a port
+ status. For example, a port could be listed as "filtered" because
+ no response was received, or because an ICMP network unreachable
+ message was received. [Eddie]
+
+o Integrated all of your 2nd generation OS detection submissions,
+ increasing the database size by 68% since 4.21ALPHA4 to 699
+ fingerprints. The 2nd generation database is now nearly half (42%)
+ the size of the original. Please keep those submissions coming so
+ that we can do another integration round before the SoC program ends
+ on August 20! Thanks to David Fifield for doing most of the
+ integration work!
+
+o Integrated version detection submissions. The database has grown by
+ more than 350 signatures since 4.21ALPHA4. Nmap now has 4,236
+ signatures for 432 service protocols. As usual, Doug Hoyte deserves
+ credit for the integration marathon, which he describes at
+ http://hcsw.org/blog.pl .
+
+o Added the NSE library (NSELib) which is a library of useful
+ functions (which can be implemented in LUA or as loadable C/C++
+ modules) for use by NSE scripts. We already have libraries for bit
+ operations (bit), list operations (listop), URL fetching and
+ manipulation (url), activation rules (shortport), and miscellaneous
+ commonly useful functions (stdnse). Stoiko added the underlying
+ functionality, though numerous people contributed to the library
+ routines.
+
+o Added --servicedb and --versiondb command-line options which allow
+ you to specify a custom Nmap services (port to port number translation
+ and port frequency) file or version detection database. [David
+ Fifield]
+
+o The build dependencies were dramatically reduced by removing
+ unnecessary header includes and moving header includes from .h
+ files to .cc as well as adding some forward declarations. This
+ reduced the number of makefile.dep dependencies from 1469 to 605.
+ This should make Nmap compilation faster and prevent some
+ portability problems. [David Fifield]
+
+o Upgraded from WinPcap 3.1 to WinPcap 4.01 and fixed a WinPcap installer
+ error. [Eddie]
+
+o In verbose mode, Nmap now reports where it obtains data files (such as
+ nmap-services) from. [David Fifield]
+
+o Canonicalized a bunch of OS classes, device types, etc. in the OS
+ detection and version scanning databases so they are named
+ consistently. [Doug]
+
+o If we get a ICMP Protocol Unreachable from a host other than our
+ target during a port scan, we set the state to 'filtered' rather than
+ 'closed'. This is consistent with how port unreachable errors work for
+ udp scan. [Kris]
+
+o Relocated OSScan warning message (could not find 1 closed and 1 open
+ port). Now output.cc prints the warning along with a targets OSScan
+ results. [Eddie]
+
+o Fixed a bug which caused port 0 to be improperly used for gen1 OS
+ detection in some cases when your scan includes port 0 (it isn't
+ included by default). Thanks to Sebastian Wolfgarten for the report
+ and Kris Katterjohn for the fix.
+
+o The --iflist table now provides WinPcap device names on
+ Windows. [Eddie]
+
+o The Nmap reference guide (man page) DocBook XML source is now in the
+ SVN repository at svn://svn.insecure.org/nmap/docs/refguide.xml .
+
+o NSE now has garbage collection so that if you forget to close a
+ socket before exiting a script, it is closed for you. [Stoiko]
+
+o The <portused> tag in XML output now provides the open TCP port used
+ for OS detection as well as the closed TCP and UDP ports which were
+ reported previously. [Kris]
+
+o XML output now has a <times> tag for reporting final time
+ information which was already printed in normal output in verbose
+ mode (round trip time, rtt variance, timeout, etc.) [Kris]
+
+o Changed the XML output format so that the <extrareasons> tag (part
+ of Eddie's --reason patch) falls within the <extraports> tag. [Kris]
+
+o Nmap now provides more concise OS fingerprints for submission thanks
+ to better merging. [David Fifield]
+
+o A number of changes were made to the Windows build system to handle
+ version numbers, publisher field, add/remove program support,
+ etc. [Eddie]
+
+o The Nmap -A option now enables the traceroute option too [Eddie]
+
+o Improved how the Gen1 OS Detection system selects which UDP ports to
+ send probes to. [Kris]
+
+o Updated nmap-mac-prefixes to latest IEEE data as of 5/18/07. Also
+ removed some high (greater than 0x80) characters from some company
+ names because they were causing this error on Windows when Nmap is
+ compiled in Debug mode:
+ isctype.c Line 56: Expression: (unsigned)(c + 1) <= 256".
+ Thanks to Sina Bahram for the initial report and Thomas Buchanan for
+ tracking down the problem.
+
+o Added a SIP (IP phone) probe from Matt Selsky to nmap-service-probes.
+
+o Fixed a bug which prevented the NSE scripts directory from appearing
+ in the Win32 .zip version of Nmap.
+
+o Fixed a bug in --traceroute output. It occurred when a traced host could
+ be fully consolidated, but only the first hop number was outputted. [Kris]
+
+o The new "rnd" option to -D allows you to ask Nmap to generate random
+ decoy IPs rather having to specify them all yourself. [Kris]
+
+o Fixed a Traceroute bug relating to scanning through the localhost
+ interface on Windows (which previously caused a crash). Thanks to
+ Alan Jones for the report and Eddie Bell for the fix.
+
+o Fixed a traceroute bug related to tracing between interfaces of a
+ multi-homed host. Thanks to David Fifield for reporting the problem
+ and Eddie Bell for the fix.
+
+o Service detection (-sV) and OS detection (-O) are now (rightfully)
+ disabled when used with the IPProto Scan (-sO). Using the Service
+ Scan like this led to premature exiting, and the OS Scan led to gross
+ inaccuracies. [Kris]
+
+o Updated IANA assignment IP list for random IP (-iR) generation. [Kris]
+
+Nmap 4.21ALPHA4 [2007-3-20]
+
+o Performed another big OS detection run. The DB has grown almost 10%
+ to 417 fingerprints. All submissions up to February 6 have been
+ processed. Please keep them coming!
+
+o Fixed XML output so that the opening <os> tag is printed again. The
+ line which prints this was somehow removed when NSE was integrated.
+ Thanks to Joshua Abraham for reporting the problem.
+
+o Fixed a small bug in traceroute progress output which didn't
+ properly indicate completion. [Kris]
+
+o Fixed a portability problem related to the new traceroute
+ functionality so that it compiles on Mac OS X. Thanks to Christophe
+ Thil for reporting the problem and sending the 1-line fix.
+
+o Updated nmap-mac-prefixes to include the latest MAC prefix (OUI)
+ data from the IEEE as of March 20, 2007.
+
+Nmap 4.21ALPHA3 [2007-3-16]
+
+o Just fixed a packaging problem with the 4.21ALPHA2 release (thanks
+ to Alan Jones for reporting it).
+
+Nmap 4.21ALPHA2 [2007-3-15]
+
+o Performed a huge OS detection submission integration marathon. More
+ than 500 submissions were processed, increasing the 2nd generation
+ OS DB size 65% to 381 fingerprints. And many of the existing ones
+ were improved. We still have a bit more than 500 submissions (sent
+ after January 16) to process. Please keep those submissions coming!
+
+o Integrated all of your Q32006 service fingerprint submissions. The
+ nmap-service-probe DB grew from 3,671 signatures representing 415
+ service protocols to 3,877 signatures representing 426 services. Big
+ thanks to version detection czar Doug Hoyte for doing this. Notable
+ changes are described at http://hcsw.org/blog.pl?a=20&b=20 .
+
+o Nmap now has traceroute support, thanks to an excellent patch by
+ Eddie Bell. The new system uses Nmap data to determine which sort of
+ packets are most likely to slip through the target network and
+ produce useful results. The system is well optimized for speed and
+ bandwidth efficiency, and the clever output system avoids repeating
+ the same initial hops for each target system. Enable this
+ functionality by specifying --traceroute.
+
+o Nmap now has a public Subversion (SVN) source code repository. See
+ the announcement at http://seclists.org/nmap-dev/2006/q4/0253.html
+ and then the updated usage instructions at
+ http://seclists.org/nmap-dev/2006/q4/0281.html .
+
+o Fixed a major accuracy bug in gen1 OS detection (some debugging code
+ was accidentally left in). Thanks to Richard van den Berg for finding
+ the problem.
+
+o Changed the IP protocol scan so that it sends proper IGMP headers when
+ scanning that protocol. This makes it much more likely that the host
+ will respond, proving that it's "open". [Kris]
+
+o Improved the algorithm for classifying the TCP timestamp frequency
+ for OS detection. The new algorithm is described at
+ https://nmap.org/book/osdetect-methods.html#osdetect-ts .
+
+o Fixed the way Nmap detects whether one of its data files (such as
+ nmap-services) exists and has permissions which allow it to be read.
+
+o Added a bunch of nmap-services port listings from Stephanie Wen.
+
+o Update IANA assignment IP list for random IP (-iR) generation.
+ Thanks to Kris Katterjohn for the patch.
+
+o Fix nmap.xsl (the transform for rendering Nmap XML results as HTML)
+ to fix some bugs related to OS detection output. Thanks to Tom
+ Sellers for the patch.
+
+o Fixed a bug which prevented the --without-liblua compilation option
+ from working. Thanks to Kris Katterjohn for the patch.
+
+o Fixed a bug which caused nmap --iflist to crash (and might have
+ caused crashes in other circumstances too). Thanks to Kris
+ Katterjohn for the report and Diman Todorov for the fix.
+
+o Applied a bunch of code cleanup patches from Kris Katterjohn.
+
+o Some scan types were fixed when used against localhost. The UDP Scan
+ doesn't find its own port, the TCP Scan won't print a message (with -d)
+ about an unexpected packet (for the same reason), and the IPProto Scan
+ won't list every port as "open" when using --data-length >= 8. [Kris]
+
+o The IPProto Scan should be more accurate when scanning protocol 17 (UDP).
+ ICMP Port Unreachables are now checked for, and UDP is listed as "open"
+ if it receives one rather than "open|filtered" or "filtered". [Kris]
+
+o The --scanflags option now also accepts "ECE", "CWR", "ALL" and "NONE" as
+ arguments. [Kris]
+
+o The --packet-trace option was added to NmapFE. The Ordered Ports (-r)
+ option in now available to non-root users on NmapFE as well. [Kris]
+
+Nmap 4.21ALPHA1 [2006-12-10]
+
+o Integrated the Nmap Scripting Engine (NSE) into mainline Nmap.
+ Diman Todorov and I have been working on this for more than six months, and
+ we hope it will expand Nmap's capabilities in many cool ways. We're
+ accepting (and writing) general purpose scripts to put into Nmap
+ proper, and you can also write personal scripts to deal with issues
+ specific to your environment. The system is documented at
+ https://nmap.org/book/nse.html .
+
+o Updated nmap-mac-prefixes to reflect the latest OUI DB from the IEEE
+ (http://standards.ieee.org/regauth/oui/oui.txt) as of December 7.
+
+Nmap 4.20 [2006-12-7]
+
+o Integrated the latest OS fingerprint submissions. The 2nd
+ generation DB size has grown to 231 fingerprints. Please keep them
+ coming! New fingerprints include Mac OS X Server 10.5 pre-release,
+ NetBSD 4.99.4, Windows NT, and much more.
+
+o Fixed a segmentation fault in the new OS detection system
+ which was reported by Craig Humphrey and Sebastian Garcia.
+
+o Fixed a TCP sequence prediction difficulty indicator bug. The index
+ is supposed to go from 0 ("trivial joke") to about 260 (OpenBSD).
+ But some systems generated ISNs so insecurely that Nmap went
+ berserk and reported a negative difficulty index. This generally
+ only affects some printers, crappy cable modems, and Microsoft
+ Windows (old versions). Thanks to Sebastian Garcia for helping me
+ track down the problem.
+
+Nmap 4.20RC2 [2006-12-2]
+
+o Integrated all of your OS detection submissions since RC1. The DB
+ has increased 13% to 214 fingerprints. Please keep them coming!
+ New fingerprints include versions of z/OS, OpenBSD, Linux, AIX,
+ FreeBSD, Cisco CatOS, IPSO firewall, and a slew of printers and
+ misc. devices. We also got our first Windows 95 fingerprint,
+ submitted anonymously of course :).
+
+o Fixed (I hope) the "getinterfaces: intf_loop() failed" error which
+ was seen on Windows Vista. The problem was apparently in
+ intf-win32.c of libdnet (need to define MIB_IF_TYPE_MAX to
+ MAX_IF_TYPE rather than 32). Thanks to Dan Griffin
+ (dan(a)jwsecure.com) for tracking this down!
+
+o Applied a couple minor bug fixes for IP options
+ support and packet tracing. Thanks to Michal Luczaj
+ (regenrecht(a)o2.pl) for reporting them.
+
+o Incorporated SLNP (Simple Library Network Protocol) version
+ detection support. Thanks to Tibor Csogor (tibi(a)tiborius.net) for
+ the patch.
+
+Nmap 4.20RC1 [2006-11-20]
+
+o Fixed (I hope) a bug related to Pcap capture on Mac OS X. Thanks to
+ Christophe Thil for reporting the problem and to Kurt Grutzmacher
+ and Diman Todorov for helping to track it down.
+
+o Integrated all of your OS detection submissions since ALPHA11. The
+ DB has increased 27% to 189 signatures. Notable additions include
+ the Apple Airport Express, Windows Vista RC1, OpenBSD 4.0, a Sony
+ TiVo device, and tons of broadband routers, printers, switches, and
+ Linux kernels. Keep those submissions coming!
+
+o Upgraded the included LibPCRE from version 6.4 to 6.7. Thanks to
+ Jochen Voss (voss(a)seehuhn.de) for the suggestion (he found some bugs
+ in 6.4)
+
+Nmap 4.20ALPHA11 [2006-11-2]
+
+o Integrated all of your OS detection submissions, bringing the
+ database up to 149 fingerprints. This is an increase of 28% from
+ ALPHA10. Notable additions include FreeBSD 6.1, a bunch of HP
+ LaserJet printers, and HP-UX 11.11. We also got a bunch of more
+ obscure submissions like Minix 3.1.2a and "Ember InSight Adapter for
+ programming EM2XX-family embedded devices". Who doesn't have a few
+ of those laying around? I'm hoping that all the obscure submissions
+ mean that more of the mainstream systems are being detected out of
+ the box! Please keep those submissions (obscure or otherwise)
+ coming!
+
+Nmap 4.20ALPHA10 [2006-10-23]
+
+o Integrated tons of new OS fingerprints. The DB now contains 116
+ fingerprints, which is up 63% since the previous version. Please keep
+ the submissions coming!
+
+Nmap 4.20ALPHA9 [2006-10-13]
+
+o Integrated the newly submitted OS fingerprints. The DB now contains
+ 71 fingerprints, up 27% from 56 in ALPHA8. Please keep them coming!
+ We still only have 4.2% as many fingerprints as the gen1 database.
+
+o Added the --open option, which causes Nmap to show only open ports.
+ Ports in the states "open|closed" and "unfiltered" might be open, so
+ those are shown unless the host has an overwhelming number of them.
+
+o Nmap gen2 OS detection used to always do 2 retries if it fails to
+ find a match. Now it normally does just 1 retry, but does 4 retries
+ if conditions are good enough to warrant fingerprint submission.
+ This should speed things up on average. A new --max-os-tries option
+ lets you specify a higher lower maximum number of tries.
+
+o Added --unprivileged option, which is the opposite of --privileged.
+ It tells Nmap to treat the user as lacking network raw socket and
+ sniffing privileges. This is useful for testing, debugging, or when
+ the raw network functionality of your operating system is somehow
+ broken.
+
+o Fixed a confusing error message which occurred when you specified a
+ ping scan or list scan, but also specified -p (which is only used for
+ port scans). Thanks to Thomas Buchanan for the patch.
+
+o Applied some small cleanup patches from Kris Katterjohn
+
+Nmap 4.20ALPHA8 [2006-9-30]
+
+o Integrated the newly submitted OS fingerprints. The DB now contains
+ 56, up 33% from 42 in ALPHA7. Please keep them coming! We still only
+ have 3.33% as many signatures as the gen1 database.
+
+o Nmap 2nd generation OS detection now has a more sophisticated
+ mechanism for guessing a target OS when there is no exact match in the
+ database (see https://nmap.org/book/osdetect-guess.html )
+
+o Rewrote mswin32/nmap.rc to remove cruft and hopefully reduce some
+ MFC-related compilation problems we've seen. Thanks to KX
+ (kxmail(a)gmail.com) for doing this.
+
+o NmapFE now uses a spin button for verbosity and debugging options so
+ that you can specify whatever verbosity (-v) or debugging (-d) level
+ you desire. The --randomize-hosts option was also added to NmapFE.
+ Thanks to Kris Katterjohn for the patches.
+
+o A dozen or so small patches to Nmap and NmapFE by Kris Katterjohn.
+
+o Removed libpcap/Win32 and libpcap/msdos as Nmap doesn't use them.
+ This reduces the Nmap tar.bz2 by about 50K. Thanks to Kris Katterjohn
+ for the suggestion.
+
+Nmap 4.20ALPHA7 [2006-9-12]
+
+o Did a bunch of Nmap 2nd generation fingerprint integration work.
+ Thanks to everyone who sent some in, though we still need a lot more.
+ Also thanks to Zhao for a bunch of help with the integration tools.
+ 4.20ALPHA6 had 12 fingerprints, this new version has 42. The old DB
+ (still included) has 1,684.
+
+o Updated nmap-mac-prefixes to reflect the latest OUI DB from the IEEE
+ (http://standards.ieee.org/regauth/oui/oui.txt) as of September 6, 2006.
+ Also added the unregistered PearPC virtual NIC prefix, as suggested
+ by Robert Millan (rmh(a)aybabtu.com).
+
+o Applied some small internal cleanup patches by Kris Katterjohn.
+
+Nmap 4.20ALPHA6 [2006-9-2]
+
+o Fixed a bug in 2nd generation OS detection which would (usually) prevent
+ fingerprints from being printed when systems don't respond to the 1st
+ ICMP echo probe (the one with bogus code value of 9). Thanks to
+ Brandon Enright for reporting and helping me debug the problem.
+
+o Fixed some problematic Nmap version detection signatures which could
+ cause warning messages. Thanks to Brandon Enright for the initial patch.
+
+Nmap 4.20ALPHA5 [2006-8-31]
+
+o Worked with Zhao to improve the new OS detection system with
+ better algorithms, probe changes, and bug fixes. We're
+ now ready to start growing the new database! If Nmap gives you
+ fingerprints, please submit them at the given URL. The DB is still
+ extremely small. The new system is extensively documented at
+ https://nmap.org/book/osdetect.html .
+
+o Nmap now supports IP options with the new --ip-options flag. You
+ can specify any options in hex, or use "R" (record route), "T"
+ (record timestamp), "U") (record route & timestamp), "S [route]"
+ (strict source route), or "L [route]" (loose source route). Specify
+ --packet-trace to display IP options of responses. For further
+ information and examples, see https://nmap.org/book/man.html and
+ http://seclists.org/nmap-dev/2006/q3/0052.html . Thanks to Marek
+ Majkowski for writing and sending the patch.
+
+o Integrated all 2nd quarter service detection fingerprint
+ submissions. Please keep them coming! We now have 3,671 signatures
+ representing 415 protocols. Thanks to version detection czar Doug
+ Hoyte for doing this.
+
+o Nmap now uses the (relatively) new libpcap pcap_get_selectable_fd
+ API on systems which support it. This means that we no longer need
+ to hack the included Pcap to better support Linux. So Nmap will now
+ link with an existing system libpcap by default on that platform if
+ one is detected. Thanks to Doug Hoyte for the patch.
+
+o Updated the included libpcap from 0.9.3 to 0.9.4. The changes I
+ made are in libpcap/NMAP_MODIFICATIONS . By default, Nmap will now
+ use the included libpcap unless version 0.9.4 or greater is already
+ installed on the system.
+
+o Applied some nsock bugfixes from Diman Todorov. These don't affect
+ the current version of Nmap, but are important for his Nmap
+ Scripting Engine, which I hope to integrate into mainline Nmap in
+ September.
+
+o Fixed a bug which would occasionally cause Nmap to crash with the
+ message "log_vwrite: write buffer not large enough". I thought I
+ conquered it in a previous release -- thanks to Doug Hoyte for finding a
+ corner case which proved me wrong.
+
+o Fixed a bug in the rDNS system which prevented us from querying
+ certain authoritative DNS servers which have recursion explicitly
+ disabled. Thanks to Doug Hoyte for the patch.
+
+o --packet-trace now reports TCP options (thanks to Zhao Lei for the
+ patch). Thanks to the --ip-options addition also found in this
+ release, IP options are printed too.
+
+o Cleaned up Nmap DNS reporting to be a little more useful and
+ concise. Thanks to Doug Hoyte for the patch.
+
+o Applied a bunch of small internal cleanup patches by Kris Katterjohn
+ (katterjohn(a)gmail.com).
+
+o Fixed the 'distclean' make target to be more comprehensive. Thanks
+ to Thomas Buchanan (Thomas.Buchanan(a)thecompassgrp.net) for the
+ patch.
+
+Nmap 4.20ALPHA4 [2006-7-4]
+
+o Nmap now provides progress statistics in the XML output in verbose
+ mode. Here are some examples of the format (etc is "estimated time
+ until completion) and times are in UNIX time_t (seconds since 1970) format.
+ <taskbegin task="SYN Stealth Scan" time="1151384685" />
+ <taskprogress task="SYN Stealth Scan" time="1151384715"
+ percent="13.85" remaining="187" etc="1151384902" />
+ <taskend task="SYN Stealth Scan" time="1151384776" />
+ <taskbegin task="Service scan" time="1151384776" />
+ <taskend task="Service scan" time="1151384788" />
+ Thanks to Adam Vartanian (flooey(a)gmail.com) for the patch.
+
+o Updated the Windows installer to give an option checkbox for
+ performing the Nmap performance registry changes. The default is to
+ do so. Thanks to Adam Vartanian (flooey(a)gmail.com) for the patch.
+
+o Applied several code cleanup patches from Marek Majkowski.
+
+o Added --release-memory option, which causes Nmap to release all
+ accessible memory buffers before quitting (rather than let the OS do
+ it). This is only useful for debugging memory leaks.
+
+o Fixed a bug related to bogus completion time estimates when you
+ request an estimate (through runtime interaction) right when Nmap is
+ starting a subsystem (such as a port scan or version detection).
+ Thanks to Diman Todorov for reporting the problem and Doug Hoyte for
+ writing a fix.
+
+o Nmap no longer gets random numbers from OpenSSL when it is available
+ because that turned out to be slower than Nmap's other methods
+ (e.g. /dev/urandom on Linux, /dev/arandom on OpenBSD, etc.). Thanks
+ to Marek Majkowski for reporting the problem.
+
+o Updated the Windows binary distributions (self-installer and .zip)
+ to include the new 2nd generation OS detection DB (nmap-os-db).
+ Thanks to Sina Bahram for reporting the problem.
+
+o Fixed the --max-retries option, which wasn't being honored. Thanks
+ to Jon Passki (jon.passki(a)hursk.com) for the patch.
+
+Nmap 4.20ALPHA3 [2006-6-29]
+
+o Added back Win32 support thanks to a patch by KX
+
+o Fixed the English translation of TCP sequence difficulty reported by
+ Brandon Enright, and also removed fingerprint printing for 1st
+ generation fingerprints (I don't really want to deal with those
+ anymore). Thanks to Zhao Lei for writing this patch.
+
+o Fix a problem which caused OS detection to be done in some cases
+ even if the user didn't request it. Thanks to Diman Todorov for the
+ fix.
+
+Nmap 4.20ALPHA2 [2006-6-24]
+
+o Included nmap-os-db (the new OS detection DB) within the release.
+ Oops! Thanks to Brandon Enright (bmenrigh(a)ucsd.edu) for catching
+ this problem with 4.20ALPHA1.
+
+o Added a fix for the crash in the new OS detection which would come
+ with the message "Probe doesn't exist! Probe type: 1. Probe subid: 1"
+
+Nmap 4.20ALPHA1 [2006-6-24]
+
+o Integrated initial 2nd generation OS detection patch! The system is
+ documented at https://nmap.org/book/osdetect.html . Thanks to Zhao Lei
+ for helping with the coding and design.
+
+o portlist.cc was refactored to remove some code duplication. Thanks
+ to Diman Todorov for the patch.
+
+Nmap 4.11 [2006-6-23]
+
+o Added a dozens of more detailed SSH version detection signatures, thanks
+ to a SSH huge survey and integration effort by Doug Hoyte. The
+ results of his large-scale SSH scan are posted at
+ http://seclists.org/nmap-dev/2006/Apr-Jun/0393.html .
+
+o Fixed the Nmap Makefile (actually Makefile.in) to correctly handle
+ include file dependencies. So if a .h file is changed, all of the
+ .cc files which depend on it will be recompiled. Thanks to Diman
+ Todorov (diman(a)xover.mud.at) for the patch.
+
+o Fixed a compilation problem on solaris and possibly other platforms.
+ The error message looked like "No rule to make target `inet_aton.o',
+ needed by `libnbase.a'". Thanks to Matt Selsky
+ (selsky(a)columbia.edu) for the patch.
+
+o Applied a patch which helps with HP-UX compilation by linking in the
+ nm library (-lnm). Thanks to Zakharov Mikhail
+ (zmey20000(a)yahoo.com) for the patch.
+
+o Added version detection probes for detecting the Nessus daemon.
+ Thanks to Adam Vartanian (flooey(a)gmail.com) for sending the patch.
+
+Nmap 4.10 [2006-6-12]
+
+o Updated nmap-mac-prefixes to reflect the latest OUI DB from the IEEE
+ (http://standards.ieee.org/regauth/oui/oui.txt) as of May 31, 2006.
+ Also added a couple unregistered OUI's (for QEMU and Bochs)
+ suggested by Robert Millan (rmh(a)aybabtu.com).
+
+o Fixed a bug which could cause false "open" ports when doing a UDP
+ scan of localhost. This usually only happened when you scan tens of
+ thousands of ports (e.g. -p- option).
+
+o Fixed a bug in service detection which could lead to a crash when
+ "--version-intensity 0" was used with a UDP scan. Thanks to Makoto
+ Shiotsuki (shio(a)st.rim.or.jp) for reporting the problem and Doug
+ Hoyte for producing a patch.
+
+o Made some AIX and HP-UX portability fixes to Libdnet and NmapFE.
+ These were sent in by Peter O'Gorman
+ (nmap-dev(a)mlists.thewrittenword.com).
+
+o When you do a UDP+TCP scan, the TCP ports are now shown first (in
+ numerical order), followed by the UDP ports (also in order). This
+ contrasts with the old format which showed all ports together in
+ numerical order, regardless of protocol. This was at first a "bug",
+ but then I started thinking this behavior may be better. If you
+ have a preference for one format or the other, please post your
+ reasons to nmap-dev.
+
+o Changed mass_dns system to print a warning if it can't find any
+ available DNS servers, but not quit like it used to. Thanks to Doug
+ Hoyte for the patch.
+
+Nmap 4.04BETA1 [2006-5-31]
+
+o Integrated all of your submissions (about a thousand) from the first
+ quarter of this year! Please keep 'em coming! The DB has increased
+ from 3,153 signatures representing 381 protocols in 4.03 to 3,441
+ signatures representing 401 protocols. No other tool comes close!
+ Many of the already existing match lines were improved too. Thanks
+ to Version Detection Czar Doug Hoyte for doing this.
+
+o Nmap now allows multiple ignored port states. If a 65K-port scan
+ had, 64K filtered ports, 1K closed ports, and a few dozen open
+ ports, Nmap used to list the dozen open ones among a thousand lines
+ of closed ports. Now Nmap will give reports like "Not shown: 64330
+ filtered ports, 1000 closed ports" or "All 2051 scanned ports on
+ 192.168.0.69 are closed (1051) or filtered (1000)", and omit all of
+ those ports from the table. Open ports are never ignored. XML
+ output can now have multiple <extraports> directive (one for each
+ ignored state). The number of ports in a single state before it is
+ consolidated defaults to 26 or more, though that number increases as
+ you add -v or -d options. With -d3 or higher, no ports will be
+ consolidated. The XML output should probably be augmented to give
+ the extraports directive 'ip', 'tcp', and 'udp' attributes which
+ specify the corresponding port numbers in the given state in the
+ same listing format as the nmaprun.scaninfo.services attribute, but
+ that part hasn't yet been implemented. If you absolutely need the
+ exact port numbers for each state in the XML, use -d3 for now.
+
+o Nmap now ignores certain ICMP error message rate limiting (rather
+ than slowing down to accommodate it) in cases such as SYN scan where
+ an ICMP message and no response mean the same thing (port filtered).
+ This is currently only done at timing level Aggressive (-T4) or
+ higher, though we may make it the default if we don't hear problems
+ with it. In addition, the --defeat-rst-ratelimit option has been
+ added, which causes Nmap not to slow down to accommodate RST rate
+ limits when encountered. For a SYN scan, this may cause closed
+ ports to be labeled 'filtered' because Nmap refused to slow down
+ enough to correspond to the rate limiting. Learn more about this
+ new option at https://nmap.org/book/man.html . Thanks to Martin
+ Macok (martin.macok(a)underground.cz) for writing the patch that
+ these changes were based on.
+
+o Moved my Nmap development environment to Visual C++ 2005 Express
+ edition. In typical "MS Upgrade Treadmill" fashion, Visual Studio
+ 2003 users will no longer be able to compile Nmap using the new
+ solution files. The compilation, installation, and execution
+ instructions at https://nmap.org/book/inst-windows.html have been
+ upgraded.
+
+o Automated my Windows build system so that I just have to type a
+ single make command in the mswin32 directory. Thanks to Scott
+ Worley (smw(a)pobox.com>, Shane & Jenny Walters
+ (yfisaqt(a)waltersinamerica.com), and Alex Prinsier
+ (aphexer(a)mailhaven.com) for reading my appeal in the 4.03
+ CHANGELOG and assisting.
+
+o Changed the PortList class to use much more efficient data
+ structures and algorithms which take advantage of Nmap-specific
+ behavior patterns. Thanks to Marek Majkowski
+ (majek(a)forest.one.pl) for the patch.
+
+o Fixed a bug which prevented certain TCP+UDP scan commands, such as
+ "nmap -sSU -p1-65535 localhost" from scanning both TCP and UDP.
+ Instead they gave the error message "WARNING: UDP scan was requested,
+ but no udp ports were specified. Skipping this scan type". Thanks to
+ Doug Hoyte for the patch.
+
+o Nmap has traditionally required you to specify -T* timing options
+ before any more granular options like --max-rtt-timeout, otherwise the
+ general timing option would overwrite the value from your more
+ specific request. This has now been fixed so that the more specific
+ options always have precedence. Thanks to Doug Hoyte for this patch.
+
+o Fixed a couple possible memory leaks reported by Ted Kremenek
+ (kremenek(a)cs.stanford.edu) from the Stanford University software
+ static analysis lab ("Checker" project).
+
+o Nmap now prints a warning when you specify a target name which
+ resolves to multiple IP addresses. Nmap proceeds to scan only the
+ first of those addresses (as it always has done). Thanks to Doug
+ Hoyte for the patch. The warning looks like this:
+ Warning: Hostname google.com resolves to 3 IPs. Using 66.102.7.99.
+
+o Disallow --host-timeout values of less than 1500ms, print a warning
+ for values less than 15s.
+
+o Changed all instances of inet_aton() into calls to inet_pton()
+ instead. This allowed us to remove inet_aton.c from nbase. Thanks to
+ KX (kxmail(a)gmail.com) for the patch.
+
+o When debugging (-d) is specified, Nmap now prints a report on the
+ timing variables in use. Thanks to Doug Hoyte for the patch. The
+ report loos like this:
+ ---------- Timing report ----------
+ hostgroups: min 1, max 100000
+ rtt-timeouts: init 250, min 50, max 300
+ scan-delay: TCP 5, UDP 1000
+ parallelism: min 0, max 0
+ max-retries: 2, host-timeout 900000
+ -----------------------------------
+
+o Modified the WinPcap installer file to explicitly uninstall an
+ existing WinPcap (if you select that you wish to replace it) rather
+ than just overwriting the old version. Thanks to Doug Hoyte for
+ making this change.
+
+o Added some P2P application ports to the nmap-services file. Thanks
+ to Martin Macok for the patch.
+
+o The write buffer length increased in 4.03 was increased even further
+ when the debugging or verbosity levels are more than 2 (e.g. -d3).
+ Thanks to Brandon Enright (bmenrigh(a)ucsd.edu) for the patch. The
+ goal is to prevent you from ever seeing the fatal error:
+ "log_vwrite: write buffer not large enough -- need to increase"
+
+o Added a note to the Nmap configure dragon that people sick of him
+ can submit their own ASCII art to dev@nmap.org . If you
+ are wondering WTF I am talking about, it is probably because only
+ most elite Nmap users -- the ones who compile from source on UNIX --
+ get to see the 'l33t ASCII Art.
+
+Nmap 4.03 [2006-4-22]
+
+o Updated the LibPCRE build system to add the -fno-thread-jumps option
+ to gcc when compiling on the new Intel-based Apple Mac OS X systems.
+ Hopefully this resolves the version detection crashes that several
+ people have reported on such systems. Thanks to Kurt Grutzmacher
+ (grutz(a)jingojango.net) for sending the configure.ac patch.
+
+o Made some portability fixes to keep Nmap compiling with the newest
+ Visual Studio 2005. Thanks to KX (kxmail(a)gmail.com) for
+ suggesting them.
+
+o Service fingerprints are now provided in the XML output whenever
+ they would appear in the interactive output (i.e. when a service
+ response with data but is unrecognized). They are shown in a new
+ 'servicefp' attribute to the 'service' tag. Thanks to Brandon Enright
+ (bmenrigh(a)ucsd.edu) for sending the patch.
+
+o Improved the Windows build system -- mswin32/Makefile now takes care
+ of packaging Nmap and creating the installers once Visual Studio (GUI)
+ is done building the Release version of mswin32/nmap.sln. If someone
+ knows how to do this (build) step on the command line (using the
+ Makefile), please let me know. Or if you know how to at least make
+ 'Release' (rather than Debug) the default configuration, that would be
+ valuable.
+
+o WinPcap 3.1 binaries are now shipped in the Nmap tarball, along with
+ a customized installer written by Doug Hoyte. That new WinPcap
+ installer is now used by the Nmap self-installer (if you request
+ WinPcap installation). Some Nmap users were uncomfortable with a
+ "phone home" feature of the official WinPcap installer. It connects
+ back to CACE Technologies, ostensibly to display news and (more
+ recently) advertisements. Our new installer omits that feature, but
+ should be otherwise perfectly compatible with WinPcap 3.1.
+
+o Fixed (I hope) a problem where aggressive --min-parallelization
+ option values could cause Nmap to quit with the message "box(300, 100,
+ 15) called (min,max,num)". Thanks to Richard van den Berg
+ (richard.vandenberg(a)ins.com) for reporting the problem.
+
+o Fixed a rare crash bug thanks to a report and patch from Ganga
+ Bhavani (GBhavani(a)everdreamcorp.com)
+
+o Increased a write buffer length to keep Nmap from quitting with the
+ message "log_vwrite: write buffer not large enough -- need to
+ increase". Thanks to Dave (dmarcher(a)pobox.com) for reporting the
+ issue.
+
+Nmap 4.02ALPHA2 [2006-3-8]
+
+o Updated to a newer XSL stylesheet (for XML to HTML output
+ transformation) by Benjamin Erb. This new version includes IP
+ address sorting, removal of javascript requirements, some new
+ address, hostname, and Nmap version information, and various minor
+ tweaks and fixes.
+
+o Cleaned up the Amiga port code to use atexit() rather than the
+ previous macro hack. Thanks to Kris Katterjohn (katterjohn(a)gmail.com)
+ for the patch. Applied maybe half a dozen new other code cleanup
+ patches from him as well.
+
+o Made some changes to various Nmap initialization functions which
+ help ALT Linux (altlinux.org) and Owl (openwall.com) developers run
+ Nmap in a chroot environment. Thanks to Dmitry V. Levin
+ (ldv(a)altlinux.org) for the patch.
+
+o Cleaned up the code a bit by making a bunch (nearly 100) global
+ symbols (mostly function calls) static. I was also able to removed
+ some unused functions and superfluous config.h.in defines. Thanks
+ to Dmitry V. Levin (ldv(a)altlinux.org) for sending a list of
+ candidate symbols.
+
+o Nmap now tests for the existence of data files using stat(2) rather
+ than testing whether they can be opened for reading (with fopen).
+ This is because some device files (tape drives, etc.) may react badly
+ to being opened at all. Thanks to Dmitry V. Levin
+ (ldv(a)altlinux.org) for the suggestion.
+
+o Changed Nmap to cache interface information rather than opening and
+ closing it (with dnet's eth_open and eth_close functions) all the
+ time.
+
+o Applied a one-character Visual Studio 2005 compatibility patch from
+ kx (kxmail(a)gmail.com). It changed getch() into _getch() on Windows.
+
+Nmap 4.02ALPHA1 [2006-3-13]
+
+o Added the --log-errors option, which causes most warnings and error
+ messages that are printed to interactive-mode output (stdout/stderr)
+ to also be printed to the normal-format output file (if you
+ specified one). This will not work for most errors related to bad
+ command-line arguments, as Nmap may not have initialized its output
+ files yet. In addition, some Nmap error/warning messages use a
+ different system that does not yet support this option.
+
+o Rewrote much of the Nmap results output functions to be more
+ efficient and support --log-errors.
+
+o Fixed a flaw in the scan engine which could (in rare cases)
+ lead to a deadlock situation that prevents a scan from completing.
+ Thanks to Ganga Bhavani (GBhavani(a)everdreamcorp.com) for reporting
+ and helping to debug the problem.
+
+o If the pcap_open_live() call (initiates sniffing) fails, Nmap now
+ tries up to two more times after waiting a little while. This is
+ attempt to work around a rare bug on Windows in which the
+ pcap_open_live() fails for unknown reasons.
+
+o Fixed a flaw in the runtime interaction in which Nmap would include
+ hosts currently being scanned in the number of hosts "completed"
+ statistic.
+
+o Fixed a crash in OS scan which could occur on Windows when a DHCP
+ lease issue causes the system to lose its IP address. Nmap still
+ quits, but at least it gives a proper error message now. Thanks to
+ Ganga Bhavani (GBhavani(a)everdreamcorp.com) for the patch.
+
+o Applied more than half a dozen small code cleanup patches from
+ Kris Katterjohn (katterjohn(a)gmail.com).
+
+o Modified the configure script to accept CXX when specified as an
+ absolute path rather than just the executable name. Thanks to
+ Daniel Roethlisberger (daniel(a)roe.ch) for this patch.
+
+Nmap 4.01 [2006-2-9]
+
+o Fixed a bug that would cause bogus reverse-DNS resolution on
+ big-endian machines. Thanks to Doug Hoyte, Seth Miller, Tony Doan,
+ and Andrew Lutomirsky for helping to debug and patch the problem.
+
+o Fixed an important memory leak in the raw ethernet sending system.
+ Thanks to Ganga Bhavani (GBhavani(a)everdreamcorp.com) for
+ identifying the bug and sending a patch.
+
+o Fixed --system-dns option so that --system_dns works too. Error
+ messages were changed to reflect the former (preferred) name.
+ Thanks to Sean Swift (sean.swift(a)bradford.gov.uk) and Peter
+ VanEeckhoutte (Peter.VanEeckhoutte(a)saraleefoodseurope.com) for
+ reporting the problem.
+
+o Fixed a crash which would report this message:
+ "NmapOutputTable.cc:143: void NmapOutputTable::addItem(unsigned int,
+ unsigned int, bool, const char*, int): Assertion `row < numRows'
+ failed." Thanks to Jake Schneider (Jake.Schneider(a)dynetics.com) for
+ reporting and helping to debug the problem.
+
+o Whenever Nmap sends packets with the SYN bit set (except for OS
+ detection), it now includes the maximum segment size (MSS) tcp
+ option with a value of 1460. This makes it stand out less as almost
+ all hosts set at least this option. Thanks to Juergen Schmidt
+ (ju(a)heisec.de) for the suggestion.
+
+o Applied a patch for a Windows interface reading bug in the aDNS
+ subsystem from Doug Hoyte.
+
+o Minor changes to recognize DragonFly BSD in configure
+ scripts. Thanks to Joerg Sonnenberger (joerg(a)britannica.bec.de)
+ for sending the patch.
+
+o Fixed a minor bug in an error message starting with "eth_send of ARP
+ packet returned". Thanks to J.W. Hoogervorst
+ (J.W.Hoogervorst(a)uva.nl) for finding this.
+
+Nmap 4.00 [2006-1-31]
+
+o Added the '?' command to the runtime interaction system. It prints a
+ list of accepted commands. Thanks to Andrew Lutomirski
+ (luto(a)myrealbox.com) for the patch.
+
+o See the announcement at
+ http://www.insecure.org/stf/Nmap-4.00-Release.html for high-level
+ changes since 3.50.
+
+Nmap 3.9999 [2006-1-28]
+
+o Generated a new libpcre/configure to cope with changes in LibPCRE
+ 6.4
+
+o Updated nmap-mac-prefixes to reflect the latest OUI DB from the IEEE
+ (http://standards.ieee.org/regauth/oui/oui.txt)
+
+o Updated nmap-protocols with the latest IEEE internet protocols
+ assignments (http://www.iana.org/assignments/protocol-numbers).
+
+o Updated the Nmap version number and related fields that MS Visual
+ Studio places in the binary. This was done by editing
+ mswin32/nmap.rc.
+
+Nmap 3.999 [2006-1-26]
+
+o Added runtime interaction support to Windows, thanks to patches from
+ Andrew Lutomirski (luto(a)myrealbox.com) and Gisle Vanem (giva(a)bgnett.no).
+
+o Changed a couple lines of tcpip.cc (put certain IP header fields in
+ host byte order rather than NBO) to (hopefully) support Mac OS X on
+ Intel. Thanks to Kurt Grutzmacher (grutz(a)jingojango.net) for the
+ patch.
+
+o Upgraded the included LibPCRE from version 6.3 to 6.4. There was a
+ report of version detection crashes on the new Intel-based MACs with
+ 6.3.
+
+o Fixed an issue in which the installer would malfunction in rare
+ issues when installing to a directory with spaces in it. Thanks to
+ Thierry Zoller (Thierry(a)Zoller.lu) for the report.
+
+Nmap 3.99 [2006-1-25]
+
+o Integrated all remaining 2005 service submissions. The DB now has
+ surpassed 3,000 signatures for the first time. There now are 3,153
+ signatures for 381 service protocols. Those protocols span the
+ gamut from abc, acap, afp, and afs to zebedee, zebra, and
+ zenimaging. It even covers obscure protocols such as http, ftp,
+ smtp, and ssh :). Thanks to Version Detection Czar Doug Hoyte for
+ his excellent work on this.
+
+o Created a Windows executable installer using the open source NSIS
+ (Nullsoft Scriptable Install System). It handles Pcap installation,
+ registry performance changes, and adding Nmap to your cmd.exe
+ executable path. The installer source files are in mswin32/nsis/ .
+ Thanks to Google SoC student Bo Jiang (jiangbo(a)brandeis.edu) for
+ creating the initial version.
+
+o Fixed a backward compatibility bug in which Nmap didn't recognize
+ the --min_rtt_timeout option (it only recognized the newly
+ hyphenated --min-rtt-timeout). Thanks to Joshua D. Abraham
+ (jabra(a)ccs.neu.edu) for the bug report.
+
+o Fixed compilation to again work with gcc-derivatives such as
+ MingW. Thanks to Gisle Vanem (giva(a)bgnett.no) for sending the
+ patches
+
+Nmap 3.98BETA1 [2006-1-22]
+
+o Added run time interaction as documented at
+ https://nmap.org/book/man-runtime-interaction.html .
+ While Nmap is running, you can now press 'v' to increase verbosity,
+ 'd' to increase the debugging level, 'p' to enable packet tracing,
+ or the capital versions (V,D,P) to do the opposite. Any other key
+ (such as enter) will print out a status message giving the estimated
+ time until scan completion. This only works on UNIX for now. Do we
+ have any volunteers to add Windows support? You would need to
+ change a handful of UNIX-specific termio calls with the Windows
+ equivalents. This feature was created by Paul Tarjan
+ (ptarjan(a)stanford.edu) as part of the Google Summer of Code.
+
+o Reverse DNS resolution is now done in parallel rather than one at a
+ time. All scans of large networks (particularly list, ping and
+ just-a-few-ports scans) should benefit substantially from this
+ change. If you encounter any problems, please let us know. The new
+ --system_dns option was added so you can use the (slow) system
+ resolver if you prefer that for some reason. You can specify a
+ comma separated list of DNS server IP addresses for Nmap to use with
+ the new --dns_servers option. Otherwise, Nmap looks in
+ /etc/resolve.conf (UNIX) or the system registry (Windows) to obtain
+ the nameservers already configured for your system. This excellent
+ patch was written by Doug Hoyte (doug(a)hcsw.org).
+
+o Added the --badsum option, which causes Nmap to use invalid TCP or
+ UDP checksums for packets sent to target hosts. Since virtually all
+ host IP stacks properly drop these packets, any responses received
+ are likely coming from a firewall or IDS that didn't bother to
+ verify the checksum. For more details on this technique, see
+ http://www.phrack.org/phrack/60/p60-0x0c.txt . The author of that
+ paper, Ed3f (ed3f(a)antifork.org), is also the author of this patch
+ (which I changed it a bit).
+
+o The 26 Nmap commands that previously included an underscore
+ (--max_rtt_timeout, --send_eth, --host_timeout, etc.) have been
+ renamed to use a hyphen in the preferred format
+ (i.e. --max-rtt-timeout). Underscores are still supported for
+ backward compatibility.
+
+o More excellent NmapFE patches from Priit Laes (amd(a)store20.com)
+ were applied to remove all deprecated GTK API calls. This also
+ eliminates the annoying Gtk-Critical and Gtk-WARNING runtime messages.
+
+o Changed the way the __attribute__ compiler extension is detected so
+ that it works with the latest Fedora Core 4 updates (and perhaps other
+ systems). Thanks to Duilio Protti (dprotti(a)fceia.unr.edu.ar) for
+ writing the patch. The compilation error message this fixes was
+ usually something like: "nmap.o(.rodata+0x17c): undefined reference
+ to `__gthrw_pthread_cancel(unsigned long)"
+
+o Added some exception handling code to mswin32/winfix.cc to prevent
+ Nmap from crashing mysteriously when you have WinPcap 3.0 or earlier
+ (instead of the required 3.1). It now prints an error message instead
+ asking you to upgrade, then reduces functionality to connect()-only
+ mode. I couldn't get it working with the C++ standard try/catch()
+ blocks, but as soon as I used the nonstandard MS conventions
+ (__try/__except(), everything worked fine. Shrug.
+
+o Stripped the firewall API out of the libdnet included with Nmap
+ because Nmap doesn't use it anyway. This saves space and reduces the
+ likelihood of compilation errors and warnings.
+
+o Modified the previously useless --noninteractive option so that it
+ deactivates runtime interaction.
+
+Nmap 3.96BETA1 [2005-12-29]
+
+o Added --max_retries option for capping the maximum number of
+ retransmissions the port scan engine will do. The value may be as low
+ as 0 (no retransmits). A low value can increase speed, though at the
+ risk of losing accuracy. The -T4 option now allows up to 6 retries,
+ and -T5 allows 2. Thanks to Martin Macok
+ (martin.macok(a)underground.cz) for writing the initial patch, which I
+ changed quite a bit. I also updated the docs to reflect this neat
+ new option.
+
+o Many of the Nmap low-level timing options take a value in
+ milliseconds. You can now append an 's', 'm', or 'h' to the value
+ to give it in seconds, minutes, or hours instead. So you can specify a
+ 45 minute host timeout with --host_timeout 45m rather than specifying
+ --host_timeout 2700000 and hoping you did the math right and have the
+ correct number of zeros. This also now works for the
+ --min_rtt_timeout, --max_rtt_timeout, --initial_rtt_timeout,
+ --scan_delay, and --max_scan_delay options.
+
+o Improved the NmapFE port to GTK2 so it better-conforms to the new
+ API and you don't get as many annoying messages in your terminal
+ window. GTK2 is prettier and more functional too. Thanks to Priit
+ Laes (amd(a)store20.com) for writing these
+ excellent patches.
+
+o Fixed a problem which led to the error message "Failed to determine
+ dst MAC address for target" when you try to run Nmap using a
+ dialup/PPP adapter on Windows rather than a real ethernet card. Due
+ to Microsoft breaking raw sockets, Nmap no longer supports dialup
+ adapters, but it should now give you a clearer error message than
+ the "dst MAC address" nonsense.
+
+o Debian GNU/kFreeBSD is now supported thanks to a patch to libdnet's
+ configure.in by Petr Salinger (Petr.Salinger(a)t-systems.cz).
+
+o Tried to update to the latest autoconf only to find that there
+ hasn't been a new version in more than two years :(. I was able to
+ find new config.sub and config.guess files at
+ http://cvs.savannah.gnu.org/viewcvs/config/config/ , so I updated to
+ those.
+
+o Fixed a problem with the -e option when run on Windows (or UNIX with
+ --send_eth) when run on an ethernet network against an external
+ (routed) host. You would get the message "NmapArpCache() can only
+ take IPv4 addresses. Sorry". Thanks to KX (kxmail(a)gmail.com) for
+ helping to track down the problem.
+
+o Made some changes to allow source port zero scans (-g0). Nmap used
+ to refuse to do this, but now it just gives a warning that it may not
+ work on all systems. It seems to work fine on my Linux box. Thanks
+ to Bill Dale (bill_dale(a)bellsouth.net) for suggesting this feature.
+
+o Made a change to libdnet so that Windows interfaces are listed as
+ down if they are disconnected, unplugged, or otherwise unavailable.
+
+o Ceased including foreign translations in the Nmap tarball as they
+ take up too much space. HTML versions can be found at
+ https://nmap.org/docs.html , while XML and NROFF versions
+ are available from https://svn.nmap.org/nmap/docs/man-xlate/ .
+
+o Changed INSTALL and README-WIN32 files to mostly just reference the
+ new Nmap Install Guide at https://nmap.org/book/install.html .
+
+o Included docs/nmap-man.xml in the tarball distribution, which is the
+ DocBook XML source for the Nmap man page. Patches to Nmap that are
+ user-visible should include patches to the man page XML source rather
+ than to the generated Nroff.
+
+o Fixed Nmap so it doesn't crash when you ask it to resume a previous
+ scan, but pass in a bogus file rather than actual Nmap output. Thanks
+ to Piotr Sobolewski (piotr_sobolewski(a)o2.pl) for the fix.
+
+Nmap 3.95 [2005-12-8]
+
+o Fixed a crash in IPID Idle scan. Thanks to Ron
+ (iago(a)valhallalegends.com>, Bakeman (bakeman(a)physics.unr.edu),
+ and others for reporting the problem.
+
+o Fixed an inefficiency in RPC scan that could slow things down and
+ also sometimes resulted in the spurious warning message: "Unable to
+ find listening socket in get_rpc_results"
+
+o Fixed a 3.94ALPHA3 bug that caused UDP scan results to be listed as
+ TCP ports instead. Thanks to Justin M Cacak (jcacak(a)nebraska.edu)
+ for reporting the problem.
+
+Nmap 3.94ALPHA3 [2005-12-6]
+
+o Updated NmapFE to build with GTK2 rather than obsolete GTK1. Thanks
+ to Mike Basinger (dbasinge(a)speakeasy.net) and Meethune Bhowmick
+ (meethune(a)oss-institute.org) for developing the
+ patch. I made some changes as well to prevent compilation warnings.
+ The new NmapFE now seems to work, though I do get "Gtk-CRITICAL"
+ assertion error messages. If someone has time to look into this, that
+ would be appreciated.
+
+o Fixed a compilation problem on Mac OS X and perhaps other platforms
+ with a one-line fix to scan_engine.cc. Thanks to Felix Gröbert
+ (felix(a)groebert.org) for notifying me of the problem.
+
+o Fixed a problem that prevented the command "nmap -sT -PT [targets]"
+ from working from a non-privileged user account. The -PT option
+ doesn't change default behavior in this case, but Nmap should (and now
+ does) allow it.
+
+o Applied another VS 2005 compatibility patch from KX (kxmail(a)gmail.com).
+
+o Define INET_ADDRSTRLEN in tcpip.h if the system doesn't define it
+ for us. This apparently aids compilation on Solaris 2.6 and 7.
+ Thanks to Albert Chin (nmap-hackers(a)mlists.thewrittenword.com) for
+ sending the patch..
+
+Nmap 3.94ALPHA2 [2005-12-4]
+
+o Put Nmap on a diet, with changes to the core port scanning routine
+ (ultra_scan) to substantially reduce memory consumption, particularly
+ when tens of thousands of ports are scanned.
+
+o Fixed a problem with the -S and option on Windows reporting "Failed
+ to resolve/decode supposed IPv4 source address". The -D (decoy)
+ option was probably broken on that platform too. Thanks to KX
+ (kxmail(a)gmail.com) for reporting the problem and tracking down a
+ potential solution.
+
+o Better handle ICMP type 3, code 0 (network unreachable) responses to
+ port scan packets. These are rarely seen when scanning hosts that
+ are actually online, but are still worth handling.
+
+o Applied some small fixes so that Nmap compiles with Visual C++
+ 2005 Express, which is free from Microsoft at
+ http://msdn.microsoft.com/vstudio/express/visualc/ . Thanks to KX
+ (kxmail(a)gmail.com) and Sina Bahram (sbahram(a)nc.rr.com)
+
+o Removed foreign translations of the old man page from the
+ distribution. Included the following contributed translations
+ (nroff format) of the new man page:
+ - Brazilian Portuguese by Lucien Raven (lucienraven(a)yahoo.com.br)
+ - Portuguese (Portugal) by José Domingos (jd_pt(a)yahoo.com) and
+ Andreia Gaita (shana.ufie(a)gmail.com).
+
+o Added --thc option (undocumented)
+
+o Modified libdnet-stripped/src/eth-bsd.c to allow for up to 128 bpf
+ devices rather than 32. This prevents errors like "Failed to open
+ ethernet interface (fxp0)" when there are more than 32 interface
+ aliases. Thanks to Krok (krok(a)void.ru) for reporting the problem
+ and even sending a patch.
+
+Nmap 3.94ALPHA1 [2005-11-27]
+
+o Wrote a new man page from scratch. It is much more comprehensive
+ (more than twice as long) and (IMHO) better organized than the
+ previous one. Read it online at https://nmap.org/book/man.html
+ or docs/nmap.1 from the Nmap distribution. Let me know if you have
+ any ideas for improving it.
+
+o Wrote a new "help screen", which you get when running Nmap without
+ arguments. It is also reproduced in the man page and at
+ https://svn.nmap.org/nmap/docs/nmap.usage.txt . I gave up trying
+ to fit it within a 25-line, 80-column terminal window. It is now 78
+ lines and summarizes all but the most obscure Nmap options.
+
+o Version detection softmatches (when Nmap determines the service
+ protocol such as smtp but isn't able to determine the app name such as
+ Postfix) can now parse out the normal match line fields such as
+ hostname, device type, and extra info. For example, we may not know
+ what vendor created an sshd, but we can still parse out the protocol
+ number. This was a patch from Doug Hoyte (doug(a)hcsw.org).
+
+o Fixed a problem which caused UDP version scanning to fail to print
+ the matched service. Thanks to Martin Macok
+ (martin.macok(a)underground.cz) for reporting the problem and Doug
+ Hoyte (doug(a)hcsw.org) for fixing it.
+
+o Made the version detection "ports" directive (in
+ nmap-service-probes) more comprehensive. This should speed up scans a
+ bit. The patch was done by Doug Hoyte (doug(a)hcsw.org).
+
+o Added the --webxml option, which does the same thing as
+ --stylesheet https://svn.nmap.org/nmap/docs/nmap.xsl , without
+ requiring you to remember the exact URL or type that whole thing.
+
+o Fixed a crash occurred when the --exclude option was used with
+ netmasks on certain platforms. Thanks to Adam
+ (nmapuser(a)globalmegahost.com) for reporting the problem and to
+ Greg Darke (starstuff(a)optusnet.com.au) for sending a patch (I
+ modified the patch a bit to make it more efficient).
+
+o Fixed a problem with the -S and -e options (spoof/set
+ source address, and set interface by name, respectively). The problem
+ report and a partial patch were sent by Richard Birkett
+ (richard(a)musicbox.net).
+
+o Fixed a possible aliasing problem in tcpip.cc by applying a patch sent in by
+ Gwenole Beauchesne (gbeauchesne(a)mandriva.com). This problem
+ shouldn't have had any effect on users since we already include the
+ -fno-strict-aliasing option whenever gcc 4 is detected, but it
+ brings us closer to being able to remove that option.
+
+o Fixed a bug that caused Nmap to crash if an nmap-service-probes file
+ was used which didn't contain the Exclude directive.
+
+o Fixed a bunch of typos and misspellings throughout the Nmap source
+ code (mostly in comments). This was a 625-line patch by Saint Xavier
+ (skyxav(a)skynet.be).
+
+o Nmap now accepts target list files in Windows end-of-line format (\r\n)
+ as well as standard UNIX format (\n) on all platforms. Passing a
+ Windows style file to Nmap on UNIX didn't work before unless you ran
+ dos2unix first.
+
+o Removed Identd scan support from NmapFE since Nmap no longer
+ supports it. Thanks to Jonathan Dieter (jdieter99(a)gmx.net) for the
+ patch.
+
+o Integrated all of the September version detection fingerprint
+ submissions. This was done by Version Detection Czar Doug Hoyte
+ (doug(a)hcsw.org) and resulted in 86 new match lines. Please keep
+ those submissions coming!
+
+o Fixed a divide-by-zero crash when you specify rather bogus
+ command-line arguments (a TCP scan with zero tcp ports). Thanks to
+ Bart Dopheide (dopheide(a)fmf.nl) for identifying the problem and
+ sending a patch.
+
+o Fixed a minor syntax error in tcpip.h that was causing problems with
+ GCC 4.1. Thanks to Dirk Mueller (dmuell(a)gmx.net) for reporting
+ the problem and sending a fix.
+
+Nmap 3.93 [2005-9-12]
+
+o Modified Libpcap's configure.ac to compile with the
+ -fno-strict-aliasing option if gcc 4.X is used. This prevents
+ crashes when said compiler is used. This was done for Nmap in 3.90, but is
+ apparently needed for pcap too. Thanks to Craig Humphrey
+ (Craig.Humphrey(a)chapmantripp.com) for the discovery.
+
+o Patched libdnet to include sys/uio.h in src/tun-linux.c. This is
+ apparently necessary on some Glibc 2.1 systems. Thanks to Rob Foehl
+ (rwf(a)loonybin.net) for the patch.
+
+o Fixed a crash which could occur when a ridiculously short
+ --host_timeout was specified on Windows (or on UNIX if --send_eth was
+ specified). Nmap now also prints a warning if you specify a
+ host_timeout of less than 1 second. Thanks to Ole Morten Grodaas
+ (grodaas(a)gmail.com) for discovering the problem.
+
+Nmap 3.91 [2005-9-11]
+
+o Fixed a crash on Windows when you -P0 scan an unused IP on a local
+ network (or a range that contains unused IPs). This could also
+ happen on UNIX if you specified the new --send_eth option. Thanks
+ to Jim Carras (JFCECL(a)engr.psu.edu) for reporting the problem.
+
+o Fixed compilation on OpenBSD by applying a patch from Okan Demirmen
+ (okan(a)demirmen.com), who maintains Nmap in the OpenBSD Ports
+ collection.
+
+o Updated nmap-mac-prefixes to include OUIs assigned by the IEEE since
+ April.
+
+o Updated the included libpcre (used for version detection) from
+ version 4.3 to 6.3. A libpcre security issue was fixed in 6.3, but
+ that issue never affected Nmap.
+
+o Updated the included libpcap from 0.8.3 to 0.9.3. I also changed
+ the directory name in the Nmap tarball from libpcap-possiblymodified
+ to just libpcap. As usual, the modifications are described in the
+ NMAP_MODIFICATIONS in that directory.
+
+Nmap 3.90 [2005-9-8]
+
+o Added the ability for Nmap to send and properly route raw ethernet
+ packets containing IP datagrams rather than always sending the
+ packets via raw sockets. This is particularly useful for Windows,
+ since Microsoft has disabled raw socket support in XP for no good
+ reason. Nmap tries to choose the best method at runtime based on
+ platform, though you can override it with the new --send_eth and
+ --send_ip options.
+
+o Added ARP scanning (-PR). Nmap can now send raw ethernet ARP requests to
+ determine whether hosts on a LAN are up, rather than relying on
+ higher-level IP packets (which can only be sent after a successful
+ ARP request and reply anyway). This is much faster and more
+ reliable (not subject to IP-level firewalling) than IP-based probes.
+ The downside is that it only works when the target machine is on the
+ same LAN as the scanning machine. It is now used automatically for
+ any hosts that are detected to be on a local ethernet network,
+ unless --send_ip was specified. Example usage: nmap -sP -PR
+ 192.168.0.0/16 .
+
+o Added the --spoof_mac option, which asks Nmap to use the given MAC
+ address for all of the raw ethernet frames it sends. The MAC given
+ can take several formats. If it is simply the string "0", Nmap
+ chooses a completely random MAC for the session. If the given
+ string is an even number of hex digits (with the pairs optionally
+ separated by a colon), Nmap will use those as the MAC. If less than
+ 12 hex digits are provided, Nmap fills in the remainder of the 6
+ bytes with random values. If the argument isn't a 0 or hex string,
+ Nmap looks through the nmap-mac-prefixes to find a vendor name
+ containing the given string (it is case insensitive). If a match is
+ found, Nmap uses the vendor's OUI (3-byte prefix) and fills out the
+ remaining 3 bytes randomly. Valid --spoof_mac argument examples are
+ "Apple", "0", "01:02:03:04:05:06", "deadbeefcafe", "0020F2", and
+ "Cisco".
+
+o Applied an enormous nmap-service-probes (version detection) update
+ from SoC student Doug Hoyte (doug(a)hcsw.org). Version 3.81 had
+ 1064 match lines covering 195 service protocols. Now we have 2865
+ match lines covering 359 protocols! So the database size has nearly
+ tripled! This should make your -sV scans quicker and more
+ accurate. Thanks also go to the (literally) thousands of you who
+ submitted service fingerprints. Keep them coming!
+
+o Applied a massive OS fingerprint update from Zhao Lei
+ (zhaolei(a)gmail.com). About 350 fingerprints were added, and many
+ more were updated. Notable additions include Mac OS X 10.4 (Tiger),
+ OpenBSD 3.7, FreeBSD 5.4, Windows Server 2003 SP1, Sony AIBO (along
+ with a new "robotic pet" device type category), the latest Linux 2.6
+ kernels Cisco routers with IOS 12.4, a ton of VoIP devices, Tru64
+ UNIX 5.1B, new Fortinet firewalls, AIX 5.3, NetBSD 2.0, Nokia IPSO
+ 3.8.X, and Solaris 10. Of course there are also tons of new
+ broadband routers, printers, WAPs and pretty much any other device
+ you can coax an ethernet cable (or wireless card) into!
+
+o Added 'leet ASCII art to the configurator! ARTIST NOTE: If you think
+ the ASCII art sucks, feel free to send me alternatives. Note that
+ only people compiling the UNIX source code get this (ASCII artist
+ unknown).
+
+o Added OS, device type, and hostname detection using the service
+ detection framework. Many services print a hostname, which may be
+ different than DNS. The services often give more away as well. If
+ Nmap detects IIS, it reports an OS family of "Windows". If it sees
+ HP JetDirect telnetd, it reports a device type of "printer". Rather
+ than try to combine TCP/IP stack fingerprinting and service OS
+ fingerprinting, they are both printed. After all, they could
+ legitimately be different. An IP that gives a stack fingerprint
+ match of "Linksys WRT54G broadband router" and a service fingerprint
+ of Windows based on Kazaa running is likely a common NAT setup rather
+ than an Nmap mistake.
+
+o Nmap on Windows now compiles/links with the new WinPcap 3.1
+ header/lib files. So please upgrade to 3.1 from
+ http://www.winpcap.org before installing this version of Nmap.
+ While older versions may still work, they aren't supported with Nmap.
+
+o The official Nmap RPM files are now compiled statically for better
+ compatibility with other systems. X86_64 (AMD Athlon64/Opteron)
+ binaries are now available in addition to the standard i386. NmapFE
+ RPMs are no longer distributed by Insecure.Org.
+
+o Nmap distribution signing has changed. Release files are now signed
+ with a new Nmap Project GPG key (KeyID 6B9355D0). Fyodor has also
+ generated a new key for himself (KeyID 33599B5F). The Nmap key has
+ been signed by Fyodor's new key, which has been signed by Fyodor's
+ old key so that you know they are legit. The new keys are available
+ at https://svn.nmap.org/nmap/docs/nmap_gpgkeys.txt , as
+ docs/nmap_gpgkeys.txt in the Nmap source tarball, and on the public
+ keyserver network. Here are the fingerprints:
+ pub 1024D/33599B5F 2005-04-24
+ Key fingerprint = BB61 D057 C0D7 DCEF E730 996C 1AF6 EC50 3359 9B5F
+ uid Fyodor <fyodor@insecure.org>
+ sub 2048g/D3C2241C 2005-04-24
+ .
+ pub 1024D/6B9355D0 2005-04-24
+ Key fingerprint = 436D 66AB 9A79 8425 FDA0 E3F8 01AF 9F03 6B93 55D0
+ uid Nmap Project Signing Key (http://www.insecure.org/)
+ sub 2048g/A50A6A94 2005-04-24
+
+o Fixed a crash problem related to non-portable varargs (vsnprintf)
+ usage. Reports of this crash came from Alan William Somers
+ (somers(a)its.caltech.edu) and Christophe (chris.branch(a)gmx.de).
+ This patch was prevalent on Linux boxes running an Opteron/Athlon64
+ CPU in 64-bit mode.
+
+o Fixed crash when Nmap is compiled using gcc 4.X by adding the
+ -fno-strict-aliasing option when that compiler is detected. Thanks
+ to Greg Darke (starstuff(a)optusnet.com.au) for discovering that
+ this option fixes (hides) the problem and to Duilio J. Protti
+ (dprotti(a)flowgate.net) for writing the configure patch to detect
+ gcc 4 and add the option. A better fix is to identify and rewrite
+ lines that violate C99 alias rules, and we are looking into that.
+
+o Added "rarity" feature to Nmap version detection. This causes
+ obscure probes to be skipped when they are unlikely to help. Each
+ probe now has a "rarity" value. Probes that detect dozens of
+ services such as GenericLines and GetRequest have rarity values of
+ 1, while the WWWOFFLEctrlstat and mydoom probes have a rarity of 9.
+ When interrogating a port, Nmap always tries probes registered to
+ that port number. So even WWWOFFLEctrlstat will be tried against
+ port 8081 and mydoom will be tried against open ports between 3127
+ and 3198. If none of the registered ports find a match, Nmap tries
+ probes that have a rarity less than or equal to its current
+ intensity level. The intensity level defaults to 7 (so that most of
+ the probes are done). You can set the intensity level with the new
+ --version_intensity option. Alternatively, you can just use
+ --version_light or --version_all which set the intensity to 2 (only
+ try the most important probes and ones registered to the port
+ number) and 9 (try all probes), respectively. --version_light is
+ much faster than default version detection, but also a bit less
+ likely to find a match. This feature was designed and implemented
+ by Doug Hoyte (doug(a)hcsw.org).
+
+o Added a "fallback" feature to the nmap-service-probes database.
+ This allows a probe to "inherit" match lines from other probes. It
+ is currently only used for the HTTPOptions, RTSPRequest, and
+ SSLSessionReq probes to inherit all of the match lines from
+ GetRequest. Some servers don't respond to the Nmap GetRequest (for
+ example because it doesn't include a Host: line) but they do respond
+ to some of those other 3 probes in ways that GetRequest match lines
+ are general enough to match. The fallback construct allows us to
+ benefit from these matches without repeating hundreds of signatures
+ in the file. This is another feature designed and implemented
+ by Doug Hoyte (doug(a)hcsw.org).
+
+o Fixed crash with certain --excludefile or
+ --exclude arguments. Thanks to Kurt Grutzmacher
+ (grutz(a)jingojango.net) and pijn trein (ptrein(a)gmail.com) for
+ reporting the problem, and to Duilio J. Protti
+ (dprotti(a)flowgate.net) for debugging the issue and sending the
+ patch.
+
+o Updated random scan (ip_is_reserved()) to reflect the latest IANA
+ assignments. This patch was sent in by Felix Groebert
+ (felix(a)groebert.org).
+
+o Included new Russian man page translation by
+ locco_bozi(a)Safe-mail.net
+
+o Applied patch from Steve Martin (smartin(a)stillsecure.com) which
+ standardizes many OS names and corrects typos in nmap-os-fingerprints.
+
+o Fixed a crash found during certain UDP version scans. The crash was
+ discovered and reported by Ron (iago(a)valhallalegends.com) and fixed
+ by Doug Hoyte (doug(a)hcsw.com).
+
+o Added --iflist argument which prints a list of system interfaces and
+ routes detected by Nmap.
+
+o Fixed a protocol scan (-sO) problem which led to the error message:
+ "Error compiling our pcap filter: syntax error". Thanks to Michel
+ Arboi (michel(a)arboi.fr.eu.org) for reporting the problem.
+
+o Fixed an Nmap version detection crash on Windows which led to the
+ error message "Unexpected error in NSE_TYPE_READ callback. Error
+ code: 10053 (Unknown error)". Thanks to Srivatsan
+ (srivatsanp(a)adventnet.com) for reporting the problem.
+
+o Fixed some misspellings in docs/nmap.xml reported by Tom Sellers.
+
+o Applied some changes from Gisle Vanem (giva(a)bgnett.no) to make
+ Nmap compile with Cygwin.
+
+o XML "osmatch" element now has a "line" attribute giving the
+ reference fingerprint line number in nmap-os-fingerprints.
+
+o Added a distcc probes and a bunch of smtp matches from Dirk Mueller
+ (mueller(a)kde.org) to nmap-service-probes. Also added AFS version
+ probe and matches from Lionel Cons (lionel.cons(a)cern.ch). And
+ even more probes and matches from Martin Macok
+ (martin.macok(a)underground.cz)
+
+o Fixed a problem where Nmap compilation would use header files from
+ the libpcap included with Nmap even when it was linking to a system
+ libpcap. Thanks to Solar Designer (solar(a)openwall.com) and Okan
+ Demirmen (okan(a)demirmen.com) for reporting the problem.
+
+o Added configure option --with-libpcap=included to tell Nmap to use
+ the version of libpcap it ships with rather than any that may already be
+ installed on the system. You can still use --with-libpcap=[dir] to
+ specify that a system libpcap be installed rather than the shipped
+ one. By default, Nmap looks at both and decides which one is likely
+ to work best. If you are having problems on Solaris, try
+ --with-libpcap=included .
+
+o Changed the --no-stylesheet option to --no_stylesheet to be
+ consistent with all of the other Nmap options. Though I'm starting to
+ like hyphens a bit better than underscores and may change all of the
+ options to use hyphens instead at some point.
+
+o Added "Exclude" directive to nmap-service-probes grammar which
+ causes version detection to skip listed ports. This is helpful for
+ ports such as 9100. Some printers simply print any data sent to
+ that port, leading to pages of HTTP requests, SMB queries, X Windows
+ probes, etc. If you really want to scan all ports, specify
+ --allports. This patch came from Doug Hoyte (doug(a)hcsw.org).
+
+o Added a stripped-down and heavily modified version of Dug Song's
+ libdnet networking library (v. 1.10). This helps with the new raw
+ ethernet features. My (extensive) changes are described in
+ libdnet-stripped/NMAP_MODIFICATIONS
+
+o Removed WinIP library (and all Windows raw sockets code) since MS
+ has gone and broken raw sockets. Maybe packet receipt via raw
+ sockets will come back at some point. As part of this removal, the
+ Windows-specific --win_help, --win_list_interfaces, --win_norawsock,
+ --win_forcerawsock, --win_nopcap, --win_nt4route, --win_noiphlpapi,
+ and --win_trace options have been removed.
+
+o Changed the interesting ports array from a 65K-member array of
+ pointers into an STL list. This noticeable reduces memory usage in
+ some cases, and should also give a slight runtime performance
+ boost. This patch was written by Paul Tarjan (ptarjan(a)gmail.com).
+
+o Removed the BSDFIX/BSDUFIX macros. The underlying bug in
+ FreeBSD/NetBSD is still there though. When an IP packet is sent
+ through a raw socket, these platforms require the total length and
+ fragmentation offset fields of an IP packet to be in host byte order
+ rather than network byte order, even though all the other fields
+ must be in NBO. I believe that OpenBSD fixed this a while back.
+ Other platforms, such as Linux, Solaris, Mac OS X, and Windows take
+ all of the fields in network byte order. While I removed the macro,
+ I still do the munging where required so that Nmap still works on
+ FreeBSD.
+
+o Integrated many nmap-service-probes changes from Bo Jiang
+ (jiangbo(a)brandeis.edu)
+
+o Added a bunch of RPC numbers from nmap-rpc maintainer Eilon Gishri
+ (eilon(a)aristo.tau.ac.il)
+
+o Added some new RPC services to nmap-rpc thanks to a patch from
+ vlad902 (vlad902(a)gmail.com).
+
+o Fixed a bug where Nmap would quit on Windows whenever it encountered
+ a raw scan of localhost (including the local ethernet interface
+ address), even when that was just one address out of a whole network
+ being scanned. Now Nmap just warns that it is skipping raw scans when
+ it encounters the local IP, but continues on to scan the rest of the
+ network. Raw scans do not currently work against local IP addresses
+ because WinPcap doesn't support reading/writing localhost interfaces
+ due to limitations of Windows.
+
+o The OS fingerprint is now provided in XML output if debugging is
+ enabled (-d) or verbosity is at least 2 (-v -v). This patch was
+ sent by Okan Demirmen (okan(a)demirmen.com)
+
+o Fixed the way tcp connect scan (-sT) response to ICMP network
+ unreachable responses (patch by Richard Moore
+ (rich(a)westpoint.ltd.uk).
+
+o Update random host scan (-iR) to support the latest IANA-allocated
+ ranges, thanks to patch by Chad Loder (cloder(a)loder.us).
+
+o Updated GNU shtool (a helper program used during 'make install' to
+ version 2.0.2, which fixes a predictable temporary filename
+ weakness discovered by Eric Raymond.
+
+o Removed addport element from XML DTD, since it is no longer used
+ (suggested by Lionel Cons (lionel.cons(a)cern.ch)
+
+o Added new --privileged command-line option and NMAP_PRIVILEGED
+ environmental variable. Either of these tell Nmap to assume that
+ the user has full privileges to execute raw packet scans, OS
+ detection and the like. This can be useful when Linux kernel
+ capabilities or other systems are used that allow non-root users to
+ perform raw packet or ethernet frame manipulation. Without this
+ flag or variable set, Nmap bails on UNIX if geteuid() is
+ nonzero.
+
+o Changed the RPM spec file so that if you define "static" to 1 (by
+ passing --define "static 1" to rpmbuild), static binaries are built.
+
+o Fixed Nmap compilation on Solaris x86 thanks to a patch from Simon
+ Burr (simes(a)bpfh.net).
+
+o ultra_scan() now sets pseudo-random ACK values (rather than 0) for
+ any TCP scans in which the initial probe packet has the ACK flag set.
+ This would be the ACK, Xmas, Maimon, and Window scans.
+
+o Updated the Nmap version number, description, and similar fields
+ that MS Visual Studio places in the binary. This was done by editing
+ mswin32/nmap.rc as suggested by Chris Paget (chrisp(a)ngssoftware.com)
+
+o Fixed Nmap compilation on DragonFly BSD (and perhaps some other
+ systems) by applying a short patch by Joerg Sonnenberger which omits
+ the declaration of errno if it is a #define.
+
+o Fixed an integer overflow that prevented Nmap from scanning
+ 2,147,483,648 hosts in one expression (e.g. 0.0.0.0/1). Problem
+ noted by Justin Cranford (jcranford(a)n-able.com). While /1 scans
+ are now possible, don't expect them to finish during your bathroom
+ break. No matter how constipated you are.
+
+o Increased the buffer size allocated for fingerprints to prevent Nmap
+ from running out and quitting (error message: "Assertion
+ `servicefpalloc - servicefplen > 8' failed". Thanks to Mike Hatz
+ (mhatz(a)blackcat.com) for the report. (Actually this was done in a
+ previous version, but I forgot which one.)
+
+o Changed from CVS to Subversion source control system (which
+ rocks!). Neither repository is public (I'm paranoid because both CVS
+ and SVN have had remotely exploitable security holes), so the main
+ change users will see is that "Id" tags in file headers use the SVN
+ format for version numbering and such.
+
+Nmap 3.81 [2005-2-7]
+
+o Nmap now ships with and installs (in the same directory as other
+ data files such as nmap-os-fingerprints) an XSL stylesheet for
+ rendering the XML output as HTML. This stylesheet was written by
+ Benjamin Erb ( see http://www.benjamin-erb.de/nmap/ for examples).
+ It supports tables, version detection, color-coded port states, and
+ more. The XML output has been augmented to include an
+ xml-stylesheet directive pointing to nmap.xsl on the local
+ file system. You can point to a different XSL file by providing the
+ filename or URL to the new --stylesheet argument. Omit the
+ xml-stylesheet directive entirely by specifying --no-stylesheet.
+ The XML to HTML conversion can be done with an XSLT processor such
+ as Saxon, Sablot, or Xalan, but modern browsers can do this on the
+ fly -- simply load the XML output file in IE or Firefox. Some
+ features don't currently work with Firefox's on-the-fly rendering.
+ Perhaps some Mozilla wizard can fix that in either the XSL or the
+ browser itself. I hate having things work better in IE :). It is
+ often more convenient to have the stylesheet loaded from a URL
+ rather than the local file system, allowing the XML to be rendered on
+ any machine regardless of whether/where the XSL is installed. For
+ privacy reasons (avoid loading of an external URL when you view
+ results), Nmap uses the local file system by default. If you would
+ like the latest version of the stylesheet loaded from the web when
+ rendering, specify --stylesheet https://svn.nmap.org/nmap/docs/nmap.xsl .
+
+o Fixed fragmentation option (-f). One -f now sets sends fragments
+ with just 8 bytes after the IP header, while -ff sends 16 bytes to
+ reduce the number of fragments needed. You can specify your own
+ fragmentation offset (must be a multiple of 8) with the new --mtu
+ flag. Don't also specify -f if you use --mtu. Remember that some
+ systems (such as Linux with connection tracking) will defragment in
+ the kernel anyway -- so test first while sniffing with ethereal.
+ These changes are from a patch by Martin Macok
+ (martin.macok(a)underground.cz).
+
+o Nmap now prints the number (and total bytes) of raw IP packets sent
+ and received when it completes, if verbose mode (-v) is enabled. The
+ report looks like:
+ Nmap finished: 256 IP addresses (3 hosts up) scanned in 30.632 seconds
+ Raw packets sent: 7727 (303KB) | Rcvd: 6944 (304KB)
+
+o Fixed (I hope) an error which would cause the Windows version of
+ Nmap to abort under some circumstances with the error message
+ "Unexpected error in NSE_TYPE_READ callback. Error code: 10053
+ (Unknown error)". Problem reported by "Tony Golding"
+ (biz(a)tonygolding.com).
+
+o Added new "closed|filtered" state. This is used for Idle scan, since
+ that scan method can't distinguish between those two states. Nmap
+ previously just used "closed", but this is more accurate.
+
+o Null, FIN, Maimon, and Xmas scans now mark ports as "open|filtered"
+ instead of "open" when they fail to receive any response from the
+ target port. After all, it could just as easily be filtered as open.
+ This is the same change that was made to UDP scan in 3.70. Also as
+ with UDP scan, adding version detection (-sV) will change the state
+ from open|filtered to open if it confirms that they really are open.
+
+o Fixed a bug in ACK scan that could cause Nmap to crash with the
+ message "Unexpected port state: 6" in some cases. Thanks to Glyn
+ Geoghegan (glyng(a)corsaire.com) for reporting the problem.
+
+o Change IP protocol scan (-sO) so that a response from the target
+ host in any protocol at all will prove that protocol is open. As
+ before, no response means "open|filtered", an ICMP protocol
+ unreachable means "closed", and most other ICMP error messages mean
+ "filtered".
+
+o Patched a libpcap issue that prevented read timeouts from being
+ honored on Solaris (thus slowing down Nmap substantially). The
+ problem report and patch were sent in by Ben Harris
+ (bjh21(a)cam.ac.uk).
+
+o Changed IP protocol scan (-sO) so that it sends valid ICMP, TCP, and
+ UDP headers when scanning protocols 1, 6, and 17, respectively. An
+ empty IP header is still sent for all other protocols. This should
+ prevent the error messages such as "sendto in send_ip_packet:
+ sendto(3, packet, 20, 0, 192.31.33.7, 16) => Operation not
+ permitted" that Linux (and perhaps other systems) would give when
+ they try to interpret the raw packet. This also makes it more
+ likely that these protocols will elicit a response, proving that the
+ protocol is "open".
+
+o The windows build now uses header and static library files from
+ WinPcap 3.1Beta4. It also now prints out the DLL version you are
+ using when run with -d. I would recommend upgrading to 3.1Beta4 if
+ you have an older WinPcap installed.
+
+o Nmap now prints a warning message on Windows if WinPcap is not found
+ (it then reverts to raw sockets mode if available, as usual).
+
+o Added an NTP probe and matches to the version detection database
+ (nmap-service-probes) thanks to a submission from Martin
+ Macok (martin.macok(a)underground.cz).
+
+o Applied several Nmap service detection database updates sent in by
+ Martin Macok (martin.macok(a)underground.cz).
+
+o The XML nmaprun element now has a startstr attribute which gives the
+ human readable calendar time format that a scan started. Similarly
+ the finished element now has a timestr attribute describing when the
+ scan finished. These are in addition to the existing nmaprun/start
+ and finished/time attributes that provided the start and finish time
+ in UNIX time_t notation. This should help in development of
+ XSLT stylesheets for Nmap XML output.
+
+o Fixed a memory leak that would generally consume several hundred
+ bytes per down host scanned. While the effect for most scans is
+ negligible, it was overwhelming when Scott Carlson
+ (Scott.Carlson(a)schwab.com) tried to scan 16.8 million IPs
+ (10.0.0.0/8). Thanks to him for reporting the problem. Also thanks
+ to Valgrind ( http://valgrind.kde.org ) for making it easy to debug.
+
+o Fixed a crash on Windows systems that don't include the iphlpapi
+ DLL. This affects Win95 and perhaps other variants. Thanks to Ganga
+ Bhavani (GBhavani(a)everdreamcorp.com) for reporting the problem and
+ sending the patch.
+
+o Ensured that the device type, os vendor, and os family OS
+ fingerprinting classification values are scrubbed for XML compliance
+ in the XML output. Thanks to Matthieu Verbert
+ (mve(a)zurich.ibm.com) for reporting the problem and sending a patch.
+
+o Rewrote the host IP (target specification) parser for easier
+ maintenance and to fix a bug found by Netris (netris(a)ok.kz)
+
+o Changed to Nmap XML DTD to use the same xmloutputversion (1.01) as
+ newer versions of Nmap. Thanks to Laurent Estieux
+ (laurent.estieux(a)free.fr) for reporting the problem.
+
+o Fixed compilation on some HP-UX 11 boxes thanks to a patch by Petter
+ Reinholdtsen (pere(a)hungry.com).
+
+o Fixed a portability problem on some OpenBSD and FreeBSD machines
+ thanks to a patch by Okan Demirmen (okan(a)demirmen.com).
+
+o Applied Martin Macok's (martin.macok(a)underground.cz) "cosmetics
+ patch", which fixes a few typos and minor problems.
+
+Nmap 3.75 [2004-10-18]
+
+o Implemented a huge OS fingerprint database update. The number of
+ fingerprints increased more than 20% to 1,353 and many of the
+ existing ones are much improved. Notable updates include the fourth
+ edition of Bell Lab's Plan9, Grandstream's BugeTone 101 IP Phone,
+ and Bart's Network Boot Disk 2.7 (which runs MS-DOS). Oh, and Linux
+ kernels up to 2.6.8, dozens of new Windows fingerprints including XP
+ SP2, the latest Longhorn warez, and many modified Xboxes, OpenBSD
+ 3.6, NetBSD up to 2.0RC4, Apple's AirPort Express WAP and OS X
+ 10.3.3 (Panther) release, Novell Netware 6.5, FreeBSD 5.3-BETA, a
+ bunch of Linksys and D-Link consumer junk, the latest Cisco IOS 12.2
+ releases, a ton of miscellaneous broadband routers and printers, and
+ much more.
+
+o Updated nmap-mac-prefixes with the latest OUIs from the IEEE.
+
+o Updated nmap-protocols with the latest IP protocols from IANA
+
+o Added a few new Nmap version detection signatures thanks to a patch
+ from Martin Macok (martin.macok(a)underground.cz).
+
+o Fixed a crash problem in the Windows version of Nmap, thanks to a
+ patch from Ganga Bhavani GBhavani(a)everdreamcorp.com).
+
+o Fixed Windows service scan crashes that occur with the error message
+ "Unexpected nsock_loop error. Error code 10022 (Unknown error)". It
+ turns out that Windows does not allow select() calls with all three
+ FD sets empty. Lame. The Linux select() man page even suggests
+ calling "select with all three sets empty, n zero, and a non-null
+ timeout as a fairly portable way to sleep with subsecond precision."
+ Thanks to Gisle Vanem (giva(a)bgnett.no) for debugging help.
+
+o Added --max_scan_delay parameter. Nmap will sometimes increase the
+ delay itself when it detects many dropped packets. For example,
+ Solaris systems tend to respond with only one ICMP port unreachable
+ packet per second during a UDP scan. So Nmap will try to detect
+ this and lower its rate of UDP probes to one per second. This can
+ provide more accurate results while reducing network congestion, but
+ it can slow the scans down substantially. By default (with no -T
+ options specified), Nmap allows this delay to grow to one second per
+ probe. This option allows you to set a lower or higher maximum.
+ The -T4 and -T5 scan modes now limit the maximum scan delay for TCP
+ scans to 10 and 5 ms, respectively.
+
+o Fixed a bug that prevented RPC scan (-sR) from working for UDP ports
+ unless service detection (-sV) was used. -sV is still usually a
+ better approach than -sR, as the latter ONLY handles RPC. Thanks to
+ Stephen Bishop (sbishop(a)idsec.co.uk) for reporting the problem and
+ sending a patch.
+
+o Fixed nmap_fetchfile() to better find custom versions of data files
+ such as nmap-services. Note that the implicitly read directory
+ should be ~/.nmap rather than ~/nmap . So you may have to move any
+ customized files you now have in ~/nmap . Thanks to nnposter
+ (nnposter(a)users.sourceforge.net) for reporting the problem and
+ sending a patch.
+
+o Changed XML output so that the MAC address <address> element comes
+ right after the IPv4/IPv6 <address> element. Apparently this is
+ needed to comply with the DTD ( https://svn.nmap.org/nmap/docs/nmap.dtd ).
+ Thanks to Adam Morgan (adam.morgan(a)Q1Labs.com) and Florian Ebner
+ (Florian.Ebner(a)e-bros.de) for the problem reports.
+
+o Fixed an error in the Nmap RPM spec file reported by Pascal Trouvin
+ (pascal.trouvin(a)wanadoo.fr)
+
+o Fixed a timing problem in which a specified large --send_delay would
+ sometimes be reduced to 1 second during a scan. Thanks to Martin
+ Macok (martin.macok(a)underground.cz) for reporting the problem.
+
+o Fixed a timing problem with sneaky and paranoid modes (-T1 and -T0)
+ which would cause Nmap to continually scan the same port and never
+ hit other ports when scanning certain firewalled hosts. Thanks to
+ Curtis Doty (Curtis(a)GreenKey.net) for reporting the problem.
+
+o Fixed a bug in the build system that caused most Nmap subdirectories
+ to be configured twice. Changing the variable holding the name of
+ subdirs from $subdirs to $nmap_cfg_subdirs resolved the problem --
+ configure must have been using that variable name for its own internal
+ operations. Anyway, this should reduce compile time significantly.
+
+o Made a trivial change to nsock/src/nsock_event.c to work around a "a
+ bug in GCC 3.3.1 on FreeBSD/sparc64". I found the patch by digging
+ around the FreeBSD ports tree repository. It would be nice if the
+ FreeBSD Nmap port maintainers would report such things to me, rather
+ than fixing it in their own Nmap tree and then applying the patch to
+ every future version. On the other hand, they deserve some sort of
+ "most up-to-date" award. I stuck Nmap 3.71-PRE1 in the dist
+ directory for a few people to test, and made no announcement or
+ direct link. The FreeBSD crew found it and upgraded anyway :). The
+ gcc-workaround patch was apparently submitted to the FreeBSD folks
+ by Marius Strobl (marius(a)alchemy.franken.de).
+
+o Fixed (I hope) an OS detection timing issue which would in some
+ cases lead to the warning that "insufficient responses for TCP
+ sequencing (3), OS detection may be less accurate." Thanks to Adam
+ Kerrison (adam(a)tideway.com) for reporting the problem.
+
+o Modified the warning given when files such as nmap-services exist in
+ both the compiled in NMAPDATADIR and the current working directory.
+ That message should now only appear once and is more clear.
+
+o Fixed ping scan subsystem to work a little bit better when
+ --scan_delay (or some of the slower -T templates which include a scan
+ delay) is specified. Thanks to Shahid Khan (khan(a)asia.apple.com)
+ for suggestions.
+
+o Taught connect() scan to properly interpret ICMP protocol
+ unreachable messages. Thanks to Alan Bishoff
+ (abishoff(a)arc.nasa.gov) for the report.
+
+o Improved the nmapfe.desktop file to better comply with standards.
+ Thanks to Stephane Loeuillet (stephane.loeuillet(a)tiscali.fr) for
+ sending the patch.
+
+Nmap 3.70 [2004-8-31]
+
+o Rewrote core port scanning engine, which is now named ultra_scan().
+ Improved algorithms make this faster (often dramatically so) in
+ almost all cases. Not only is it superior against single hosts, but
+ ultra_scan() can scan many hosts (sometimes hundreds) in parallel.
+ This offers many efficiency/speed advantages. For example, hosts
+ often limit the ICMP port unreachable packets used by UDP scans to
+ 1/second. That made those scans extraordinarily slow in previous
+ versions of Nmap. But if you are scanning 100 hosts at once,
+ suddenly you can receive 100 responses per second. Spreading the
+ scan amongst hosts is also gentler toward the target hosts. Nmap
+ can still scan many ports at the same time, as well. If you find
+ cases where ultra_scan is slower or less accurate, please send a
+ report (including exact command-lines, versions used, and output, if
+ possible) to Fyodor.
+
+o Added --max_hostgroup option which specifies the maximum number of
+ hosts that Nmap is allowed to scan in parallel.
+
+o Added --min_hostgroup option which specifies the minimum number of
+ hosts that Nmap should scan in parallel (there are some exceptions
+ where Nmap will still scan smaller groups -- see man page). Of
+ course, Nmap will try to choose efficient values even if you don't
+ specify hostgroup restrictions explicitly.
+
+o Rewrote TCP SYN, ACK, Window, and Connect() scans to use
+ ultra_scan() framework, rather than the old pos_scan().
+
+o Rewrote FIN, Xmas, NULL, Maimon, UDP, and IP Protocol scans to use
+ ultra_scan(), rather than the old super_scan().
+
+o Overhauled UDP scan. Ports that don't respond are now classified as
+ "open|filtered" (open or filtered) rather than "open". The (somewhat
+ rare) ports that actually respond with a UDP packet to the empty
+ probe are considered open. If version detection is requested, it
+ will be performed on open|filtered ports. Any that respond to any of
+ the UDP probes will have their status changed to open. This avoids a
+ the false-positive problem where filtered UDP ports appear to be
+ open, leading to terrified newbies thinking their machine is
+ infected by back orifice.
+
+o Nmap now estimates completion times for almost all port scan types
+ (any that use ultra_scan()) as well as service scan (version
+ detection). These are only shown in verbose mode (-v). On scans
+ that take more than a minute or two, you will see occasional updates
+ like:
+ SYN Stealth Scan Timing: About 30.01% done; ETC: 16:04 (0:01:09 remaining)
+ New updates are given if the estimates change significantly.
+
+o Added --exclude option, which lets you specify a comma-separated
+ list of targets (hosts, ranges, netblocks) that should be excluded
+ from the scan. This is useful to keep from scanning yourself, your
+ ISP, particularly sensitive hosts, etc. The new --excludefile reads
+ the list (newline-delimited) from a given file. All the work was
+ done by Mark-David McLaughlin (mdmcl(a)cisco.com> and William McVey
+ ( wam(a)cisco.com ), who sent me a well-designed and well-tested
+ patch.
+
+o Nmap now has a "port scan ping" system. If it has received at least
+ one response from any port on the host, but has not received
+ responses lately (usually due to filtering), Nmap will "ping" that
+ known-good port occasionally to detect latency, packet drop rate,
+ etc.
+
+o Service/version detection now handles multiple hosts at once for
+ more efficient and less-intrusive operation.
+
+o Nmap now wishes itself a happy birthday when run on September 1 in
+ verbose mode! The first public release was on that date in 1997.
+
+o The port randomizer now has a bias toward putting
+ commonly-accessible ports (80, 22, etc.) near the beginning of the
+ list. Getting a response early helps Nmap calculate response times and
+ detect packet loss, so the scan goes faster.
+
+o Host timeout system (--host_timeout) overhauled to support host
+ parallelization. Hosts times are tracked separately, so a host that
+ finishes a SYN scan quickly is not penalized for an exceptionally
+ slow host being scanned at the same time.
+
+o When Nmap has not received any responses from a host, it can now
+ use certain timing values from other hosts from the same scan
+ group. This way Nmap doesn't have to use absolute-worst-case
+ (300bps SLIP link to Uzbekistan) round trip timeouts and such.
+
+o Enabled MAC address reporting when using the Windows version
+ of Nmap. Thanks to Andy Lutomirski (luto(a)stanford.edu) for
+ writing and sending the patch.
+
+o Workaround crippled raw sockets on Microsoft Windows XP SP2 scans.
+ I applied a patch by Andy Lutomirski (luto(a)stanford.edu) which
+ causes Nmap to default to WinPcap sends instead. The WinPcap send
+ functionality was already there for versions of Windows such as NT and
+ Win98 that never supported Raw Sockets in the first place.
+
+o Changed how Nmap sends ARP requests on Windows to use the iphlpapi
+ SendARP() function rather than creating it raw and reading the
+ response from the Windows ARP cache. This works around a
+ (reasonable) feature of Windows Firewall which ignored such
+ unsolicited responses. The firewall is turned on by default as of
+ Windows XP SP2. This change was implemented by Dana Epp
+ (dana(a)vulscan.com).
+
+o Fixed some Windows portability issues discovered by Gisle Vanem
+ (giva(a)bgnett.no).
+
+o Upgraded libpcap from version 0.7.2 to 0.8.3. This was an attempt
+ to fix an annoying bug, which I then found was actually in my code
+ rather than libpcap :).
+
+o Removed Ident scan (-I). It was rarely useful, and the
+ implementation would have to be rewritten for the new ultra_scan()
+ system. If there is significant demand, perhaps I'll put it back in
+ sometime.
+
+o Documented the --osscan_limit option, which saves time by skipping
+ OS detection if at least one open and one closed port are not found on
+ the remote hosts. OS detection is much less reliable against such
+ hosts anyway, and skipping it can save some time.
+
+o Updated nmapfe.desktop file to provide better NmapFE desktop support
+ under Fedora Core and other systems. Thanks to Mephisto
+ (mephisto(a)mephisto.ma.cx) for sending the patch.
+
+o Further nmapfe.desktop changes to better fit the freedesktop
+ standard. The patch came from Murphy (m3rf(a)swimmingnoodle.com).
+
+o Fixed capitalization (with a Perl script) of many over-capitalized
+ vendor names in nmap-mac-prefixes.
+
+o Ensured that MAC address vendor names are always escaped in XML
+ output if they contain illegal characters (particularly '&'). Thanks
+ to Matthieu Verbert (mve(a)zurich.ibm.com) for the report and a patch.
+
+o Changed xmloutputversion in XML output from 1.0 to 1.01 to note that
+ there was a slight change (which was actually the MAC stuff in 3.55).
+ Thanks to Lionel CONS (lionel.cons(a)cern.ch) for the suggestion.
+
+o Many Windows portability fix and bug fixes, thanks to patch from
+ Gisle Vanem (giva(a)bgnett.no). With these changes, he was able to
+ compile Nmap on Windows using MingW + gcc 3.4 C++ rather than MS
+ Visual Studio.
+
+o Removed (addport) tags from XML output. They used to provide open
+ ports as they were discovered, but don't work now that the port
+ scanners scan many hosts at once. They did not specify an IP
+ address. Of course the appropriate (port) tags are still printed
+ once scanning of a target is complete.
+
+o Configure script now detects GNU/k*BSD systems (whatever those are),
+ thanks to patch from Robert Millan (rmh(a)debian.org)
+
+o Fixed various crashes and assertion failures related to the new
+ ultra_scan() system, that were found by Arturo "Buanzo" Busleiman
+ (buanzo(a)buanzo.com.ar), Eric (catastrophe.net), and Bill Petersen
+ (bill.petersen(a)alcatel.com).
+
+o Fixed some minor memory leaks relating to ping and list scanning as
+ well as the Nmap output table. These were found with Valgrind (
+ http://valgrind.kde.org/ ).
+
+o Provide limited --packet_trace support for TCP connect() (-sT)
+ scans.
+
+o Fixed compilation on certain Solaris machines thanks to a patch by
+ Tom Duffy (tduffy(a)sun.com)
+
+o Fixed some warnings that crop up when compiling Nbase C files with a
+ C++ compiler. Thanks to Gisle Vanem (giva(a)bgnett.no) for sending
+ the patch.
+
+o Tweaked the License blurb on source files and in the man page. It
+ clarifies some issues and includes a new GPL exception that
+ explicitly allows linking with the OpenSSL library. Some people
+ believe that the GPL and OpenSSL licenses are incompatible without
+ this special exception.
+
+o Fixed some serious runtime portability issues on *BSD systems.
+ Thanks to Eric (catastrophe.net) for reporting the problem.
+
+o Changed the argument parser to better detect bogus arguments to the
+ -iR option.
+
+o Removed a spurious warning message relating to the Windows ARP cache
+ being empty. Patch by Gisle Vanem (giva(a)bgnett.no).
+
+o Removed some C++-style line comments (//) from nbase, because some C
+ compilers (particularly on Solaris) barf on those. Problem reported
+ by Raju Alluri <Raju.Alluri(a)Sun.COM>
+
+Nmap 3.55 [2004-7-7]
+
+o Added MAC address printing. If Nmap receives packet from a target
+ machine which is on an Ethernet segment directly connected to the
+ scanning machine, Nmap will print out the target MAC address. Nmap
+ also now contains a database (derived from the official IEEE
+ version) which it uses to determine the vendor name of the target
+ ethernet interface. The Windows version of Nmap does not yet have
+ this capability. If any Windows developer types are interesting in
+ adding it, you just need to implement IPisDirectlyConnected() in
+ tcpip.cc and then please send me the patch. Here are examples from
+ normal and XML output:
+ MAC Address: 08:00:20:8F:6B:2F (SUN Microsystems)
+ <address addr="00:A0:CC:63:85:4B" vendor="Lite-on Communications" addrtype="mac" />
+
+o Updated the XML DTD to support the newly printed MAC addresses.
+ Thanks to Thorsten Holz (thorsten.holz(a)mmweg.rwth-aachen.de) for
+ sending this patch.
+
+o Added a bunch of new and fixed service fingerprints for version
+ detection. These are from Martin Macok
+ (martin.macok(a)underground.cz).
+
+o Normalized many of the OS names in nmap-os-fingerprints (fixed
+ capitalization, typos, etc.). Thanks to Royce Williams
+ (royce(a)alaska.net) and Ping Huang (pshuang(a)alum.mit.edu) for
+ sending patches.
+
+o Modified the mswine32/nmap_performance.reg Windows registry file to
+ use an older and more compatible version. It also now includes the
+ value "StrictTimeWaitSeqCheck"=dword:00000001 , as suggested by Jim
+ Harrison (jmharr(a)microsoft.com). Without that latter value, the
+ TcpTimedWaitDelay value apparently isn't checked. Windows users
+ should apply the new registry changes by clicking on the .reg file.
+ Or do it manually as described in README-WIN32. This file is also
+ now available in the data directory at
+ https://svn.nmap.org/nmap/docs/nmap_performance.reg
+
+o Applied patch from Gisle Vanem (giva(a)bgnett.no) which allows the
+ Windows version of Nmap to work with WinPCAP 3.1BETA (and probably
+ future releases). The WinPcap folks apparently changed the encoding
+ of adapter names in this release.
+
+o Fixed a ping scanning bug that would cause this error message: "nmap:
+ targets.cc:196: int hostupdate (Target **, Target *, int, int, int,
+ timeout_info *, timeval *, timeval *, pingtune *, tcpqueryinfo *,
+ pingstyle): Assertion `pt->down_this_block > 0' failed." Thanks to
+ Beirne Konarski (beirne(a)neo.rr.com) for reporting the problem.
+
+o If a user attempts -PO (the letter O), print an error suggesting
+ that they probably mean -P0 (Zero) to disable ping scanning.
+
+o Applied a couple patches (with minor changes) from Oliver Eikemeier
+ (eikemeier(a)fillmore-labs.com) which fix an edge case relating to
+ decoy scanning IP ranges that must be sent through different
+ interfaces, and improves the Nmap response to certain error codes
+ returned by the FreeBSD firewall system. The patches are from
+ http://cvsweb.freebsd.org/ports/security/nmap/files/ .
+
+o Many people have reported this error: "checking for type of 6th
+ argument to recvfrom()... configure: error: Cannot find type for 6th
+ argument to recvfrom()". In most cases, the cause was a missing or
+ broken C++ compiler. That should now be detected earlier with a
+ clearer message.
+
+o Fixed the FTP bounce scan to better detect filtered ports on the
+ target network.
+
+o Fixed some minor bugs related to the new MAC address printing
+ feature.
+
+o Fixed a problem with UDP-scanning port 0, which was reported by
+ Sebastian Wolfgarten (sebastian(a)wolfgarten.com).
+
+o Applied patch from Ruediger Rissmann (RRI(a)zurich.ibm.com), which
+ helps Nmap understand an EACCESS error, which can happen at least
+ during IPv6 scans from certain platforms to some firewalled targets.
+
+o Renamed ACK ping scan option from -PT to -PA in the documentation.
+ Nmap has accepted both names for years and will continue to do
+ so.
+
+o Removed the notice that Nmap is reading target specifications from a
+ file or stdin when you specify the -iL option. It was sometimes
+ printed to stdout even when you wanted to redirect XML or grepable
+ output there, because it was printed during options processing before
+ output files were handled. This change was suggested by Anders Thulin
+ (ath(a)algonet.se).
+
+o Added --source_port as a longer, but hopefully easier to remember,
+ alias for -g. In other words, it tries to use the constant source
+ port number you specify for probes. This can help against poorly
+ configured firewalls that trust source port 20, 53, and the like.
+
+o Removed undocumented (and useless) -N option.
+
+o Fixed a version detection crash reported in excellent detail by
+ Jedi/Sector One (j(a)pureftpd.org).
+
+o Applied patch from Matt Selsky (selsky(a)columbia.edu) which helps
+ Nmap build with OpenSSL.
+
+o Modified the configure/build system to fix library ordering problems
+ that prevented Nmap from building on certain platforms. Thanks to
+ Greg A. Woods (woods(a)weird.com) and Saravanan
+ (saravanan_kovai(a)HotPop.com) for the suggestions.
+
+o Applied a patch to Makefile.in from Scott Mansfield
+ (thephantom(a)mac.com) which enables the use of a DESTDIR variable
+ to install the whole Nmap directory structure under a different root
+ directory. The configure --prefix option would do the same thing in
+ this case, but DESTDIR is apparently a standard that package
+ maintainers like Scott are used to. An example usage is
+ "make DESTDIR=/tmp/packageroot".
+
+o Removed unnecessary banner printing in the non-root connect() ping
+ scan. Thanks to Tom Rune Flo (tom(a)x86.no) for the suggestion and
+ a patch.
+
+o Updated the headers at the top of each source file (mostly to
+ advance the copyright year to 2004 and note that Nmap is a registered
+ trademark).
+
+o The SInfo line of submitted fingerprints now provides the target's
+ OUI (first three bytes of the MAC address) if available. Example:
+ "M=00A0CC". To save a couple bytes, the "Time" field in SInfo has
+ been renamed to "Tm". The OUI helps identify the device vendor, and
+ is only available when the source and target machines are on the
+ same ethernet network.
+
+Nmap 3.50 [2004-1-18]
+
+o Integrated a ton of service fingerprints, increasing the number of
+ signatures more than 50%. It has now exceeded 1,000 for the first
+ time, and represents 180 unique service protocols from acap, afp,
+ and aim to xml-rpc, zebedee, and zebra.
+
+o Implemented a huge OS fingerprint update. The number of
+ fingerprints has increased more than 13% to 1,121. This is the first
+ time it has exceeded 1000. Notable updates include Linux 2.6.0, Mac
+ OS X up to 10.3.2 (Panther), OpenBSD 3.4 (normal and pf "scrub all"),
+ FreeBSD 5.2, the latest Windows Longhorn warez, and Cisco PIX 6.3.3.
+ As usual, there are a ton of new consumer devices from ubiquitous
+ D-Link, Linksys, and Netgear broadband routers to a number of new IP
+ phones including the Cisco devices commonly used by Vonage. Linksys
+ has apparently gone special-purpose with some of their devices, such
+ as their WGA54G "Wireless Game Adapter" and WPS54GU2 wireless print
+ server. A cute little MP3 player called the Rio Karma was submitted
+ multiple times and I also received and integrated fingerprints for the
+ Handspring Treo 600 (PalmOS).
+
+o Applied some man page fixes from Eric S. Raymond
+ (esr(a)snark.thyrsus.com).
+
+o Added version scan information to grepable output between the last
+ two '/' delimiters (that space was previously unused). So the format
+ is now "portnum/state/protocol/owner/servicename/rpcinfo/versioninfo"
+ as in "53/open/tcp//domain//ISC Bind 9.2.1/" and
+ "22/open/tcp//ssh//OpenSSH 3.5p1 (protocol 1.99)/". Thanks to
+ MadHat (madhat(a)unspecific.com) for sending a patch (although I did
+ it differently). Note that any '/' characters in the
+ version (or owner) field are replaced with '|' to keep awk/cut
+ parsing simple. The service name field has been updated so that it
+ is the same as in normal output (except for the same sort of
+ escaping discussed above).
+
+o Integrated an Oracle TNS service probe and match lines contributed
+ by Frank Berger (fm.berger(a)gmx.de). New probe contributions are
+ always appreciated!
+
+o Fixed a crash that could happen during SSL version detection due to
+ SSL session ID cache reference counting issues.
+
+o Applied patch from Rob Foehl (rwf(a)loonybin.net) which fixes the
+ --with_openssl=DIR configure argument.
+
+o Applied patch to nmap XML dtd (nmap.dtd) from Mario Manno
+ (mm(a)koeln.ccc.de). This accounts for the new version scanning
+ functionality.
+
+o Updated the Windows build system so that you don't have to manually
+ copy nmap-service-probes to the output directory. I also updated
+ the README-WIN32 to elaborate further on the build process.
+
+o Added configure option --with-libpcre=included which causes Nmap to
+ build with its included version of libpcre even if an acceptable
+ version is available on the system.
+
+o Upgraded to Autoconf 2.59 (from 2.57). This should help HP-UX
+ compilation problems reported by Petter Reinholdtsen
+ (pere(a)hungry.com) and may have other benefits as well.
+
+o Applied patch from Przemek Galczewski (sako(a)avet.com.pl) which
+ adds spaces to the XML output in places that apparently help certain
+ older XML parsers.
+
+o Made Ident-scan (-I) limits on the length and type of responses
+ stricter so that rogue servers can't flood your screen with 1024
+ characters. The new length limit is 32. Thanks to Tom Rune Flo
+ (tom(a)x86.no) for the suggestion and a patch.
+
+o Fingerprints for unrecognized services can now be a bit longer to
+ avoid truncating as much useful response information. While the
+ fingerprints can be longer now, I hope they will be less frequent
+ because of all the newly recognized services in this version.
+
+o The nmap-service-probes "match" directive can now take a service
+ name like "ssl/vmware-auth". The service will then be reported as
+ vmware-auth (or whatever follows "ssl/") tunneled by SSL, yet Nmap
+ won't actually bother initiating an SSL connection. This is useful
+ for SSL services which can be fully recognized without the overhead
+ of making an SSL connection.
+
+o Version scan now chops commas and whitespace from the end of
+ vendorproductname, version, and info fields. This makes it easier to
+ write templates incorporating lists. For example, the tcpmux service
+ (TCP port 1) gives a list of supported services separated by CRLF.
+ Nmap uses this new feature to print them comma separated without
+ having an annoying trailing comma as so (linewrapped):
+ match tcpmux m|^(sgi_[-.\w]+\r\n([-.\w]+\r\n)*)$|
+ v/SGI IRIX tcpmux//Available services: $SUBST(1, "\r\n", ",")/
+
+Nmap 3.48 [2003-10-6]
+
+o Integrated an enormous number of version detection service
+ submissions. The database has almost doubled in size to 663
+ signatures representing the following 130 services:
+ 3dm-http afp apcnisd arkstats bittorent chargen citrix-ica
+ cvspserver cvsup dantzretrospect daytime dict directconnect domain
+ echo eggdrop exec finger flexlm font-service ftp ftp-proxy gnats
+ gnutella-http hddtemp hp-gsg http http-proxy hylafax icecast ident
+ imap imaps imsp ipp irc ircbot irc-proxy issrealsecure jabber
+ kazaa-http kerberos-sec landesk-rc ldap linuxconf lmtp lotusnotes
+ lpd lucent-fwadm meetingmaker melange microsoft-ds microsoft-rdp
+ mldonkey msactivesync msdtc msrpc ms-sql-m mstask mud mysql
+ napster ncacn_http ncp netbios-ns netbios-ssn netrek netsaint
+ netstat netwareip networkaudio nntp nsclient nsunicast ntop-http
+ omniback oracle-mts oracle-tns pcanywheredata pksd pmud pop2 pop3
+ pop3s poppass postgresql powerchute printer qotd redcarpet
+ rendezvous rlogind rpc rsync rtsp sdmsvc sftp shell shivahose
+ sieve slimp3 smtp smux snpp sourceoffice spamd ssc-agent ssh ssl
+ svrloc symantec-av symantec-esm systat telnet time tinyfw upnp
+ uucp veritasnetbackup vnc vnc-http vtun webster whois wins
+ winshell wms X11 xfce zebra
+
+o Added the ability to execute "helper functions" in version
+ templates, to help clean up/manipulate data captured from a server
+ response. The first defined function is P() which includes only
+ printable characters in a captured string. The main impetus for
+ this is to deal with Unicode strings like
+ "W\0O\0R\0K\0G\0R\0O\0U\0P\0" that many MS protocols send. Nmap can
+ now decode that into "WORKGROUP".
+
+o Added SUBST() helper function, which replaces strings in matched
+ appname/version/extrainfo strings with something else. For example,
+ VanDyke Vshell gives a banner that includes
+ "SSH-2\.0-VShell_2_2_0_528". A substring match is used to pick out
+ the string "2_2_0_528", and then SUB21ST(1,"_",".") is called on that
+ match to form the version number 2.2.0.528.
+
+o If responses to a probe fail to match any of the registered match
+ strings for that probe, Nmap will now try against the registered "null
+ probe" match strings. This helps in the case that the NULL probe
+ initially times out (perhaps because of initial DNS lookup) but the
+ banner appears in later responses.
+
+o Applied some portability fixes (particularly for OpenBSD) from Chad
+ Loder (cloder(a)loder.us), who is also now the OpenBSD Nmap port
+ maintainer.
+
+o Applied some portability fixes from Marius Strobl
+ (marius(a)alchemy.franken.de).
+
+o The tarball distribution of Nmap now strips the binary at install
+ time thanks to a patch from Marius Strobl
+ (marius(a)alchemy.franken.de).
+
+o Fixed a problem related to building Nmap on systems that lack PCRE
+ libs (and thus have to use the ones included by Nmap). Thanks to Remi
+ Denis-Courmont (deniscr6(a)cti.ecp.fr) for the report and patch.
+
+o Alphabetized the service names in each Probe section in
+ nmap-service-probes (makes them easier to find and add to).
+
+o Fixed the problem several people reported where Nmap would quit with
+ a "broken pipe" error during service scanning. Thanks to Jari Ruusu
+ (jari.ruusu(a)pp.inet.fi) for sending a patch. The actual error
+ message was "Unexpected error in NSE_TYPE_READ callback. Error
+ code: 32 (Broken pipe)"
+
+o Fixed protocol scan (-sO), which I had broken when adding the new
+ output table format. It would complain "NmapOutputTable.cc:128:
+ failed assertion `row < numRows'". Thanks to Matt Burnett
+ (marukka(a)mac.com) for notifying me of the problem.
+
+o Upgraded Libpcap to the latest tcpdump.org version (0.7.2) from
+ 0.7.1
+
+o Applied a patch from Peter Marschall (peter(a)adpm.de) which adds
+ version detection support to nmapfe.
+
+o Fixed a problem with XML output being invalid when service detection
+ was done on SSL-tunneled ports. Thanks to the several people who
+ reported this - it means that folks are actually using the XML
+ output :).
+
+o Fixed (I hope) some Solaris Sun ONE compiler compilation problems
+ reported (w/patches) by Mikael Mannstrom (candyman(a)penti.org)
+
+o Fixed the --with-openssl configure option for people who have
+ OpenSSL installed in a path not automatically found by their
+ compilers. Thanks to Marius Strobl (marius(a)alchemy.franken.de) for
+ the patch.
+
+o Made some portability changes for HP-UX and possibly other types of
+ machines, thanks to a patch from Petter Reinholdtsen (pere(a)hungry.com)
+
+o Applied a patch from Matt Selsky (selsky(a)columbia.edu) which fixes
+ compilation on some Solaris boxes, and maybe others. The error said
+ "cannot compute sizeof (char)"
+
+o Applied some patches from the NetBSD ports tree that Hubert Feyrer
+ (hubert.feyrer(a)informatik.fh-regensburg.de) sent me. The NetBSD
+ Nmap ports page is at http://www.NetBSD.org/packages/net/nmap/ .
+
+o Applied some Makefile patches from the FreeBSD ports tree that I
+ found at http://www.freebsd.org/cgi/cvsweb.cgi/ports/security/nmap/files/
+
+Nmap 3.45 [2003-9-15]
+
+o Integrated more service signatures from MadHat
+ (madhat(a)unspecific.com), Brian Hatch (bri(a)ifokr.org), Niels
+ Heinen (zillion(a)safemode.org), Solar Designer
+ (solar(a)openwall.com), Seth Master
+ (smaster(a)stanford.edu), and Curt Wilson
+ (netw3_security(a)hushmail.com). We now have 378 signatures
+ recognizing 86 unique service protocols.
+
+o Added new HTTPOptions and RTSPRequest probes suggested by MadHat
+ (madhat(a)unspecific.com)
+
+o Changed the .spec file to compile Nmap RPMs without SSL support to
+ improve compatibility (Some users might not have OpenSSL, and even
+ those who do might not have the right version (libopenssl.so.2 vs
+ libopenssl.so.4, etc).
+
+o Applied a patch from Solar Eclipse (solareclipse(a)phreedom.org)
+ which increases the allowed size of the 'extrainfo' version field from
+ 80 characters to 128. The main benefit is to allow longer apache module
+ version strings.
+
+o Fixed Windows compilation and improved the Windows port slightly (no
+ more macro to redefine read().
+
+o Applied some updates to README-WIN32 sent in by Kirby Kuehl
+ (kkuehl(a)cisco.com). He improved the list of suggested registry
+ changes and also fixed a typo or two. He also attached a .reg file
+ automate the Nmap connect() scan performance enhancing registry
+ changes. I am now including that with the Nmap Windows binary .zip
+ distribution (and in mswin32/ of the source distro).
+
+o Applied a one-line patch from Dmitry V. Levin (ldv(a)altlinux.org)
+ which fixes a test Nmap does during compilation to see if an existing
+ libpcap installation is recent enough.
+
+Nmap 3.40PVT17 [2003-9-12]
+
+o Wrote and posted a new paper on version scanning to
+ https://nmap.org/book/vscan.html . Updated nmap-service-probes and
+ the Nmap man page to simply refer to this URL.
+
+o Integrated more service signatures from my own scanning as well as
+ contributions from Brian Hatch (bri(a)ifokr.org), MadHat
+ (madhat(a)unspecific.com), Max Vision (vision(a)whitehats.com), HD
+ Moore (hdm(a)digitaloffense.net), Seth Master
+ (smaster(a)stanford.edu), and Niels Heinen (zillion(a)safemode.org).
+ MadHat also contributed a new probe for Windows Media Service. Many
+ people set a LOT of signatures, which has allowed
+ nmap-service-probes to grow from 295 to 356 signatures representing
+ 85 service protocols!
+
+o Applied a patch (with slight changes) from Brian Hatch
+ (bri(a)ifokr.org) which enables caching of SSL sessions so that
+ negotiation doesn't have to be repeated when Nmap reconnects to the same
+ between probes.
+
+o Applied a patch from Brian Hatch (bri(a)ifokr.org) which optimizes the
+ requested SSL ciphers for speed rather than security. The list was
+ based on empirical evidence from substantial benchmarking he did with
+ tests that resemble nmap-service-scanning.
+
+o Updated the Nmap man page to discuss the new version scanning
+ options (-sV, -A).
+
+o I now include nmap-version/aclocal.m4 in the distribution as this is
+ required to rebuild the configure script (thanks to Dmitry V. Levin
+ (ldv(a)altlinux.org) for notifying me of the problem).
+
+o Applied a patch from Dmitry V. Levin (ldv(a)altlinux.org) which
+ detects whether the PCRE include file is <pcre.h> or <pcre
+
+o Applied a patch from Dmitry V. Levin (ldv(a)altlinux.org) which
+ fixes typos in some error messages. The patch apparently came from
+ the highly-secure and stable Owl and Alt Linux distributions. Check
+ them out at http://www.openwall.com/Owl/ and
+ http://www.altlinux.com/
+
+o Fixed compilation on Mac OS X - thanks to Brian Hatch
+ (bri(a)ifokr.org> and Ryan Lowe (rlowe(a)pablowe.net) for giving me
+ access to Mac OS X boxes.
+
+o Stripped down libpcre build system to remove libtool dependency and
+ other cruft that Nmap doesn't need (this was mostly a response to
+ libtool-related issues on Mac OS X).
+
+o Added a new --version_trace option which causes Nmap to print out extensive
+ debugging info about what version scanning is doing (this is a subset
+ of what you would get with --packet_trace). You should usually use
+ this in combination with at least one -d option.
+
+o Fixed a port number printing bug that would cause Nmap service
+ fingerprints to give a negative port number when the actual port was
+ above 32K. Thanks to Seth Master (smaster(a)stanford.edu) for finding
+ this.
+
+o Updated all the header text again to clarify our interpretation of
+ "derived works" after some suggestions from Brian Hatch
+ (bri(a)ifokr.org)
+
+o Updated the Nsock config.sub/config.guess to the same newer versions
+ that Nmap uses (for Mac OS X compilation).
+
+Nmap 3.40PVT16 [2003-9-6]
+
+o Fixed a compilation problem on systems w/o OpenSSL that was
+ discovered by Solar Designer. I also fixed some compilation
+ problems on non-IPv6 systems. It now compiles and runs on my
+ Solaris and ancient OpenBSD systems.
+
+o Integrated more services thanks to submissions from Niels Heinen
+ (zillion(a)safemode.org).
+
+o Canonicalized the headers at the top of each Nmap/Nsock header source
+ file. This included clarifying our interpretation of derived works,
+ updating the copyright date to 2003, making the header a bit wider,
+ and a few other light changes. I've been putting this off for a
+ while, because it required editing about a hundred !#$# files!
+
+Nmap 3.40PVT15 [2003-9-5]
+
+o Fixed a major bug in the Nsock time caching system. This could
+ cause service detection to inexplicably fail against certain ports in
+ the second or later machines scanned. Thanks to Solar Designer and HD
+ Moore for helping me track this down.
+
+o Fixed some *BSD compilation bugs found by
+ Zillion (zillion(a)safemode.org).
+
+o Integrated more services thanks to submissions from Fyodor Yarochkin
+ (fygrave(a)tigerteam.net), and Niels Heinen
+ (zillion(a)safemode.org), and some of my own exploring. There are
+ now 295 signatures.
+
+o Fixed a compilation bug found by Solar Designer on machines that
+ don't have struct sockaddr_storage. Nsock now just uses "struct
+ sockaddr *" like connect() does.
+
+o Fixed a bug found by Solar Designer which would cause the Nmap
+ portscan table to be truncated in -oN output files if the results are
+ very long.
+
+o Changed a bunch of large stack arrays (e.g. int portlookup[65536])
+ into dynamically allocated heap pointers. The large stack variables
+ apparently caused problems on some architectures. This issue was
+ reported by osamah abuoun (osamah_abuoun(a)hotmail.com).
+
+Nmap 3.40PVT14 [2003-9-4]
+
+o Added IPv6 support for service scan.
+
+o Added an 'sslports' directive to nmap-service-probes. This tells
+ Nmap which service checks to try first for SSL-wrapped ports. The
+ syntax is the same as the normal 'ports' directive for non-ssl ports.
+ For example, the HTTP probe has an 'sslports 443' line and
+ SMTP-detecting probes have and 'sslports 465' line.
+
+o Integrated more services thanks to submissions from MadHat
+ (madhat(a)unspecific.com), Solar Designer (solar(a)openwall.com), Dug
+ Song (dugsong(a)monkey.org), pope(a)undersec.com, and Brian Hatch
+ (bri(a)ifokr.org). There are now 288 signatures, matching these 65
+ service protocols:
+ chargen cvspserver daytime domain echo exec finger font-service
+ ftp ftp-proxy http http-proxy hylafax ident ident imap imaps ipp
+ ircbot ircd irc-proxy issrealsecure landesk-rc ldap meetingmaker
+ microsoft-ds msrpc mud mysql ncacn_http ncp netbios-ns netbios-ssn
+ netsaint netwareip nntp nsclient oracle-tns pcanywheredata pop3
+ pop3s postgres printer qotd redcarpet rlogind rpc rsync rtsp shell
+ smtp snpp spamd ssc-agent ssh ssl telnet time upnp uucp vnc
+ vnc-http webster whois winshell X11
+
+o Added a Lotus Notes probe from Fyodor Yarochkin
+ (fygrave(a)tigerteam.net).
+
+o Dug Song wins the "award" for most obscure service fingerprint
+ submission. Nmap now detects Dave Curry's Webster dictionary server
+ from 1986 :).
+
+o Service fingerprints now include a 'T=SSL' attribute when SSL
+ tunneling was used.
+
+o More portability enhancements thanks to Solar Designer and his Linux
+ 2.0 libc5 boxes.
+
+o Applied a patch from Gisle Vanem (giva(a)bgnett.no) which improves
+ Windows emulation of the UNIX mmap() and munmap() memory mapping calls.
+
+Nmap 3.40PVT13 [2003-9-1]
+
+o Added SSL-scan-through support. If service detection finds a port to be
+ SSL, it will transparently connect to the port using OpenSSL and use
+ version detection to determine what service lies beneath. This
+ feature is only enabled if OpenSSL is available at build time. A
+ new --with-openssl=DIR configure option is available if OpenSSL is
+ not in your default compiler paths. You can use --without-openssl
+ to disable this functionality. Thanks to Brian Hatch
+ (bri(a)ifokr.org) for sample code and other assistance. Make sure
+ you use a version without known exploitable overflows. In
+ particular, versions up to and including OpenSSL 0.9.6d and
+ 0.9.7-beta2 contained serious vulnerabilities described at
+ http://www.openssl.org/news/secadv_20020730.txt . Note that these
+ vulnerabilities are well over a year old at the time of this
+ writing.
+
+o Integrated many more services thanks to submissions from Brian
+ Hatch, HellNBack ( hellnbak(a)nmrc.org ), MadHat, Solar Designer,
+ Simple Nomad, and Shawn Wallis (swallis(a)ku.edu). The number of
+ signatures has grown from 242 to 271. Thanks!
+
+o Integrated Novell Netware NCP and MS Terminal Server probes from
+ Simple Nomad (thegnome(a)nmrc.org).
+
+o Fixed a segfault found by Solar Designer that could occur when
+ scanning certain "evil" services.
+
+o Fixed a problem reported by Solar Designer and MadHat (
+ madhat(a)unspecific.com ) where Nmap would bail when certain Apache
+ version/info responses were particularly long. It could happen in
+ other cases as well. Now Nmap just prints a warning.
+
+o Fixed some portability issues reported by Solar Designer
+ ( solar(a)openwall.com )
+
+Nmap 3.40PVT12 [2003-8-24]
+
+o I added probes for SSL (session startup request) and microsoft-ds
+ (SMB Negotiate Protocol request).
+
+o I changed the default read timeout for a service probe from 7.5s to 5s.
+
+o Fixed a one-character bug that broke many scans when -sV was NOT
+ given. Thanks to Blue Boar (BlueBoar(a)thievco.com) for the report.
+
+Nmap 3.40PVT11 [2003-8-23]
+
+o Integrated many more services thanks to submissions from Simple
+ Nomad, Solar Designer, jerickson(a)inphonic.com, Curt Wilson, and
+ Marco Ivaldi. Thanks! The match line count has risen from 201 to 242.
+
+o Implemented a service classification scheme to separate the
+ vendor/product name from the version number and any extra info that
+ is provided. Instead of v/[big version string]/, the new match
+ lines include v/[vendor/productname]/[version]/[extrainfo]/ . See
+ the docs at the top of nmap-service-probes for more info. This
+ doesn't change the normal output (which lumps them together anyway),
+ but they are separate in the XML so that higher-level programs can
+ easily match against just a product name. Here are a few examples
+ of the improved service element:
+ <service name="ssh" product="OpenSSH" version="3.1p1"
+ extrainfo="protocol 1.99" method="probed" conf="10" />
+ <service name="domain" product="ISC Bind" version="9.2.1"
+ method="probed" conf="10" />
+ <state state="open" /><service name="rpcbind" version="2"
+ extrainfo="rpc #100000" method="probed" conf="10" />
+ <service name="rndc" method="table" conf="3" />
+
+o I went through nmap-service-probes and added the vendor name to more
+ entries. I also added the service name where the product name
+ itself didn't make that completely obvious.
+
+o SCO Corporation of Lindon, Utah (formerly Caldera) has lately taken
+ to an extortion campaign of demanding license fees from Linux users
+ for code that they themselves knowingly distributed under the terms
+ of the GNU GPL. They have also refused to accept the GPL, claiming
+ that some preposterous theory of theirs makes it invalid. Meanwhile
+ they have distributed GPL-licensed Nmap in (at least) their
+ "Supplemental Open Source CD". In response to these blatant
+ violations, and in accordance with section 4 of the GPL, we hereby
+ terminate SCO's rights to redistribute any versions of Nmap in any
+ of their products, including (without limitation) OpenLinux,
+ Skunkware, OpenServer, and UNIXWare.
+
+Nmap 3.40PVT10 [2003-8-18]
+
+o Added "soft matches". These are similar to normal match lines in
+ that they provide a regex for recognizing a service (but no version).
+ But instead of stopping at softmatch service recognition, the scan
+ continues looking for more info. It only launches probes that are
+ known-capable of matching the softmatched service. If no version
+ number is found, at least the determined service is printed. A
+ service print for submission is also provided in that case. So this
+ provides more informative results and improves efficiency.
+
+o Cleaned up the Windows support a bit and did more testing and
+ fixing. Windows service detection seems to be working fine for me
+ now, although my testing is still pretty limited. This release
+ includes a Windows binary distribution and the README-WIN32 has been
+ updated to reflect new compilation instructions.
+
+o More service fingerprints! Thanks to Solar Designer, Max Vision,
+ Frank Denis (Jedi/Sector One) for the submissions. I also added a
+ bunch from my own testing. The number of match lines went from 179
+ to 201.
+
+o Updated XML output to handle new version and service detection
+ information. Here are a few examples of the new output:
+ <port protocol="tcp" portid="22"><state state="open" /><service
+ name="ssh" version="OpenSSH 3.1p1 (protocol 1.99)" method="probed"
+ conf="10" /></port>
+ <port protocol="tcp" portid="111"><state state="open" /><service
+ name="rpcbind" version="2 (rpc #100000)" method="probed" conf="10" /></port>
+ <port protocol="tcp" portid="953"><state state="open" /><service
+ name="rndc" method="table" conf="3" /></port>
+
+o Fixed issue where Nmap would quit when ECONNREFUSED was returned
+ when we try to read from an already-connected TCP socket. FreeBSD
+ does this for some reason instead of giving ECONNRESET. Thanks to
+ Will Saxon (WillS(a)housing.ufl.edu) for the report.
+
+o Removed the SERVICEMATCH_STATIC match type from
+ nmap-service-probes. There wasn't much benefit of this over regular
+ expressions, so it isn't worth maintaining the extra code.
+
+Nmap 3.40PVT9 [2003-8-16]
+
+o Added/fixed numerous service fingerprints thanks to submissions from
+ Max Vision, MadHat, Seth Master. Match lines went
+ from 164 to 179.
+
+o The WinPcap libraries used in the Windows build process have been
+ upgraded to version 3.0.
+
+o Most of the Windows port is complete. It compiles and service scan
+ works (I didn't test very deeply) on my WinXP box with VS.Net 2003.
+ I try to work out remaining kinks and do some cleanup for the next
+ version. The Windows code was restructured and improved quite a bit,
+ but much more work remains to be done in that area. I'll probably
+ do a Windows binary .zip release of the next version.
+
+o Various minor fixes
+
+Nmap 3.40PVT8 [2003-8-12]
+
+o Service scan is now OFF by default. You can activate it with -sV.
+ Or use the snazzy new -A (for "All recommended features" or
+ "Aggressive") option which turns on both OS detection and service
+ detection.
+
+o Fixed compilation on my ancient OpenBSD 2.3 machine (a Pentium 60 :)
+
+o Added/fixed numerous service fingerprints thanks to submissions from
+ Brian Hatch, HD Moore, Anand R., and some of my own testing. The
+ number of match lines in this version grows from 137 to 164! Please
+ keep 'em coming!
+
+o Various important and not-so-important fixes for bugs I encountered
+ while test scanning.
+
+o The RPC grinder no longer prints a startup message if it has no
+ RPC-detected ports to scan.
+
+o Some of the service fingerprint length limitations are relaxed a bit
+ if you enable debugging (-d).
+
+Nmap 3.40PVT7 [2003-8-10]
+
+o Added a whole bunch of services submitted by Brian Hatch
+ (bri(a)ifokr.org). I also added a few Windows-related probes.
+ Nmap-service-probes has gone from 101 match strings to 137. Please
+ keep the submissions coming.
+
+o The question mark now only appears for ports in the OPEN state and
+ when service detection was requested.
+
+o I now print a separator bar between service fingerprints when Nmap
+ prints more than one for a given host so that users understand to
+ submit them individually (suggested by Brian Hatch (bri(a)ifokr.org))
+
+o Fixed a bug that would cause Nmap to print "empty" service
+ fingerprints consisting of just a semi-colon. Thanks to Brian Hatch
+ (bri(a)ifokr.org) for reporting this.
+
+Nmap 3.40PVT6 [2003-8-8]
+
+o Banner-scanned hundreds of thousands of machines for ports
+ 21,23,25,110,3306 to collect default banners. Where the banner made
+ the service name/version obvious, I integrated them into
+ nmap-service-probes. This increased the number of 'match' lines from
+ 27 to more than 100.
+
+o Created the service fingerprint submission page at
+ http://www.insecure.org/cgi-bin/servicefp-submit.cgi
+
+o Changed the service fingerprint format slightly for easier
+ processing by scripts.
+
+o Applied a large portability patch from Albert Chin-A-Young
+ (china(a)thewrittenword.com). This cleans up a number of things,
+ particularly for IRIX, Tru64, and Solaris.
+
+o Applied NmapFE patch from Peter Marschall (peter(a)adpm.de) which
+ "makes sure changes in the relay host and scanned port entry fields
+ are displayed immediately, and also keeps the fields editable after
+ de- and reactivating them."
+
+Nmap 3.40PVT4 [2003-7-28]
+
+o Limited the size of service fingerprints to roughly 1024 bytes.
+ This was suggested by Niels Heinen (niels(a)heinen.ws), because the previous
+ limit was excessive. The number of fingerprints printed is also now
+ limited to 10.
+
+o Fixed a segmentation fault that could occur when ping-scanning large
+ networks.
+
+o Fixed service scan to gracefully handle host_timeout occurrences when
+ they happen during a service scan.
+
+o Fixed a service_scan bug that would cause an error when hosts send
+ data and then close() during the NULL probe (when we haven't sent
+ anything).
+
+o Applied a patch from Solar Designer (solar(a)openwall.com) which
+ corrects some errors in the Russian man page translation and also a
+ couple typos in the regular man page. Then I spell-checked the man
+ page to reduce future instances of foreigners sending in diffs to
+ correct my English :).
+
+Nmap 3.40PVT3 [2003-7-28]
+
+o Nmap now prints a "service fingerprint" for services that it is
+ unable to match despite returning data. The web submission page it
+ references is not yet available.
+
+o Service detection now does RPC grinding on ports it detects to be
+ running RPC.
+
+o Fixed a bug that would cause Nmap to quit with an Nsock error when
+ --host_timeout was used (or when -T5 was used, which sets it
+ implicitly).
+
+o Fixed a bug that would cause Nmap to fail to print the OS
+ fingerprint in certain cases. Thanks to Ste Jones
+ (root(a)networkpenetration.com) for the problem report.
+
+Nmap 3.40PVT2 [2003-7-26]
+
+o Nmap now has a simple VERSION detection scheme. The 'match' lines in
+ nmap-service-probes can specify a template version string
+ (referencing subexpression matches from the regex in a Perl-like
+ manner) so that the version is determined at the same time as the
+ service. This handles many common services in a highly efficient
+ manner. A more complex form of version detection (that initiates
+ further communication w/the target service) may be necessary
+ eventually to handle services that aren't as forthcoming with
+ version details.
+
+o The Nmap port state table now wastes less whitespace due to using a new
+ and stingy NmapOutputTable class. This makes it easier to read, and
+ also leaves more room for version info and possibly other enhancements.
+
+o Added 's' option to match lines in nmap-service-probes. Just as
+ with the Perl 's' option, this one causes '.' in the regular
+ expression to match any character INCLUDING newline.
+
+o The WinPcap header timestamp is no longer used on Windows as it
+ sometimes can be a couple seconds different than gettimeofday() (which
+ is really _ftime() on Windows) for some reason. Thanks to Scott
+ Egbert (scott.egbert(a)citigroup.com) for the report.
+
+o Applied a patch by Matt Selsky (selsky(a)columbia.edu) which fixes
+ configure.in in such a way that the annoying header file "present but
+ cannot be compiled" warning for Solaris.
+
+o Applied another patch from Matt that (we hope) fixes the "present
+ but cannot be compiled" warning -- this time for Mac OS X.
+
+o Port table header names are now capitalized ("SERVICE", "PORT", etc)
+
+Nmap 3.40PVT1 [2003-7-17]
+
+o Initial implementation of service detection. Nmap will now probe
+ ports to determine what is listening, rather than guessing based on
+ the nmap-services table lookup. This can be very useful for
+ services on unidentified ports and for UDP services where it is not
+ always clear (without these probes) whether the port is really open
+ or just firewalled. It is also handy for when services are run on
+ the well-known-port of another protocol -- this is happening more
+ and more as users try to circumvent increasingly strict firewall
+ policies.
+
+o Nmap now uses the excellent libpcre (Perl Compatible Regular
+ Expressions) library from http://www.pcre.org/ . Many systems
+ already have this, otherwise Nmap will use the copy it now includes.
+ If your libpcre is hidden away in some nonstandard place, give
+ ./configure the new --with-libpcre=DIR directive.
+
+o Nmap now uses the C++ Standard Template Library (STL). This makes
+ programming easier, but if it causes major portability or bloat
+ problems, I'll reluctantly remove it.
+
+o Applied a patch from Javier Kohen (jkohen(a)coresecurity.com) which
+ normalizes the names of many Microsoft entries in the
+ nmap-os-fingerprints file.
+
+o Applied a patch by Florin Andrei (florin(a)sgi.com) to the Nmap RPM
+ spec file. This uses the 'Epoch' flag to prevent the Redhat Network
+ tool from marking my RPMs as "obsolete" and "upgrading" to earlier
+ Redhat-built versions. A compilation flag problem is also fixed.
+
+Nmap 3.30 [2003-6-28]
+
+o Implemented the largest-ever OS fingerprint update! Roughly 300
+ fingerprints were added/modified. These massive changes span the
+ gamut from AIX 5.1 to the ZyXEL Prestige broadband router line.
+ Notable updates include OpenBSD 3.3, FreeBSD 5.1, Mac OS X 10.2.6,
+ Windows 2003 server, and more WAPs and broadband routers than you
+ can shake a stick at. Someone even submitted a fingerprint for
+ Debian Linux running on the Microsoft Xbox. You have to love that
+ irony :). Thanks to everyone who submitted fingerprints using the
+ URL Nmap gives you when it gets a clean reading but is stumped. The
+ fingerprint DB now contains almost 1000 fingerprints.
+
+o Went through every one of the fingerprints to normalize the
+ descriptions a bit. I also looked up what all of the devices are
+ (thanks E*Bay and Google!). Results like "Nexland ISB Pro800 Turbo"
+ and "Siemens 300E Release 6.5" are much more useful when you add the
+ words "cable modem" and "business phone system"
+
+o Added a new classification system to nmap-os-fingerprints. In
+ addition to the standard text description, each entry is now
+ classified by vendor name (e.g. Sun), underlying OS (e.g. Solaris),
+ OS generation (e.g. 7), and device type ("general purpose", router,
+ switch, game console, etc). This can be useful if you want to (say)
+ locate and eliminate the SCO systems on a network, or find the
+ wireless access points (WAPs) by scanning from the wired side.
+
+o Classification system described above is now used to print out a
+ "device type" line and OS categories for matches. The free-form
+ English details are still printed as well. Nmap can sometimes
+ provide classifications even where it used to provide nothing
+ because of "too many matches". These have been added to XML output
+ as well. They are not printed for the "grepable output", as I
+ consider that format deprecated.
+
+o Nmap will now sometimes guess in the "no exact matches" case, even
+ if you don't use the secret --osscan_guess or -fuzzy options.
+
+o Applied another huge NmapFE patch from Peter Marschall
+ (peter(a)adpm.de). This revamps the interface to use a tabbed
+ format that allows for many more Nmap options to be used. It also
+ cleans up some crufty parts of the code. Let me and Peter know what
+ you think (and if you encounter any problems).
+
+o Windows and Amiga ports now use packet receive times from libpcap.
+ Let me know if you get any "time computation problem" errors.
+
+o Updated version of the Russian man page translation from Alex Volkov
+ (alex(a)cherepovets-city.ru).
+
+Nmap 3.28 [2003-6-14]
+
+o Fixed (I hope) an issue that would cause Nmap to print "Serious time
+ computation problem in adjust_timeout ..." and quit. The ultimate
+ cause was demonstrated by this --packet_trace snippet that Russel
+ Miller (rmiller(a)duskglow.com) sent me:
+ SENT (0.0500s) ICMP 0.0.0.0 > 127.0.0.1 Echo request (type=8/code=0) ...
+ RCVD (0.0450s) ICMP 127.0.0.1 > 127.0.0.1 Echo reply (type=0/code=0) ...
+ As you can see, the ping reply appears to come BEFORE the request
+ was sent(!). This sort of thing happens on at least Linux and
+ Windows. The send time is obtained from gettimeofday(timeval, NULL),
+ while receive time libpcap packet header. If anyone knows why this
+ occurs, or (even better) knows a good way to fix it, let me know.
+ For now, I am allowing the response to come up to .05s "before" the
+ request. That is gross.
+
+o For years, Nmap has added -I/usr/local/include and -L/usr/local/lib
+ to the compiler line to grab local libraries. I have removed this
+ behavior by default, and added a '--with-localdirs' configure option
+ that adds it back. If Nmap fails to compile now without the above
+ option, please let me know. I can change the default back if this
+ change causes more problems than it solves. People (such as certain
+ ports tree packagers) who know they don't want /usr/local should
+ specify --without-localdirs rather than relying on that always being
+ the default.
+
+o Fixed (I hope) a problem that led to the error message "Assertion
+ `tqi->sockets[probe_port_num][seq] == -1' failed".
+
+o Fixed a problem that would cause Nmap on Windows to send ICMP ping
+ packets from 0.0.0.0 instead of the appropriate source IP. Thanks
+ to Yeti (boxed(a)blueyonder.co.uk) for the report.
+
+o Applied some changes from Solar Designer (solar(a)openwall.com)
+ which fix some typos and also suggest safer /tmp/ behavior in the
+ HACKING file and Lithuanian man page. These changes are for the
+ Nmap package of his Openwall GNU/*/Linux (Owl) distribution.
+ (http://www.openwall.com/Owl/)
+
+o For Solaris, I now define NET_SIZE_T to size_t rather than socklen_t
+ in nmap.h. Isn't that exciting?!!! Hopefully this will help
+ compilation on Solaris 2.6 (and perhaps earlier). If any Solaris
+ users notice new compilation problems, please let me know. Thanks to
+ Al Smith (Al.Smith(a)aeschi.ch.eu.org) for reporting the issue.
+
+o Removed an errant getopt() prototype in nbase/getopt.h which should
+ hopefully improve compilation on certain Solaris boxes and BSD
+ variants.
+
+o SCO operating systems are no longer supported due to their recent
+ (and absurd) attacks against Linux and IBM. Bug reports relating to
+ UnixWare will be ignored, or possibly even laughed at derisively.
+ Note that I have no reason to believe anyone has ever used Nmap on
+ SCO systems. UnixWare and OpenServer suck.
+
+o Fixed a problem with small --max_parallelism values when non-root ping
+ scanning that would cause Nmap to say "sendconnecttcpquery: Could
+ not scavenge a free socket!" and quit. Problem was reported by
+ Justin A (justin(a)bouncybouncy.net) as Debian Bug #195463.
+
+o Applied (with a few modifications) a large NmapFE patch from Peter
+ Marschall (peter(a)adpm.de). This patch adds a bunch more scan/ping
+ options and cleans up some redundant NmapFE code.
+
+o Included new Russian man page translation by Alex Volkov
+ (alex(a)cherepovets-city.ru)
+
+o Changed many single-quotes (') into double quotes (") in the man
+ page due to a disagreement over whether to represent them as (') or
+ (\') in nroff.
+
+o Included --packet_trace support for Explicit Congestion Notification
+ (RFC 2481/3168) flags thanks to a patch sent in by Maik Pfeil
+ (root(a)bundesspionageministerium.de)
+
+o Included --packet_trace support for a few (unusual) ICMP types in
+ case Nmap receives them. The patch was also sent by Maik Pfeil.
+
+o Fixed a problem with redirecting XML/Grep/Machine output to stdout
+ on Windows (e.g. -oX - ). Problem was reported by Wei Jiang
+ (Wei.Jiang(a)bindview.com)
+
+o Made "-g -Wall" compiler flags dependent on availability of gcc/g++
+ sine some other compilers do not support them.
+
+o I spam-protected the email addresses in this file. I fervently hope
+ that within 5 years we will be able to defeat this scourge through
+ technology and laws, so that we may again list our email addresses
+ openly without fear of abuse by criminal spammers. Oh, and it would
+ be a shame if the spiders went through this whole page and only
+ found uce@ftc.gov, rhundt@fcc.gov, jquello@fcc.gov, sness@fcc.gov,
+ president@whitehouse.gov, haesslich@loyalty.org, and rchong@fcc.gov.
+
+Nmap 3.27 [2003-4-28]
+
+o Nmap now compiles under Amiga thanks to patches sent by Diego
+ Casorran (dcr8520(a)amiga.org).
+
+o Fixed a backwards WIN32 ifdef that broke UDP and small-fragment
+ scans for some operating systems other than Linux and Windows.
+ Thanks to Guido van Rooij (guido(a)gvr.org) for reporting the problem
+ and sending a patch.
+
+o Applied patch from Marius Strobl (marius(a)alchemy.franken.de) which improves
+ the definition of NET_SIZE_T on FreeBSD so that it compiles on
+ 64-bit platforms.
+
+Nmap 3.26 [2003-4-24]
+
+o Fixed Mac OS X Compilation (at least on most of the machines
+ tested). You will probably need to type
+ "./configure CPP=/usr/bin/cpp" instead of simply "./configure". If
+ you still have trouble, drop me an email. Thanks to everyone who
+ provided or offered shell accounts!
+
+o Fixed a segmentation fault several people reported that was
+ introduced in 3.25. This problem manifests itself intermittently
+ in many normal situations involving large-network scanning. So all
+ 3.25 users are urged to upgrade. Pre-3.25 users should upgrade too,
+ since 3.25 included so many improvements :).
+
+Nmap 3.25 [2003-4-19]
+
+o I added UDP-based "ping" scanning. The -PU option can take an
+ optional portlist like the TCP "ping" options (-PS, -PA), but it sends
+ a UDP packet to the targets and expects hosts that are up to reply
+ with a port unreachable (or possibly a UDP response if the port is
+ open). This one is likely to work best against closed ports, since
+ many open ports don't respond to empty requests.
+
+o Fixed (I hope) problem where Nmap would abort, complaining that
+ "Assertion `pt->down_this_block > 0' failed". Thanks to
+ ray(a)24hoursecurity.org and mugz(a)x-mafia.com for reporting and
+ helping me debug this problem.
+
+o Fixed a GCC dependency reported by Ayamura Kikuchi
+ (ayamura(a)keio.net)
+
+o Fixed an "assertion failure" which would cause Nmap to exit when you
+ specify a --max_rtt_timeout below 3000. Thanks to Tammy Rathbun
+ (rathbun2(a)llnl.gov) and Jan Roger Wilkens (jrw(a)proseq.net) for
+ reporting this.
+
+o Packet receive times are now obtained from libpcap rather than
+ simply using the time the packets are passed to Nmap. This should
+ improve performance slightly. I was not able to get this to work
+ properly on Windows (either pcap or raw) -- join the nmap-dev list
+ if you have ideas.
+
+o Fixed bug that caused Nmap to ignore certain RST responses when you
+ do both -PS and -PA.
+
+o Modified ping scan to work better when many instances of Nmap are
+ executed concurrently.
+
+o I'm now linking directly to the gzip compressed version of Nmap on
+ the homepage as well as the .bz2.
+
+o Fixed a portability problem that caused BSD Make to bail out.
+
+o Fixed a divide by zero error caused when non-root users (on UNIX)
+ explicitly request ICMP pings (which require root privileges). Now it
+ prints a warning and uses the normal non-root TCP connect() ping.
+ Jaroslav Sladek (jup(a)matfyz.cz) found the bug and provided the patch.
+
+o Made Nmap more tolerant of corrupt nmap-services and nmap-protocols
+ files thanks to report & patch sent by Phix (phix(a)hush.com)
+
+o Added some more port numbers sent in by Seth Master
+ (smaster(a)stanford.edu). He has been a frequent nmap-services
+ contributor in the last couple months.
+
+o Added --packet_trace support to Windows
+
+o Removed superfluous "addport" line in the XML output (patch from Max
+ Schubert (nmap(a)webwizarddesign.com)).
+
+o Merged wintcpip.cc into tcpip.cc to avoid the headache of
+ maintaining many nearly-identical functions.
+
+o Fixed an assertion failure crash related to combining port 0 scans
+ and OS scan. Thanks to A.Jones(a)mvv.de for reporting this.
+
+o Fixed some compilation problems on systems without IPv6 support --
+ patch sent by Jochen Erwied (Jochen.Erwied(a)mbs-software.info)
+
+o Applied patch from Jochen Erwied (Jochen.Erwied(a)mbs-software.info)
+ which fixes the format strings used for printing certain timestamps.
+
+o Upgraded to autoconf 2.57, including the latest config.guess/config.sub
+
+o Renamed configure.ac files to configure.in as recommended by the
+ latest autoconf documentation.
+
+o Changed the wording of NmapFE Gnome entries to better-comply with
+ Gnome's Human Interface Guidelines (HIG). Suggested by Axel Krauth
+ (krauth(a)fmi.uni-passau.de)
+
+Nmap 3.20 [2003-3-18]
+
+o The random IP input option (-iR) now takes an argument specifying
+ how many IPs you want to scan (e.g. -iR 1000). Specify 0 for the old
+ never-ending scan behavior.
+
+o Fixed a tricky memory leak discovered by Mugz (mugz(a)x-mafia.com).
+
+o Fixed output truncation problem noted by Lionel CONS (lionel.cons(a)cern.ch)
+
+o Fixed a bug that would cause certain incoming ICMP error messages to
+ be improperly ignored.
+
+Nmap 3.15BETA3 [2003-3-16]
+
+o Made numerous improvements to the timing behavior of "-T Aggressive"
+ (same as -T4) scans. It is now recommended for regular use by
+ impatient people with a fast connection. "-T Insane" mode has also
+ been updated, but we only recommend that for, well, insane people.
+
+o Made substantial changes to the SYN/connect()/Window scanning
+ algorithms for improved speeds, especially against heavily filtered
+ hosts. If you notice any timing problems (misidentified ports,
+ etc.), please send me the details (including full Nmap output and a
+ description of what is wrong). Reports of any timing problems with
+ -T4 would be helpful as well.
+
+o Changed Nmap such that ALL syn scan packets are sent from the port
+ you specify with -g. Retransmissions used to utilize successively
+ higher ports. This change has a downside in that some operating
+ systems (such as Linux) often won't reply to the retransmissions
+ because they reuse the same connection specifier quad
+ (srcip:srcport:dstip:dstport). Overall I think this is a win.
+
+o Added timestamps to "Starting nmap" line and each host port scan in
+ verbose (-v) mode. These are in ISO 8601 standard format because
+ unlike President Bush, we actually care about International
+ consensus :).
+
+o Nmap now comes by default in .tar.bz2 format, which compresses about
+ 20% further. You can still find .tgz in the dist directory at
+ http://download.insecure.org/nmap/dist/?M=D .
+
+o Various other minor bug fixes, new services, fingerprints, etc.
+
+Nmap 3.15BETA2 [2003-2-26]
+
+o I added support for a brand new "port" that many of you may have
+ never scanned before! UDP & TCP "port 0" (and IP protocol 0) are now
+ permitted if you specify 0 explicitly. An argument like "-p -40"
+ would still scan ports 1-40. Unlike ports, protocol 0 IS now scanned
+ by default. This now works for ping probes too (e.g., -PS, -PA).
+
+o Applied patch by Martin Kluge (martin(a)elxsi.info) which adds --ttl
+ option, which sets the outgoing IPv4 TTL field in packets sent via
+ all raw scan types (including ping scans and OS detection). The
+ patch "should work" on Windows, but hasn't been tested. A TTL of 0
+ is supported, and even tends to work on a LAN:
+ 14:17:19.474293 192.168.0.42.60214 > 192.168.0.40.135: S 326:326(0) [ttl 0]
+ 14:17:19.474456 192.168.0.40.135 > 192.168.0.42.60214: S 280:280(0) ack 326 (ttl 128)
+
+o Applied patch by Gabriel L. Somlo ( somlo(a)acns.colostate.edu ) which
+ extends the multi-ping-port functionality to nonroot and IPv6
+ connect() users.
+
+o I added a new --datadir command line option which allows you to
+ specify the highest priority directory for Nmap data files
+ nmap-services, nmap-os-fingerprints, and nmap-rpc. Any files which
+ aren't in the given dir, will be searched for in the $NMAPDIR
+ environmental variable, ~/nmap/, a compiled in data directory
+ (e.g. /usr/share/nmap), and finally the current directory.
+
+o Fixed Windows (VC++ 6) compilation, thanks to patches from Kevin
+ Davis (computerguy(a)cfl.rr.com) and Andy Lutomirski
+ (luto(a)stanford.edu)
+
+o Included new Latvian man page translation by
+ "miscelerious options" (misc(a)inbox.lv)
+
+o Fixed Solaris compilation when Sun make is used rather than GNU
+ make. Thanks to Tom Duffy (tduffy(a)sun.com) for assistance.
+
+o Applied patch from Stephen Bishop (sbishop(a)idsec.co.uk) which
+ prevents certain false-positive responses when Nmap raw TCP ping scans
+ are being run in parallel.
+
+o To emphasize the highly professional nature of Nmap, I changed all
+ instances of "fucked up" in error message text into "b0rked".
+
+o Fixed a problem with nmap-frontend RPMs that would cause a bogus
+ /bin/xnmap link to be created (it should only create
+ /usr/bin/xnmap). Thanks to Juho Schultz
+ (juho.schultz(a)astro.helsinki.fi) for reporting the problem.
+
+o I made the maximum number of allowed routes and interfaces allowed
+ on the scanning machine dynamic rather than hardcoded #defines of 1024
+ and 128. You never know -- some wacko probably has that many :).
+
+Nmap 3.15BETA1 [2003-2-19]
+
+o Integrated the largest OS fingerprint DB updates ever! Thanks to
+ everyone who contributed signatures! New or substantially modified
+ fingerprints included the latest Windows 2K/XP changes, Cisco IOS
+ 12.2-based routers and PIX 6.3 firewalls, FreeBSD 5.0, AIX 5.1,
+ OpenBSD 3.2, Tru64 5.1A, IBM OS/400 V5R1M0, dozens of wireless APs,
+ VOIP devices, firewalls, printers, print servers, cable modems,
+ webcams, etc. We've even got some mod-chipped Xbox fingerprints
+ now!
+
+o Applied NetBSD portability patch by Darren Reed
+ (darrenr(a)reed.wattle.id.au)
+
+o Updated Makefile to better-detect if it can't make nmapfe and
+ provide a clearer error message. Also fixed a couple compiler
+ warnings on some *BSD platforms.
+
+o Applied patch from "Max" (nmap(a)webwizarddesign.com) which adds the
+ port owner to the "addport" XML output lines which are printed (only
+ in verbose mode, I think) as each open port is discovered.
+
+o I killed the annoying whitespace that is normally appended after the
+ service name. Now it is only there when an owner was found via -sI
+ (in which case there is a fourth column and so "service" must be
+ exactly 24 characters).
+
+Nmap 3.10ALPHA9 [2002-12-25]
+
+o Reworked the "ping scan" algorithm (used for any scan except -P0 or
+ -sL) to be more robust in the face of low-bandwidth and congested
+ connections. This also improves reliability in the multi-port and
+ multi-type ping cases described below.
+
+o "Ping types" are no longer exclusive -- you can now do combinations
+ such as "-PS22,53,80 -PT113 -PN -PE" in order to increase your odds of
+ passing through strict filters. The "PB" flag is now deprecated
+ since you can achieve the same result via "PE" and "PT" options.
+
+o Applied patch (with modest changes) by Gabriel L. Somlo
+ (somlo(a)acns.colostate.edu), which allows multiple TCP probe ports in
+ raw (root) mode. See the previous item for an example.
+
+o Fixed a libpcap compilation issue noted by Josef 'Jupp' Schugt
+ (deusxmachina(a)webmail.co.za) which relates to the definition (or
+ lack thereof) of ARPHRD_HDLC (used for Cisco HDLC frames).
+
+o Tweaked the version number (-V) output slightly.
+
+Nmap 3.10ALPHA7 [2002-12-18]
+
+o Upgraded libpcap from version 0.6.2 to 0.7.1. Updated the
+ libpcap-possiblymodified/NMAP_MODIFICATIONS file to give a much
+ more extensive list (including diffs) of the changes included
+ in the Nmap bundled version of Libpcap.
+
+o Applied patch to fix a libpcap alignment bug found by Tom Duffy
+ (tduffy(a)sun.com).
+
+o Fixed Windows compilation.
+
+o Applied patch by Chad Loder (cloder(a)loder.us) of Rapid7 which
+ fixes OpenBSD compilation. I believe Chad is now the official
+ OpenBSD Nmap "port" maintainer. His patch also adjusted
+ random-scan (-iR) to include the recently allocated 82.0.0.0/8
+ space.
+
+o Fixed (I hope) a few compilation problems on
+ non-IPv6-enabled machines which were noted by Josef 'Jupp'
+ Schugt (jupp(a)gmx.de)
+
+o Included some man page translations which were inadvertently
+ missed in previous tarballs.
+
+o Applied patch from Matthieu Verbert (mve(a)zurich.ibm.com) which
+ places the Nmap man pages under ${prefix}/share/man rather than
+ ${prefix}/man when installed via RPM. Maybe the tarball
+ install should do this too? Opinions?
+
+o Applied patch from R Anderson (listbox(a)pole-position.org) which
+ improves the way ICMP port unreachables from intermediate hosts
+ are handled during UDP scans.
+
+o Added note to man page related to Nmap US export control. I
+ believe Nmap falls under ECCN 5D992, which has no special
+ restrictions beyond the standard export denial to a handful of
+ rogue nations such as Iraq and North Korea.
+
+o Added a warning that some hosts may be skipped and/or repeated
+ when someone tries to --resume a --randomize_hosts scan. This
+ was suggested by Crayden Mantelium (crayden(a)sensewave.com)
+
+o Fixed a minor memory leak noted by Michael Davis
+ (mike(a)datanerds.net).
+
+Nmap 3.10ALPHA4 [2002-11-11]
+
+o Applied patch by Max Schubert (nmap(a)webwizarddesign.com) which adds
+ an add-port XML tag whenever a new port is found open when Nmap is
+ running in verbose mode. The new tag looks like:
+ <addport state="open" portid="22" protocol="tcp"/>
+ I also updated docs/nmap.dtd to recognize this new tag.
+
+o Added German translation of Nmap man page by Marc Ruef
+ (marc.ruef(a)computec.ch). It is also available at
+ https://nmap.org/man/de/
+
+o Includes a brand new French translation of the man page by Sebastien
+ Blanchet. You could probably guess that it is available at
+ https://nmap.org/man/fr/
+
+o Applied some patches from Chad Loder (cloder(a)loder.us) which update
+ the random IP allocation pool and improve OpenBSD support. Some
+ were from the OBSD Nmap patchlist.
+
+o Fixed a compile problem on machines without PF_INET6. Thanks to
+ Josef 'Jupp' Schugt (deusxmachina(a)webmail.co.za) for noting this.
+
+Nmap 3.10ALPHA3 [2002-9-15]
+
+o Added --min_parallelism option, which makes scans more aggressive
+ and MUCH faster in certain situations -- especially against
+ firewalled hosts. It is basically the opposite of --max_parallelism
+ (-M). Note that reliability can be lost if you push it too far.
+
+o Added --packet_trace option, which tells Nmap to display all of the
+ packets it sends and receives in a format similar to tcpdump. I
+ mostly added this for debugging purposes, but people wishing to learn
+ how Nmap works or for experts wanting to ensure Nmap is doing
+ exactly what they expect. If you want this feature supported under
+ Windows, please send me a patch :).
+
+o Fixed a segmentation fault in Idlescan (-sI).
+
+o Made Idlescan timing more conservative when -P0 is specified to
+ improve accuracy.
+
+o Fixed an infinite-loop condition that could occur during certain
+ dropped-packet scenarios in an Idle scan.
+
+o Nmap now reports execution times to millisecond precision (rather
+ than rounding to the nearest second).
+
+o Fixed an infinite loop caused by invalid port arguments. Problem
+ noted by fejed (fejed(a)uddf.net).
+
+Nmap 3.10ALPHA2 [2002-8-31]
+
+o Fixed compilation and IPv6 support on FreeBSD (tested on
+ 4.6-STABLE). Thanks to Niels Heinen (niels.heinen(a)ubizen.com) for
+ suggestions.
+
+o Made some portability changes based on suggestions by Josef 'Jupp'
+ Schugt (jupp(a)gmx.de)
+
+o Fixed compilation and IPv6 support on Solaris 9 (haven't tested
+ earlier versions).
+
+Nmap 3.10ALPHA1 [2002-8-28]
+
+o IPv6 is now supported for TCP scan (-sT), connect()-style ping
+ scan (-sP), and list scan (-sL)! Just specify the -6 option and the
+ IPv6 numbers or DNS names. Netmask notation is not currently
+ supported -- I'm not sure how useful it is for IPv6, where even petty
+ end users may be allocated trillions of addresses (/80). If you
+ need one of the scan types that hasn't been ported yet, give
+ Sebastien Peterson's patch a try at http://nmap6.sourceforge.net/ .
+ If there is demand, I may integrate more of that into Nmap.
+
+o Major code restructuring, which included conversion to C++ -- so
+ you'll need g++ or another C++ compiler. I accidentally let a C++
+ requirement slip in a while back and found that almost everyone has
+ such a compiler. Windows (VC++) users: see the README-WIN32 for new
+ compilation instructions.
+
+o Applied patch from Axel Nennker (Axel.Nennker(a)t-systems.com) which
+ adds a --without-nmapfe option to the configure script. This is
+ useful if your system doesn't have the proper libraries (e.g. GTK) or
+ if you think GUIs are for sissies :).
+
+o Removed arbitrary max_parallelism (-M) limitations, as suggested by
+ William McVey ( wam(a)cisco.com ).
+
+o Added DEC OSF to the platforms that require the BSDFIX() macro due
+ to taking IP length and offset fields in host rather than network byte
+ order. Suggested by Dean Bennett (deanb(a)gbtn.net)
+
+o Fixed an debug statement C ambiguity discovered by Kronos
+ (kronos(a)kronoz.cjb.net)
+
+Nmap 3.00 [2002-07-31]
+
+o Woohoo! :)
+
+Nmap 2.99RC2 [2002-07-27]
+
+o Fixed an important memory initialization bug which was causing
+ crashes on Mac OS X (and possibly other platforms). The problem was
+ located by Pieter ten Pierick (P.tenPierick(a)chello.nl)
+
+o Various minor bugfixes/cleanup
+
+Nmap 2.99RC1 [2002-07-20]
+
+o Implemented the biggest OS fingerprint update since December 1999!
+ More than 200 fingerprints were added/modified. This includes
+ OpenBSD 3.1, Solaris 9, Mac OS 10.1.5, OS/400, FreeBSD 4.6, The
+ latest MS WinXP changes, new CISCO equiptment, and loads of network
+ devices such as VoIP phones, switches, printers, WAPs, etc.
+
+o Updated build system to work on MacOS X.
+
+o I removed "credit" lines from the nmap-os-fingerprints file out of
+ concern that evil spammers might harvest the 602 addresses. Plus
+ those took up 28K and the size of nmap-os-fingerprints has already
+ caused trouble for some handheld devices. If anyone actually cares
+ about the "fame" of being listed, let me know and I'll put you back
+ in. I still appreciate everyone who submits fingerprints! I just
+ don't want you to be spammed when the fingerprint file goes online.
+
+o Minor usage screen (nmap -h) fix suggested by Martin Kluge
+ ( martin(a)elxsi.info )
+
+o Insured that the initial pound (#) in C preprocessor directives is
+ always in column 1 (portability fix). Problem noted by Shamsher
+ Sran (ssran(a)bechtel.com)
+
+Nmap 2.54BETA37 [2002-07-10]
+
+o Made SYN scan the default for privileged (root) users. This offers
+ far better performance for Windows users due to their broken
+ connect() call, and is usually even preferred on UNIX because it is
+ more stealthy and less likely to crash applications listening on the
+ target host.
+
+o Fixed a problem noted by Ping Huang (pshuang(a)alum.mit.edu) relating
+ to -PI scans of a machine's own non-localhost interfaces (eg
+ scanning your ethernet address).
+
+o Applied patch from Patrice Goetghebeur (pgoetghebeur(a)mac.com) which
+ fixes PPP/SLIP support on Mac OS X.
+
+o Applied dozens of nmap-services portnumber mapping updates
+ researched and sent by palante(a)subterrain.net
+
+o Updated nmap-rpc to the latest version from Eilon Gishri
+ (eilon(a)aristo.tau.ac.il)
+
+o Fixed --resume option to better detect all of the previously scanned
+ hosts in an -oN file (bug report from Adam.Scott(a)predictive.com )
+
+o Adjusted random IP generator (for -iR) to account for newly
+ allocated ip space from
+ http://www.iana.org/assignments/ipv4-address-space as noted by Chad
+ Loder (cloder(a)acm.org)
+
+o Updated config.sub and config.guess to the versions in
+ automake-1.6.2 .
+
+o Applied patch from Markus A. Nonym (g17m0(a)lycos.com) which checks
+ for a recent version of GTK+ in ./configure before even trying to
+ build NmapFE (avoids the previous ugly compiler errors).
+
+o Applied patch from benkj(a)gmx.it which fixes misbehavior when Nmap
+ would receive EOF (including ^D) in interactive mode.
+
+o Fixed format string bugs (not the security-related kind) found by
+ Takehiro YONEKURA (yonekura(a)obliguard.com) and Kuk-hyeon Lee
+ (errai(a)inzen.com)
+
+o Applied patch from Greg Steuck (greg-nmap-dev(a)nest.cx) which fixes
+ an alignment problem in charpool.c that could cause bus errors on
+ 64-bit platforms.
+
+o Applied portability fix patch from Matt Christian (mattc(a)visi.com)
+
+Nmap 2.54BETA36 [2002-06-13]
+
+o Fixed major connect scan problem introduced in BETA35
+
+o Changed NmapFE to use the version number 2.54BETA36 rather than
+ 0.2.54BETA36. I had to do this because RedHat took the liberty of
+ releasing a so-called "2.54BETA31" version of nmap-frontend in their
+ 7.3 distribution. Thus my upgrades were failing to install on such
+ systems because a "later" version is already installed.
+
+Nmap 2.54BETA35 [2002-06-13]
+
+o Fixed an issue that could cause the abort message "Serious time
+ computation problem in adjust_timeout ...". If you still see this,
+ please let me know.
+
+o Fixed Windows compilation (and I really mean it this time -- tested
+ myself).
+
+o Applied configure script patch to recognize Solaris 2.10 when it
+ eventually becomes available (from James Carlson
+ (james.d.carlson(a)east.sun.com)
+
+o Applied some portability fixes from Albert Chin
+ (china(a)thewrittenword.com)
+
+o Applied libpcap aclocal.m4 patch to enable debugging (-g) when
+ compiling libpcap with gcc. Patch from Ping Huang
+ (pshuang(a)alum.mit.edu)
+
+o Restructured "TCP probe port" output message a bit as suggested by
+ Ping Huang (pshuang(a)alum.mit.edu)
+
+Nmap 2.54BETA34 [2002-05-02]
+
+o Windows compilation fixed thanks to new VC++ project file (nmap.dsp) sent
+ by Evan Sparks (gmplague(a)sdf.lonestar.org) (I had forgotten to include
+ the new main.c).
+
+o Various nmap-services updates
+
+o Fixed a bunch of typos and capitalization issues in
+ nmap-os-fingerprints by applying patch sent in by Royce Williams
+ (royce(a)alaska.net).
+
+Nmap 2.54BETA33 [2002-04-26]
+
+o Tons of OS fingerprint updates. More than 100 fingerprints added or
+ changed, including OpenBSD 3, FreeBSD 4.5, Solaris 9 pre-release,
+ Commodor 64 (with the TFE Ethernet Card and uIP stack), Compaq iPAQ,
+ Cisco IOS 12.2(8), AIX 5.1, IRIX 6.5.15, various
+ Redback/Racal/Juniper/BigIP/HP/Siemens/Brocade/Quantum devices,
+ numerous printers/switches, KRONOS network clock, WTI Network Power
+ Switch, Windows XP, and many more. Thanks to everyone who
+ contributed!
+
+o Applied fix for an important RPC scanning bug sent in by Pasi Eronen
+ (pasi.eronen(a)nixu.com)
+
+o Applied fix for nasty OS fingerprinting bug found by William
+ Robertson (wkr(a)cs.ucsb.edu)
+
+o Do not show uptime when obviously spoofed (eg OpenBSD 3.0)
+
+o Slightly changed (I hope improved) the whitespace in Nmap output so
+ that messages relating to the same host are kept together (and
+ different hosts different separated by newlines).
+
+o Moved main() function into a new file, cleverly named main.c.
+
+Nmap 2.54BETA32 [2002-04-01]
+
+o Applied Windows pinging fix and from Andy Lutomirski
+ (Luto(a)myrealbox.com)
+
+o Applied a few more Windows fixes from Andy.
+
+o Fixed a flaw in several error-checking statements noted by Giacomo
+ Cariello (jwk(a)bug.it)
+
+o Applied Win32 compilation fixes sent by Kirby Kuehl (kkuehl(a)cisco.com)
+ and jens.vogt(a)bluewin.ch
+
+Nmap 2.54BETA31 [2002-03-20]
+
+o Added ICMP Timestamp and Netmask ping types (-PP and -PM). These
+ (especially timestamp) can be useful against some hosts that do not
+ respond to normal ping (-PI) packets.
+
+o Documented the --data_length option and made it work with all the
+ ICMP ping types (echo request, netmask, and timestamp).
+
+o Added check for strings.h before including it in portlist.c . This
+ fixes a compilation problem on some versions of Windows. Problem
+ first noted by Michael Vorin (mvorin(a)hotmail.com)
+
+o Applied patch from Andy Lutomirski (Luto(a)myrealbox.com) which fixes
+ a crash on some Windows platforms when timeouts occur.
+
+o Fixed "grepable output" (-oG) so that it prints IPID sequence class
+ rather than printing the TCP ISN sequence index twice. Problem
+ noted by Russell Fulton (r.fulton(a)auckland.ac.nz)
+
+o Added mysterious, undocumented --scanflags option.
+
+o Applied patch from Andy Lutomirski (Luto(a)myrealbox.com) which fixes
+ some important Windows bugs. Apparently this can cause a dramatic
+ speedup in some circumstances. The patch had other misc. changes
+ too.
+
+o Fix bug noted by Chris V (iselldrugstokidsonline(a)yahoo.com) in which
+ Nmap could segmentation fault with the (bogus) command: './nmap -sO
+ -p 1-65535 hostname' (protocol only can go up to 255). That being
+ said, Nmap should never segfault just because of bogus options.
+
+o Fixed problem noted by Maximiliano (emax25(a)arnet.com.ar) where Nmap
+ would get stuck in a (nearly) infinite loop when you try to "resume"
+ a random host (-iR) scan.
+
+o Included a number of fingerprint updates, but I still have many more
+ web submissions to go through. Also made some nmap-services
+ portlist updates.
+
+o Included a bunch of fixes (mostly to prevent compiler warnings) from
+ William McVey (wam(a)cisco.com)
+
+Nmap 2.54BETA30 [2001-10-14]
+
+o Added a Document Type Definition (DTD) for the Nmap XML output
+ format (-oX) to the docs directory. This allows validating parsers
+ to check nmap XML output files for correctness. It is also useful
+ for application programmers to understand the XML output structure.
+ The DTD was written by William McVey (wam(a)cisco.com) of Cisco Secure
+ Consulting Services ( http://www.cisco.com/go/securityconsulting ).
+
+o Merged in a number of Windows fixes/updates from Andy Lutomirski
+ (Luto(a)myrealbox.com)
+
+o Merged in fixes/updates (mostly to the Windows functionality) from
+ Matt Hargett (matt(a)use.net)
+
+o Applied patch by Colin Phipps (cph(a)netcraft.com) which correctly
+ encodes special characters in the XML output.
+
+o Applied patch by William McVey (wam(a)cisco.com) which adds the uptime
+ information printed with -O to the XML output format.
+
+o Fixed byte-order bug in Windows packet matching code which caused
+ -PS and -PT to fail. Bug found and patch sent by Tim Adam.
+
+o Fixed segfault problem with "-sU -F". Nobody reported this until I
+ noticed it :(. Anytime you see "Segmentation Fault" in the latest
+ version of Nmap, it is probably a bug -- please mail me the command
+ you used, the OS/platform you are running on, and whether it is
+ reproducable.
+
+o Added a convenience option "-oA (basefilename)". This tells Nmap to
+ log in ALL the major formats (normal, grepable, and XML). You give
+ a base for the filename, and the output files will be base.nmap,
+ base.gnmap, and base.xml.
+
+o Documented the --append_output option which tells Nmap to append
+ scan results to any output files you have specified rather than
+ overwriting the files.
+
+o Integrate TIMEVAL_SEC_SUBTRACT() fix by Scott Renfro (scott(a)renfro.org)
+ which improves timing accuracy.
+
+Nmap 2.54BETA29 [2001-08-10]
+
+o Integrated William McVey's multi-portlist patch. This allows you to
+ specify different port numbers when scanning both TCP & UDP. For
+ example, if you want to UDP for 53,111 and 137 while TCP scanning
+ for 21-25,80,139,515,6000,8080 you could do: nmap -sSU -p
+ U:53,111,137,T:21-25,80,139,515,6000,8080 target.com . Prior to
+ this patch, you had to either use different Nmap executions or scan
+ both UDP & TCP of each port. See the man page for more usage info.
+
+o Added/updated a bunch of fingerprints, including Windows XP release
+ candidates #1 & #2, OpenBSD 2.9, various home gateways/cable modem,
+ MacOS X 10.0.4, Linux 2.4.7, Guantlet Firewall 4.0a, a few Cisco
+ routers, and, most importantly, the Alcatel Advanced Reflexes IP
+ Phone :). Many other fingerprints were updated as well.
+
+o Found and fixed some relatively major memory leaks based on reports
+ sent in by H D Moore (hdm(a)secureaustin.com), mugz
+ (mugz(a)x-mafia.org), and Steven Van Acker (deepstar(a)ulyssis.org)
+
+o Applied patch from Chad Loder (chad_loder(a)rapid7.com) which improves
+ random target host selection (-iR) by excluding more undesirable
+ addresses.
+
+o Fixed portscan timing bug found by H D Moore (hdm(a)secureaustin.com).
+ This bug can occur when you specify a --max_rtt_timeout but not
+ --initial_rtt_timeout and then scan certain firewalled hosts.
+
+o Fixed port number printing bug found by "Stephen Leavitt"
+ (stephen_j_leavitt(a)hotmail.com)
+
+o The Nmap source tarball now extracts with more lenient permissions
+ (sometimes world-readable or world-executable, but never
+ world-writable). If you don't want this, set your umask to 077
+ (which is what I do). Suggested by Line Printer (lps(a)rahul.net)
+
+Nmap 2.54BETA28 [2001-07-28]
+
+o I hope that I have fixed the Libpcap "Unknown datalink type" problem that
+ many people reported. If you still receive this error, please send
+ me the following info:
+ - Full output of Nmap including the command you typed
+ - What OS/OS version you are using
+ - What type of interface is the scan going through (PPP, ISDN, ethernet,
+ PPPoE, etc)
+ - Whether you compiled from source or used the RPM version
+
+o Hopefully fixed Libpcap lex/yacc generated file problem that
+ plagued a few folks.
+
+o Various minor fixes/changes/updates
+
+Nmap 2.54BETA27 [2001-07-20]
+
+o Fixed bug that caused "adding open port" messages to be printed even
+ when verbose mode was not specified (patch sent by Doug Hoyte).
+
+o Fixed bug in zombie:port option parsing in Idlescan as well a few
+ other bugs in patch sent by Germano Caronni (gec(a)acm.org)
+
+o Fixed Windows compilation (I broke it when I added Idlescan).
+
+o Fixed a (Win32 only) port identification bug which would cause some
+ ports to be listed as "unknown" even when Nmap should know their
+ name. This was found at patched by David Griffiths
+ (davidg(a)intrinsica.co.uk).
+
+o Fixed more nmap-os-fingerprints syntax/grammar violations found by
+ Raymond Mercier of VIGILANTe
+
+o Fixed a memory leak in Nbase str*casecmp() functions by applying
+ patch sent by Matt (matt(a)use.net). I plan to kill this whole
+ strcasecmp.c file as soon as possible (it is a mess).
+
+Nmap 2.54BETA26 [2001-07-09]
+
+o Added Idlescan (IPID blind scan). The usage syntax is
+ "-sI [zombie]".
+
+o Fixed a bunch of fingerprints that were corrupt due to violations of
+ the fingerprint syntax/grammar (problems were found by Raymond
+ Mercier of VIGILANTe )
+
+o Fixed command-line option parsing bug found
+ by "m r rao" (mrrao(a)del3.vsnl.net.in )
+
+o Fixed an OS fingerprinting bug that caused many extra packets to be
+ sent if you request a lot of decoys.
+
+o Added some debug code to help diagnose the "Unknown datalink type"
+ error. If Nmap is giving you this error, please send the following
+ info to fyodor@insecure.org : 1) The full output from Nmap
+ (including the command arguments) 2) What OS and OS version are you
+ using 3) What type of adaptor are you using (modem, ethernet, FDDI,
+ etc)
+
+o Added a bunch of IDS sensor/console/agent port numbers from
+ Patrick Mueller (pmueller(a)neohapsis.com)
+
+Nmap 2.54BETA25 [2001-06-04]
+
+o Added a whole bunch of new OS fingerprints (and adjustments) ranging
+ from big important ones (Linux 2.4.X, OpenBSD 2.9, FreeBSD 4.3,
+ Cisco 12.2.1, MacOS X, etc) to some that are more obscure ( such as
+ Apple Color LaserWriter 12/660 PS and VirtualAccess LinxpeedPro 120 )
+
+o Upgraded Libpcap to the latest version (0.6.2) from tcpdump.org. I
+ modified the build system slightly by shipping pre-generated
+ scanner.c/grammer.c (instead of using lex/yacc) and I also upgraded
+ to the newest config.sub/config.guess .
+
+o Fixed some issues with the new Libpcap under Linux (patches will be
+ sent to the developers).
+
+o Added "All zeros" IP.ID sequence classification to account for the
+ new Linux 2.4 scheme which seems to use 0 whenever the DF bit is set
+ (probably a good idea).
+
+o Tweaked TCP Timestamp and IP.ID sequence classification algorithms
+
+Nmap 2.54BETA24 [2001-06-02]
+
+o Fixed compilation problems on MacOS X publis release. Thanks to
+ Nicolas Dawson (nizcolas(a)myrealbox.com) for securing an account for
+ me.
+
+o On the suggestion of the ever-helpful LaMont Jones (lamont(a)hp.com),
+ I obtained the newest config.guess/config.sub from
+ http://subversions.gnu.org/cgi-bin/cvsweb/config and made
+ libpcap/nbase use symlinks rather than copeis of the file
+
+o Applied patch from LaMont Jones (lamont(a)hp.com) which makes Nmap
+ compatible with gcc 3.0 (apparently printf() is a macro in that
+ version)
+
+o Applied patch from Colin Phipps (cph(a)netcraft.com) which fixes a
+ problem that kept UDP RPC scanning from working unless you were also
+ doing a TCP scan.
+
+o Applied a patch from Chris Eagle (cseagle(a)redshift.com) which fixes
+ Windows compilation (I broke it with a recent change).
+
+o Updated Lithuanian translation of man page based on a newer version sent
+ by Aurimas Mikalauskas (inner(a)crazy.lt)
+
+o Killed carriage returns in nmap.c and nmapfe.c, which caused
+ problems for some (SGI) compilers. Problem noted by Artur
+ Niederstebruch (artur(a)sgi.com)
+
+o Updated to latest version of rpc program number list, maintained by
+ Eilon Gishri (eilon(a)aristo.tau.ac.il)
+
+o Fixed a quoting bug in the Nmap man page found by
+ Rasmus Andersson (rasmus(a)pole-position.org)
+
+o Applied RPM spec file changes from "Benjamin Reed"
+ (ranger(a)befunk.com) which allows you to avoid building the frontend
+ by adding "--define frontend 0" to the build command (eg --rebuild,
+ --ba, etc).
+
+Nmap 2.54BETA22 [2001-03-10]
+
+o Eliminated usage of u_int32_t (was causing compilation errors on
+ some Sun and HP boxes). Problem first noted by Nick Munger
+ (nmunger(a)Oswego.EDU) and Ralf Hildebrandt
+ (Ralf.Hildebrandt(a)innominate.com) and Antonin Sprinzl
+ (Antonin.Sprinzl(a)tuwien.ac.at)
+
+o Defined integer-width typedefs such as u32/s32/u16/etc. in Nbase.
+ Went through much of the Nmap code and substituted these in where
+ correct lengths are important (port numbers, IP addresses, etc).
+
+Nmap 2.54BETA21 [2001-03-09]
+
+o Cleaned up a few build/distribution issues that were reported by
+ LaMont Jones (lamont(a)hp.com)
+
+o Fixed compiler warning noted by Gabor Z. Papp (gzp(a)papp.hu) )
+
+Nmap 2.54BETA20 [2001-03-05]
+
+o Added TCP Timestamp sequence checking for OS detection and
+ Netcraft-style uptime tests.
+
+o Found and fixed (I hope) byte alignment problem which was causing
+ bus errors on SPARC64 ( reported by H D Moore
+ (hdm(a)secureaustin.com) and Matthew Franz (mfranz(a)cisco.com) )
+
+o Apple Darwin (Mac OS X) 1.2 portability patch from Rob Braun
+ (bbraun(a)synack.net)
+
+o Added IPID sequence number predictability report (also now used in
+ OS detection).
+
+o Show actual IPID, TCP ISN, and TCP timestamp values in XML format
+ output rather than just the cooked results.
+
+o Suppress IPID and TCP ISN predictability report unless you use -v
+ (you need -O as well).
+
+o Applied Solaris 8 compilation fixes from Germano Caronni (
+ gec(a)acm.org )
+
+o Applied configure.in variable name typo fixes from Christian
+ Weisgerber (naddy(a)openbsd.org)
+
+o Applied some more changes from Andy Lutomirski
+ (Luto(a)mailandnews.com) which provides better detection and
+ reporting from some heinous errors.
+
+o Added -n and -R (always/never DNS resolve) options to the man page.
+
+Nmap 2.54BETA19 [2001-01-02]
+
+o I ported NmapFE to Windows so that Win32 users can use the graphical
+ interface. It generally works, although I haven't tested much.
+ Patches welcome!
+
+o Various little fixes and cleanups, especially to the Windows port.
+
+o Applied patch from Andy Lutomirski (Luto(a)mailandnews.com) which
+ enhances some of the Win* error messages and adds the --win_trace
+ debugging option.
+
+o Applied some patches from Jay Freeman (saurik(a)saurik.com)
+ - New --data_length option adds indicated number of random data
+ bytes to send with scan packet and tcp ping packet (does not
+ currently work with ICMP ping packet). Does not affect OS
+ detection, RPC, or connect() scan packets.
+ - Windows portability fixes
+ - Various other little fixes.
+
+o Renamed rpc.h and error.h because they conflict with Windows include
+ files. By the way, this was a pain to figure out because VC++ is
+ such a crappy compiler! It basically just says problem in
+ "foobar.h" without giving you any idea how foobar.h got included!
+ gcc gives you a nice message tracing the chain of include files!
+
+Nmap 2.54BETA16 [2000-12-07]
+
+o Upgraded to latest version of WinPcap ( 2.1-beta )
+
+o Merged in Windows port code from Ryan Permeh ( ryan(a)eeye.com) and
+ Andy Lutomirski ( Luto(a)mailandnews.com ).
+
+o Took out C++ compiler test from nbase configure script. It was
+ inserted accidently, but I found it interesting that only 2 people
+ complained about this causing them problems. I guess most everyone
+ already has C++ compilers.
+
+o Applied patch from Steve Bleazard (steve(a)bleazard.com) which fixed
+ bug in internal Smoothed Round Trim Time calculations.
+
+o Fixed CFLAGS computation error in configure. Problem discovered and
+ patched by Fredrik Lundholm (exce7(a)ce.chalmers.se)
+
+o Added more debugging code for "Unknown datalink type" error -- if
+ you get this, please send me the full error msg including hex
+ values.
+
+o Added Portuguese man page translations from Antonio Pires de Castro
+ Junior (apcastro(a)ic.unicamp.br).
+
+o Capitalized all references to God in error messages.
+
+Nmap 2.54BETA7 [2000-10-08]
+
+o Applied patch from Hubert Feyrer
+ (hubert.feyrer(a)informatik.fh-regensburg.de) which adds support for
+ the new NetBSD DLT_PPP_* types.
+
+o Updated to Eilon Gishri's (eilon(a)aristo.tau.ac.il) newest version
+ of nmap-rpc at ftp://ftp.tau.ac.il/pub/users/eilon/rpc/rpc
+
+o Moved a bunch of the scanning engine related functions to new files
+ (scan_engine.c and scan_engine.h ). Timing functions were moved to
+ the new timing.c/timing.h . Other stuff was shifted to
+ tcpip.c/tcpip.h. At some point, nmap.c will only contain the Nmap
+ command line UI.
+
+o Updated Russian version of man page from Alex Volkov (topcat(a)nm.ru)
+
+Nmap 2.54BETA6 [2000-10-08]
+
+o Added XML output (-oX). Hopefully this will help those of you
+ writing Nmap front ends and other tools that utilize Nmap. The
+ "machine-readable" output has been renamed "grepable" (-oG) to
+ emphasize that XML is now the preferred machine-readable output
+ format. But don't worry if your tool uses -oM , that format (and
+ the deprecated -oM flag) won't go away any time soon (if ever).
+ Thanks to Stou Sandalski (tangui(a)cell2000.net) and Fredrick Paul
+ Eisele (phreed(a)gmail.com) for sending proposals that inspired the
+ format used.
+
+o Applied patch from Stefan Rapp (s.rapp(a)hrz.uni-dortmund.de) which
+ fixes a variable argument integer promotion problem in the new
+ snprintf compatibility file. This is important for Redhat 7
+ systems.
+
+o Reorganized output-related routines so that they now reside in
+ output.c & output.h. Let me know if I accidently screwed up the
+ behavior of any scan types in the process.
+
+Nmap 2.54BETA5 [2000-09-17]
+
+o Revamped the 'compatibility libraries' subsystem. Moved all of that
+ to a new library called 'libnbase' and changed Nmap and NmapFE to
+ use that. I included a better version of *snprintf and some other
+ compatibility files. Obviously I cannot test these changes on every
+ whacked OS that needs this compatibility cruft, so please let me
+ know if you run into compilation problems.
+
+o Fixed a problem found by Martyn Tovey (martyn(a)netcraft.com) when
+ using Nmap on platforms that dislike division by zero.
+
+o Removed 128.210.*.* addresses from Nmap man page due to complaints
+ from Purdue security staff.
+
+o Fixed FreeBSD (some versions) compilation problem found by Martyn
+ Tovey (martyn(a)netcraft.com)
+
+Nmap 2.54BETA4 [2000-09-04]
+
+o Upgraded to the very latest Libpcap version ( the 9/3/00 CVS
+ snapshot ). This version is from the tcpdump.org group rather than
+ the Lawrence Livermore crew. The most important advantage is Linux
+ Socket Filter support (so you won't have that annoying syslog
+ message about Nmap using the obsolete SOCK_PACKET interface).
+
+o I tried to install Nmap on yet another machine without lex/yacc or
+ flex/bison. That was the last straw! I am now shipping the
+ generated C files, which eliminates the lex/yacc requirement.
+
+o Applied patch by Jay Freeman (saurik) (saurik(a)saurik.com) to make
+ Nmap C++-clean (this was lot of tedious work! Thanks!). Note that
+ Nmap still uses a normal C compiler by default, but Nmap derivatives
+ may appreciate C++ compatibility. Note that this only applies to
+ "Nmap proper", not libpcap.
+
+o Added a HACKING file for people who want to help with Nmap
+ development. It describes preferred patch formats, development
+ resources, and offers a number of useful changes that would likely
+ be accepted into the main tree.
+
+o Fixed a configure.in error found by Vacuum
+ (vacuum(a)technotronic.com) which could cause compilation errors.
+
+o Fingerprint file adjustments for better Win* detection
+
+o Ensure libpcap is not configured and/or installed if you already
+ have a "new enough" version (0.4a6+) installed.
+
+o Included Italian translation of Nmap man page from Giorgio Zoppi
+ (deneb(a)supereva.it) .
+
+o Fixed a SYN scan problem that could cause a major slowdown on some
+ busy networks.
+
+o Fixed a crash problem in NmapFE reported by sverre ( sverre(a)gmx.net )
+
+o Added an "SInfo" line to most printed fingerprints. It looks
+ similar to this:
+ SInfo(V=2.54BETA4%P=i686-pc-linux-gnu%D=9/4%Time=9681031%O=7%C=1)
+ and contains information useful when fingerprints are reported (Nmap
+ version/platform, scan date, and open/closed ports used)
+
+o Fixed RPCGrind (-sR) scan. It has been almost completely broken
+ since 2.54BETA2 (which has been out for two weeks) and nobody
+ reported it! I noticed the problem myself during testing of
+ something else. I am disappointed that nobody bothered to even let
+ me know that this was broken. Does anyone even use RPC Scan?
+
+o Various other small fixes/improvements
+
+Nmap 2.54BETA3 [2000-08-14]
+
+o Went through and added/adjusted a bunch of fingerprints. A lot of
+ people submitted Windows Millenium Edition (WinME) beta
+ fingerprints, but nobody submitted IPs for them. So please let me
+ know if this version detects your WinME boxes.
+
+o Applied NmapFE patch from Michael Fischer v. Mollard (mfvm(a)gmx.de)
+ which made did the following:
+ - Added delete event so that NmapFE always quits when you kill it
+ with your window manager
+ - added the menubar to the vbox instead to the fixed widget
+
+o Various small fixes/improvements
+
+Nmap 2.54BETA2 [2000-08-01]
+
+o Added a shortcut which can make single port SYN scans of a network
+ much faster. For example, if a new sendmail vulnerability is found,
+ this reduces the time it takes to scan your whole network for port
+ 25. This shortcut takes effect when you do "-PS[port] -sS
+ -p[port]". For example 'nmap -n -sS -p25 -PS25 24.0.0.0/8". This
+ optimization doubled the scan speed in a 30,000 IP test I performed.
+
+o Added -sL (List scan). Just as ping scan (-sP) allows you to short
+ circuit the scan right after pinging, -sL allows you to short
+ circuit the scan right after target selection. This allows you to
+ see what hosts WOULD be scanned without actually doing it. The
+ hosts will be resolved unles you use -n. Primary uses:
+ - Get all the IPs in a network (like A.B.C.D/16) and take out
+ machines that are too fragile to be scanned safely before
+ calling Nmap with the new list (using -iL).
+ - Test that a complex spec like 128.4,5,7-9.*.7 does what you
+ expect before actual scanning.
+ - When all you want to do is resolve a bunch of IPs.
+ - You just want results of a zone transfer (if it is implemented).
+
+o Added some new fingerprints and adjusted some others based on
+ submissions to the DB (I still have a lot more to go through so
+ don't worry if your submission is still not detected).
+
+o Added a warning when you scan 0 hosts (eg "nmap -v"). There are
+ various other output tweaks as well.
+
+o Ensured that 0.0.0.0 can be scanned by nmap (although on some OSs,
+ like Linux, it won't work due to what seem to be kernel bugs). Oh
+ well. I'll look into it later.
+
+Nmap 2.54BETA1 [2000-05-29]
+
+o Added an extremely cool scan type by Gerhard Rieger ( rieger at
+ iue.tuwien.ac.at ) -- IP Protocol scanning. Basically it sends a
+ bunch of IP headers (no data) with different "protocol" fields to
+ the host. The host then (usually) sends back a protocol unreachable
+ for those that it does not support. By exclusion, nmap can make a
+ list of those that are supported. This is similar in concept to
+ (and is implemented using most of the same scanning routines as) UDP
+ scanning. Note that some hosts do not send back protocol
+ unreachables -- in that case all protocols will appear "open".
+
+o Fixed an uninitialized variable problem in NmapFE (found by Alvin
+ Starr (alvin at iplink.net )
+
+o Fixed a packaging problem that lead to the Nmap man page being
+ included twice in the .tgz .
+
+o Fixed dangling nroff include in xnmap man page (noted by Debian Nmap
+ package maintainer LaMont Jones (lamont(a)security.hp.com)
+
+o Give a warning when no targets at all are specified
+
+o Updated 'make uninstall' so that it deletes all relevant files
+
+o Included latest nmap-rpc from Eilon Gishri (eilon at aristo.tau.ac.il)
+
+o Eliminated -I. from Nmap's and NmapFE's makefiles (suggested by "Jay
+ Freeman (saurik)" (saurik at saurik.com)
+
+o Added Russian documentation by Alex Volkov
+
+o Added Lithuanian documentation from Aurimas Mikalauskas (inner(a)dammit.lt)
+
+Nmap 2.53 [2000-05-08]
+
+o Fixed a commenting issue that could cause trouble for non-GNU
+ compilers (first found by Jan-Frode Myklebust (janfrode at
+ parallab.uib.no))
+
+o A few new services to nmap-services
+
+Nmap 2.52 [2000-05-03]
+
+o Added very simple man pages for xnmap/nmapfe (lack of man pages for
+ these was noticed by LaMont Jones (lamont(a)hp.com), the Debian Nmap
+ package maintainer, based on bug report by Adrian Bunk
+ (bunk(a)fs.tum.de ).
+
+o Fixed a "Status: Down" machine name output problem in machine
+ parseable logs found by Alek O. Komarnitsky (alek(a)ast.lmco.com)
+
+o Took some wierd files out of the doc directory (cd, grep, vi, and
+ .swp)
+
+o Fixed some typos found by Thomas Klausner (wiz(a)danbala.ifoer.tuwien.ac.at)
+
+o Updated nmap-rpc with new entries found in the latest version of
+ Eilon Gishri's rpc list.
+
+Nmap 2.51 [2000-04-29]
+
+o Fixed target parsing bug found by Steve Horsburgh (shorsburgh(a)horsburgh.com).
+
+o Changed makefile/rpm to store fingerprint, rpc, and services file in
+ $prefix/share/nmap rather than $prefix/lib/nmap , since these files
+ are architecture independent. You should now use ./configure
+ --datadir instead of ./configure --libdir to change the default
+ location. Suggested by Thomas Klausner
+ (wiz(a)danbala.ifoer.tuwien.ac.at).
+
+o I am now including Eilon Gishri's (eilon(a)aristo.tau.ac.il) rpc
+ number list (which he recently merged with the Nmap 2.50 rpc list).
+
+o Included Spanish and French HTML versions of the Nmap man page (may
+ not always be up to date).
+
+Nmap 2.50 [2000-04-28]
+
+o Fixed an IP calculation error which could occur in some cases where
+ you scan machines on different devices (like lo and eth0). This
+ problem was discoved by Jonathan Fine (jfine(a)psu.edu).
+
+o Fixed a problem that could, in rare cases, cause a SYN scan scan to
+ crash (the error message was "attempt to add port number X with
+ illegal state 0"). This problem was reported by Erik Benner
+ (erik(a)xyzzy.net)
+
+o Changed the .spec file so that RPM versions create a xnmap link to
+ nmapfe ( the normal make install has done this for a long time ).
+
+Nmap 2.3BETA21 [2000-04-24]
+
+o A number of people reported problems with nmapfe in various
+ environments (specifically gdk errors, hangs, and crashes). I think
+ that is now fixed. Let me know if you still have the problem (make
+ sure the title bar says BETA21).
+
+o Added a bunch of OS fingerprints based on all the contributions in
+ the last month or so.
+
+o Fixed a bug that completely broke RPC scanning in BETA19.
+
+o Added list of ports scanned near the top of each machine log WHEN
+ -v was specified. Here is an example of the format:
+ # Ports scanned: TCP(13;1-10,22,25) UDP(0;)
+ The "13" above is the number of TCP ports being scanned.
+
+o Got rid of a snprintf() from nmapfe sine some systems don't have it
+ :( and I'm to lazy to integrate in the snprintf that comes with nmap
+ right now.
+
+o Fixed important target IP range parsing bug found by Jean-Yves Simon
+ ( lethalwp(a)linuxbe.org ).
+
+o Applied patch by albert chin (china at thewrittenword.com) which
+ adds --with-libpcap[=DIR] option to configure and and adds an
+ elegant approach for -lnsl and -lsocket checking to configure .
+
+o Fixed a bug which could cause Nmap to mark a port filtered based on
+ ICMP dest. unreachable packets relating to a different host than the
+ one being scanned.
+
+o Fixed output problem relating to ident scan noted by Peter Marschall
+ ( peter.marschall at mayn.de )
+
+o Applied patch to services.c by Andrew Brown (atatat(a)atatdot.net)
+ which prevents some useless debugging (-d) output when reading some
+ kindss of /etc/services files.
+
+o Added "Host: [machinename] (ip) Status: Down" to machine logs when
+ the verbose option is given (just like down hosts are reported to
+ stdout when verbose is given). Suggested by Alek Komarnitsky.
+
+o Applied NetBSD compatibility patch provided by Mipam (reinoud at
+ ibbnet.org) which changes an autoconf macro to check for
+ getopt_long_only instead of getopt_long.
+
+o Nmap used to print an inaccuracy warning when no open TCP ports were
+ found on the target machine. Due to a bug, this was not always
+ being printed. Problem found by Matt (matt at use.net) and Ajay
+ Gupta2 (Ajay.Gupta2 at ey.com).
+
+o Added the number of ports in the ignored state right after the state
+ name in machine parseable logs. It used to looke like: "Ignored
+ State: closed" whereas now it looks like: "Ignored State: closed
+ (1508)" Meaning that 1508 ports were closed and thus are not
+ specifically enumerated.
+
+o Changed all nmapfe calls to gdk_font_load into gdk_fontset_load .
+ Bennett Feitell (bfeitell at panix.com) suggested that this fixed
+ some nmapfe font problems.
+
+Nmap 2.3BETA20 [2000-04-10]
+
+o Applied patch sent in by s.rapp(a)hrz.uni-dortmund.de which fixes a
+ memory alignment bug in osscan.c which could cause core dumps on
+ machines which require aligned access (like SPARC).
+
+o Fixed a compilation problem on machines that do not have MAP_FAILED
+ defined (as a return value to mmap). Problem noted by Phil
+ Stracchino (alaric(a)babcom.com).
+
+Nmap 2.3BETA19 [2000-04-10]
+
+o Tweaked the output so that it now tells how many ports are not shown
+ and what state the ignored ports are in. This info could be
+ inferred before by people who had studied the manpage, but now the
+ info is explicitly available. I cleaned up a bunch of stuff
+ internally to make this happen. I hope I didn't break anything!
+
+o Changed NmapFE so that it always kills any running Nmap process when
+ you press exit. Problem noted by Marc Renner
+ (mrenner(a)ci.marysville.wa.us)
+
+o Apparently some Linux (glibc) systems now come with a "strcasestr"
+ function. So I have made autoconf look for this and use the native
+ version if supported (problem noted by Sami Farin
+ (sfarin(a)ratol.fi)).
+
+o Added a new attribute "Ignored State: xxx" to the machine parseable
+ logs, where xxx is the state (closed, filtered, or UNfiltered) that
+ is being ignored. Ports in that state are not listed (they weren't
+ listed in earlier versions either). Perhaps I should list ALL ports
+ for machine parseable output. Opinions?
+
+o Merged in a patch sent in by Mipam (reinoud(a)ibbnet.org) which is
+ apparently part of the OpenBSD Nmap "port". Although Nmap seems to
+ work fine for me on my OpenBSD 2.4 box, a couple OpenBSD users have
+ complained of problems. Hopefully this will help (it adds DLT_LOOP
+ and DLT_ENC offset cases when reading from libpcap).
+
+o A few really minor bugfixes.
+
+Nmap 2.3BETA18 [2000-04-06]
+
+o Fixed a very important bug that occurred when SYN scanning
+ localhost. Many thanks to Dries Schellekens (
+ gwyllion(a)ace.ulyssis.student.kuleuven.ac.be ) for first reporting
+ the problem.
+
+o Uros Prestor from TurboLinux informed us that the latest versions of
+ Nmap work with Linux on the upcoming Intel Merced/Itanium IA-64
+ processors. He also said that the TurboLinux distribution includes
+ Nmap. Kudos to them! As well as the other distros that support
+ Nmap (Debian, Red Hat, Suse, Trinux) and of course FreeBSD, NetBSD,
+ & OpenBSD. Does anyone know if Nmap ships with the latest from
+ Mandrake or Corel? The latest Solaris includes some Free software.
+ If anyone can get them to ship Nmap, I will buy you a case of beer
+ :).
+
+o Added a #define to change vsnprintf to vsprintf on machines which do
+ not support the former (mostly Solaris 2.5.1 and earlier). This
+ function is less safe. For people who care about security, we
+ recommend an upgrade to Solaris 8 (or Linux/*BSD).
+
+o Changed the NmapFE version to 0.[nmap_version] rather than always
+ leaving it at 0.9.5 (which was confusing). Thanks to J.D.K. Chipps
+ (jdkc(a)woptura.com) for noticing this.
+
+o Added support for "-vv" (means the same as "-v -v"). Older versions
+ of Nmap supported it (noted by George Kurtz).
+
+Nmap 2.3BETA17 [2000-03-26]
+
+o Added ACK scanning. This scan technique (which van Houser and
+ others have been bugging me to add for years :), is great for
+ testing firewall rulesets. It can NOT find open ports, but it can
+ distinguish between filtered/unfilterd by sending an ACK packet to
+ each port and waiting for a RST to come back. Filtered ports will
+ not send back a RST (or will send ICMP unreachables). This scan
+ type is activated with -sA .
+
+o Documented the Window scan (-sW) which Lamont Granquist added in
+ September 99.
+
+o Added a whole bunch of OS fingerprints that people have submitted.
+
+o "Protocol" field in output eliminated. It is now printed right next
+ to the number (/etc/services style). Like "22/tcp". I wonder what
+ I should put in the extra white space this leaves on the report :).
+
+o Added --resume option to continue a large network scan where you
+ left off. This is useful for recovering from errors (modem drops
+ carrier, network outage, etc). It also allows you to start and stop
+ for policy reasons (like if a client only wants you to scan on
+ weekends or at night) or if you want to run the scan on a different
+ host. Usage is 'nmap --resume logfile' where logfile can be either
+ normal (-oN) or machine parseable (-oM) logfile from the scan that
+ was aborted. No other options can be given (the options in the
+ logfile from the original scan will be used). Nmap will start off
+ with the host after the last one successfully scanned in the log
+ file.
+
+o Added --append_output option which causes -oN/-oM/-oS to APPEND to
+ the output file you specify rather than overwriting it.
+
+o Various internal code cleanup, makefile fixes, etc.
+
+o Changed version number from 2.3BETA* to 2.30BETA* to appease various
+ packaging systems that thought 2.3BETA was < 2.12 .
+
+o Nmap output to files now correctly flushes output after scanning for
+ each host is finished.
+
+o Fixed compiler -L flags error found by Ralf Hildebrandt
+ (R.Hildebrandt(a)tu-bs.de)
+
+o Fixed configure scripts so that options you give to the Nmap
+ configure (like --prefix ) are also passed to the nmapfe configure
+ script. This problem was noted by Ralf Hildebrandt
+ (R.Hildebrandt(a)tu-bs.de). While I was at it, I added some other
+ cleanups to the system.
+
+o Added --noninteractive option for when nmap is called from scripts
+ (where stuff like prompting users for info is unacceptable). It
+ does not currently do anything (Nmap never prompts) and script
+ writers should probably wait until at least May '2000 so their
+ scripts still work with earlier versions of Nmap.
+
+o Updated to the latest config.guess and config.sub from Autoconf 2.13
+
+o Applied patch by Sven (s.carstens(a)gmx.de> which fixes a
+ segmentation fault problem in Nmapfe colored mode as well as some
+ output niceties.
+
+o Changed some C++ comments to C-style for portability (noticed by
+ "Sergei V. Rousakov" (sergei(a)cas.Vanderbilt.Edu) )
+
+Nmap 2.3BETA14 [2000-01-28]
+
+o Peter Kosinar (goober(a)gjh.sk) performed some cleanup of the output
+ routines and as a bonus he added skript kiddie output mode!!! Try
+ it out by adding "-oS - " to your nmap command line. Note that
+ using '-' to represent stdout instead of a filename is something you
+ can do with any of the output modes.
+
+o Ensured that Nmap always gives up on ident scan after the first port
+ attempt finds it to be closed (problem noticed by Matt
+ (matt(a)use.net))
+
+o Changed strsep's in nmapfe to more portable strtok's (should
+ especially help Nmapfe compiles on Solaris)
+
+o Changed permutation algorithm to make port order and host order
+ shuffling more random.
+
+o Various minor changes and internal code cleanup.
+
+o Fixed integer overflow that was limiting the max --host_timeout
+ value to about 2,000,000 milliseconds (~1/2 hour). The limit is now
+ about 4,000,000,000 milliseconds (~1 month). I really hope you
+ don't need more than that :).
+
+Nmap 2.3BETA13 [2000-01-17]
+
+o I made Nmap smarter about detecting filtering during UDP, Xmas,
+ NULL, and FIN scans.
+
+o Updated Nmapfe to 0.9.5 (+ a patch from NmapFE author Zach Smith)
+
+o Fixed a problem where NmapFE would fail to honor $PATH (Noticed by
+ K. Scott Rowe (kscott(a)nmt.edu)
+
+o Added a couple ICMP unreachable messages Nmap was missing (found by
+ Bifrost (bifrost(a)minions.com)).
+
+o Internal cleanup that improves the way some port lists are stored.
+
+o Added some more RPC numbers from (mmmorris(a)netscape.net)
+
+o Relaxed the dependency requirements of nmapfe rpm (now will accept
+ any version of Nmap).
+
+Nmap 2.3BETA12 [2000-01-01]
+
+o Added interactive mode which adds convenience for managing nmap
+ sessions and also enhances privacy. Get to it with --interactive
+ and then type 'h' for help.
+
+o Added/modified many fingerprints including the latest 2.3.X Linux
+ releases, the latest Win2000 builds, the Apple Airport Wireless
+ device, and several dozen more.
+
+o Migrated to RPM .spec file sent in by Tim Powers
+ (timp(a)redhat.com). That is the file they will be using to package
+ Nmap with the power tools CD in the next Redhat release. The most
+ important changes are that Nmap (only the RPM version) now installs
+ in /usr/* instead of /usr/local/* and the frontend is now
+ dynamically linked with GTK and comes in a separate rpm.
+
+o The -i (input from list) option has been deprecated. From now on
+ you should use -iL [filename] to read from a list or -iR to have
+ Nmap generate random IPs to scan. This -iR option is new.
+
+o The -o and -m options have been deprecated. From now on, you should
+ use -oN for normal (human readable) output and -oM for machine
+ parseable output. At some point I might add -oH (HTML output) or
+ -oSK (sKr|pt kiDdi3 0uTPut).
+
+o Added --randomize_hosts option, which causes hosts be be scanned in
+ non-sequential order. This makes scans less conspicuous. For
+ efficiency reasons, the hosts are chopped into groups of 2048 and
+ then each group is internally shuffled (the groups still go in
+ order).
+
+o Rearranged the help ('nmap -h' or 'nmap' or 'nmap --help') screen to
+ be shorter (37 -> 23 lines!) and include some of the new features of
+ this release. The man page was updated as well.
+
+o Fixed longstanding bug where nmap -sS mylocalnetwork/24 would not
+ successfully scan the host running nmap.
+
+o Internal improvements to make scanning faster with -i (input list)
+ or when you specify multiple machines on the command line.
+
+o Uses faster GCD algorithm and fixed several typos (sent in by Peter
+ Kosinar).
+
+o Provide more information in machine/human readable output files
+ (start time, end time, RPC program name, Nmap version number)
+
+o Killed the -A option (if you don't know what that is then you won't
+ miss it. In fact, even if you do know what it is you won't miss
+ it.)
+
+Nmap 2.3BETA10 [1999-12-12]
+
+o Added about 70 new OS fingerprints so that Nmap can detect more
+ systems. The most important new fingerprints are probably:
+ * The new SP5+ NT boxes -- After all these years MS FINALLY made
+ sequence prediction harder (on NT anyway).
+ * Solaris 8 Pre-Release
+ * Sega Dreamcast (Hack that!)
+ * Latest Windows 2000 builds
+ * OpenBSD 2.6
+
+Nmap 2.3BETA9 [1999-12-07]
+
+o Applied patch by Mark Abene (Phiber Optik) to fix several type
+ length issues so that it works on Linux/Alpha.
+
+o Applied patch by Matthieu Verbert (mve(a)zurich.ibm.com) to speed up OSScan
+
+Nmap 2.3BETA8 [1999-11-21]
+
+o Added "firewall mode" timing optimizations which can decrease the
+ ammount of time neccessary to SYN or connect scan some heavily
+ filtered hosts.
+
+o Added min_rtt_timeout timing option (see man page for details)
+
+o Changed "TCP Ping" to use a random ACK value rather than 0 (an IDS
+ called Snort was using this to detect Nmap TCP Pings).
+
+o Some changes for better Alpha/Linux support based on investigation
+ by Bill Beers (wbeers(a)carolina.rr.com)
+
+o Applied changes for FDDI support by Tobias J. Nijweide (tobias(a)mesa.nl)
+
+o Applied a socket binding patch from LaMont Jones
+ (lamont(a)security.hp.com) which can be useful when using -S to
+ specify one of multiple interfaces on a machine.
+
+o Made OS detection smart enough to first check scan results for a
+ known closed port instead of immediately resorting to a random one.
+ This improves OS detection against some machines behind packet
+ filters (suggested by van Hauser).
+
+o Applied a shortcut suggestion by Thomas Reinke which can lead to a
+ tremendous speedup against some firewalled hosts.
+
+o Added some ports commonly used for RPC to nmap-services
+
+o Fixed a problem with the timing of an RPC scan (could come before
+ the UDP scans they rely on)
+
+o Added a number of new ports to nmap-services
+
+Nmap 2.3BETA6 [1999-09-19]
+
+o Added sophisticated timing controls to give the user much more
+ control over Nmap's speed. This allows you to make Nmap much more
+ aggressive to scan hosts faster, or you can make Nmap more "polite"
+ -- slower but less likely to wreak havoc on your Network. You can
+ even enforce large delays between sending packets to sneak under IDS
+ thresholds and prevent detection. See the new "Timing Options"
+ section of the Nmap man page for more information on using this.
+
+o Applied Lamont Granquist's (lamontg(a)u.washington.edu) Window scan
+ patch (I changed the name from ACK scan to Window scan since I may
+ add another scan that uses ACK packets and I don't want them to be
+ confused). -sW activates this scan type. It is mostly effective
+ against BSD, AIX, Digital UNIX, and various older HP/UX, SunOS, and
+ VAX (See nmap-hackers mailing list archives for an extensive list).
+
+o Added various long options people expect to see like --version ,
+ --help , --usage , etc. Some of the new timing options are also long.
+ I had to add getopt_long C files since most non-Linux boxes don't
+ support getopt_long in libc.
+
+o Human readable (-o) output changed to include the time/date of the
+ scan. Suggested by van Hauser.
+
+Nmap 2.3BETA5 [1999-09-07]
+
+o Changed RPC output based on suggestions by David O'Brien
+ (obrien(a)NUXI.com) and Lance Spitzner (lance(a)spitzner.net). I
+ got rid of the "(Non-RPC)" unnecessary clutter which appeared after
+ each non RPC port and the "(untested)" that appeard after each
+ "filtered" port.
+
+o Added a ton of new OS fingerprints people submitted. I had about
+ 400 in my inbox. Of course, almost 100 of them were submissions for
+ www.windows2000test.com :).
+
+o Changed the machine parseable output of RPC information to include
+ the version information. If we figured out the RPC info, it is now
+ provided as "program-num*lowversion-highversion". If we didn't get
+ the number, but we think the port is RPC, the field simply contains
+ "R". If we believe the port is NOT RPC, then the field contains
+ "N". If the field is empty, we did not RPC scan the port. Thanks
+ to H D Moore (nlog(a)ings.com) for making me aware how much the
+ earlier machine parseable RPC logging sucked :).
+
+Nmap 2.3BETA4 [1999-08-30]
+
+o Added direct (non-portmapper) RPC scanning to determine what RPC
+ program is listening on a particular port. This works for UDP and
+ TCP ports and is currently implemented using sockets (which means
+ you can't use decoys, but on the other hand you don't have to be
+ root). Thanks go to ga (ga(a)capyork.com) for writing sample code
+ to demonstrate the technique. The RPC services list included with
+ nmap was compiled by Vik Bajaj (vbajaj(a)sas.upenn.edu) with help
+ from various members of the nmap-hackers list.
+
+o Fixed a problem that could cause freezes when you scan machines on
+ at least two different types of interfaces as part of the same
+ command.
+
+o Identified and found workaround for Linux kernel bug which allows
+ connect() to sometimes succeed inapropriately when scanning closed
+ ports on localhost.
+
+o Fixed problems relating to people who specify the same port more
+ than once on the command line. While the right answer is "well,
+ don't do that!", I decided to fix nmap to handle this gracefully.
+
+o Tweaked UDP scanning to be more effective against Solaris ICMP error
+ limiting.
+
+o Fixed strtol() integer overflow problem found by Renaud Deraison
+ (deraison(a)cvs.nessus.org)
+
+o The HTML translation of the Man page at
+ https://nmap.org/book/man.html should now be
+ complete (man2html was dropping lines before).
+
+o Added a note in the man page that Nmap 2.0+ is believed to be
+ COMPLETELY Y2K COMPLIANT! I've been getting a lot of letters from
+ laywers about that recently. You should still be able to port scan
+ on Jan 1st (well ... as long as you have electricity and gangs of
+ looting thugs haven't stolen your computers :)
+
+Nmap 2.2-Beta4 [1999-05-07]
+
+o Integrated nmapfe code from Zach Smith to allow the nmapfe output
+ window to resize when you resize the nmapfe window.
+
+o Integrated patch sent in by Stefan Erben (stefan(a)erben.com) which
+ allows nmap to recognize and ignore null interfaces. If you were
+ getting a bogus error like "eth0 not found in /proc/net/route" then
+ this should solve your problem.
+
+o Applied patch from Alexander Savelyev (fano(a)ham.kiev.ua) which
+ gives nmap the parameters necessary to support SLIP and PPP on BSDI
+ systems.
+
+o Upgraded to a new version of shtool (1.2.3)
+
+Nmap 2.2-Beta3 [1999-05-02]
+
+o Adopted Ralf S. Engelschall's excellent shtool script for
+ simplifying the nmap makefile and making it more portable
+
+o Various other minor changes to nmapfe.
+
+Nmap 2.2-Beta2
+
+o Cleaned up build environment more, fixed up RPM and Makefile.in,
+ eliminated the automake stuff.
+
+o Added nmapfe feature to show nmap command as you change options
+
+o Changed nmapfe to use a global MyWidgets struct rather than tons of
+ global vars all over the place.
+
+o Made nmapfe much smarter about rejecting stupid option attempts. It
+ now tries to correct things when you specify illegal options.
+
+o GTK+ 1.0 compatibility fixes
+
+o Integrated nmapfe changes from Zach
+
+Nmap 2.2-BETA1
+
+o Integrated in nmapfe -- a cool front end wrottem by Zach Smith (matrxweb(a)hotmail.com)
+
+Nmap 2.12 [1999-04-04]
+
+o Changed the way tcp connect() scan determines the results of a
+ connect() call. Hopefully this will make nmap a little more
+ portable.
+
+o Got rid of the security warning message for people who are missing
+ /dev/random and /dev/urandom due to complaints about the warning.
+ This only silences the warnings -- it still uses relatively weak
+ random number generation under Solaris and other systems that lack
+ this functionality.
+
+o Eliminated pow() calls on Linux boxes. I think some sort of glibc
+ bug was causing nmap to sigsegv in some cases inside of pow(). Most
+ people weren't affected, but those who were would almost always
+ SIGSEGV with -O.
+
+o Fixed an rpm problem noted by Mark Smith (marks(a)senet.com.au)
+
+Nmap 2.11 [1999-04-03]
+
+o Many new fingerprints added. I received more than 300 submissions
+ between this release and the last one.
+
+o Fixed IRIX problems which prevented OS scanning from working on that
+ platform. The problem was researched and solution found by Lamont
+ Granquist (lamontg(a)u.washington.edu). You can also thank him for
+ porting nmap to almost every UNIX around.
+
+o Added support for '-m -' to redirect machine readable logs to stdout
+ for shell pipelining, etc. I also changed machine readable output
+ to show service names now that we use a nmap specific services file
+ rather than /etc/services. These features were suggested by Dan
+ Farmer. You can also thank him for SATAN (the auditing tool).
+
+o Fixed a link-list bug that could cause hangs in UDP,FIN,NULL, and
+ XMAS scans. Also fixed a ptr problem that could cause SIGSEGV.
+ These problem were discovered and tracked down by Ben Laurie
+ (ben(a)algroup.co.uk). You can also thank him for Apache, OpenSSL,
+ and Apache-SSL.
+
+o Fixed installation problem for people without a /usr/local/man/man1
+ directory. Found by Jeffrey Robertson (a-jeffro(a)microsoft.com).
+ I guess you can thank him for Win98 ;).
+
+o Several other little fixes to the installation script and minor
+ scanner tweaks.
+
+Nmap 2.10
+
+o Private test release
+
+Nmap 2.09
+
+o Private test release
+
+Nmap 2.08 [1999-02-16]
+
+o Bugfix for problem that can cause nmap to appear to "freeze up" for
+ long periods of time when run on some busy networks (found by
+ Lamont Granquist).
+
+Nmap 2.07 [1999-02-08]
+
+o Fixed a lockup on Solaris (and perhaps other proprietary UNIX
+ systems) caused by a lack of /dev/random & /dev/urandom and a rand()
+ that only returns values up to 65535. Users of Free operating
+ systems like Linux, FreeBSD, or OpenBSD probably shouldn't bother
+ upgrading.
+
+Nmap 2.06 [1999-02-08]
+
+o Fixed compile problems on machines which lack snprintf() (found by
+ Ken Williams (jkwilli2(a)unity.ncsu.edu))
+
+o Added the squid proxy to nmap-services (suggested by Holger Heimann)
+
+o Fixed a problem where the new memory allocation system was handing
+ out misaligned pointers.
+
+o Fixed another memory allocation bug which probably doesn't cause any
+ real-life problems.
+
+o Made nmap look in more places for nmap-os-fingerprints
+
+Nmap 2.05 [1999-02-08]
+
+o Tons of new fingerprints. The number has grown by more than 25%.
+ In particular, Charles M. Hannum (root(a)ihack.net) fixed several
+ problems with NetBSD that made it easy to fingerprint and he sent me
+ a huge new batch of fingerprints for various NetBSD releases down to
+ 1.2. Other people sent NetBSD fingerprints down to 1.0. I finally
+ got some early Linux fingerprints in (down to 1.09).
+
+o Nmap now comes with its own nmap-services which I created by merging
+ the /etc/services from a bunch of OS' and then adding Netbus, Back
+ Orifice, etc.
+
+o Random number generation now takes advantage of the /dev/urandom or
+ /dev/random that most Free operating systems offer.
+
+o Increased the maximum number of OS guesses nmap will make, told nmap
+ never to give you two matches where the OS names are byte-to-byte
+ equivalent. Fixed nmap to differentiate between "no OS matches
+ found" and "too many OS matches to list".
+
+o Fixed an information leak in the packet TTL values (found by HD
+ Moore (hdmoore(a)usa.net))
+
+o Fixed the problem noted by Savva Uspensky about offsets used for
+ various operating systems' PPP/SLIP headers. Due to lack of
+ responses regarding other operating systems, I have made assumptions
+ about what works for BSDI, NetBSD, and SOLARIS. If this version no
+ longer works on your modem, please let me know (and tell me whether
+ you are using SLIP/PPP and what OS you are running).
+
+o Machine parseable logs are now more machine parseable (I now use a
+ tab to seperate test result fields rather than the more ambiguous
+ spaces. This may break a few things which rely on the old format.
+ Sorry. They should be easy to fix.
+
+o Added my nmap-fingerprintinting-article.txt to the distribution in
+ the docs directory.
+
+o Fixed problem where nmap -sS (my_ethernet_or_ppp_ip_address) would
+ not correctly scan localhost (due to the kernel rerouting the
+ traffic through localhost). Nmap should now detect and work around
+ this behavior.
+
+o Applied patch sent to my by Bill Fenner (fenner(a)parc.xerox.com)
+ which fixes various SunOS compatibility problems.
+
+o Changed the makefile 'all' target to use install-sh rather than
+ mkdir -p (doesn't work on some systems)
+
+o Documentation updated and clarified slightly.
+
+o Added this CHANGELOG file to the distribution.