Nmap 6.25 holiday season release! 85 new scripts, better performance, Windows 8 enhancements, and more (original) (raw)

nmap-announce logo

Nmap Announcemailing list archives


From: Fyodor <fyodor () nmap org>
Date: Thu, 29 Nov 2012 16:34:15 -0800


Hi folks. It has been more than five months since the Nmap 6.01 release, and I'm pleased to announce a new version for you to enjoy during the holidays! Nmap 6.25 contains hundreds of improvements, including 85 new NSE scripts, nearly 1,000 new OS and service detection fingerprints, performance enhancements such as the new kqueue and poll I/O engines, better IPv6 traceroute support, Windows 8 improvements, and much more! It also includes the work of five Google Summer of Code interns who worked full time with Nmap mentors during the summer.

Nmap 6.25 source code and binary packages for Linux, Windows, and Mac are available for free download from:

http://nmap.org/download.html

If you find any bugs, please let us know on nmap-dev as described at http://nmap.org/book/man-bugs.html. Here are the most important change since 6.01:

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 http://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. [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 http://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 http://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 http://nmap.org/nsedoc/, and the summaries are below (authors are listed in brackets):

o [NSE] Added 12 new protocol libraries, bring our total to 105! Here they are, with authors enclosed in brackets:

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 [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 [NSE] Added new fingerprints for http-enum: Sitecore, Moodle, typo3, SquirrelMail, RoundCube. [Jesper Kückelhahn]

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] 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]

Enjoy the new release! -Fyodor


Sent through the nmap-hackers mailing list http://cgi.insecure.org/mailman/listinfo/nmap-hackers Archived at http://seclists.org/nmap-hackers/


Current thread: