Nmap 6.25
更新細節:
- [NSE] Added CPE to smb-os-discovery output.
- [Ncat] Fixed the printing of warning messages for large arguments to the -i and -w options.
- [Ncat] Shut down the write part of connected sockets in listen mode when stdin hits EOF, just as was already done in connect mode.
- [Zenmap] Removed a crashing error that could happen when canceling a "Print to File" on Windows:
> Traceback (most recent call last):
> File "zenmapGUIMainWindow.pyo", line 831, in _print_cb
> File "zenmapGUIPrint.pyo", line 156, in run_print_operation
GError: Error from StartDoc
- Added some new checks for failed library calls. [Bill Parker]
版本下載:Nmap 6.25
Nmap 6.01
更新細節:
- [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'".
- [Zenmap] Fixed a crash that happened when activating the host filter. File "zenmapCoreSearchResult.pyo", line 155, in match_os KeyError: 'osmatches'
- 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
- 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.
- 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).
- [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.01
Nmap 6.00
更新細節:
- [NSE] Added the script http-traceroute, which exploits the Max-Forwards HTTP header to detect reverse proxies.
- Added the script distcc-CVE-2004-2687 that checks and exploits a remote command execution vulnerability in distcc.
- Added two new scripts mysql-query and mysql-dump-hashes, which add support for performing custom MySQL queries and dump MySQL password hashes.
- 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.
- 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 elements.
- [NSE] Added the script http-drupal-modules, which enumerates the installed Drupal modules using drupal-modules.lst.
- [NSE] Added http-vuln-cve2012-1823.nse, which checks for PHP CGI installations with a remote code execution vulnerability.
- [NSE] Added the script dict-info, which retrieves information from a DICT server, by issuing the SHOW SERVER command.
- [NSE] Added the script gkrellm-info, which displays information retrieved from the GKRellm monitoring service.
- [NSE] Added the script ajp-request, which adds support for creating custom Apache JServer Protocol requests.
- [NSE] Added the script ajp-brute, which enables password brute force auditing against the Apache JServ Protocol service.
- [NSE] Added the script broadcast-tellstick-discover, which discovers Telldus Technologies TellStickNet devices on the LAN.
- [NSE] Added the Apache JServer Protocol (AJP) library and the scripts ajp-methods, ajp-headers and ajp-auth.
- In XML output, elements are now child elements of the they belong to. Old output was thus:
......
New output is:
......
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.
- Added a new 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:
- Nmap's development pace has increased because Google (again) sponsored 5 full-time college and graduate student programmer interns this summer as part of their Summer of Code program!
- [NSE] Added the script mmouse-exec that connects to a Mobile Mouse server, starts an application, and sends a sequence of keystrokes to it.
- [NSE] Added the script mmouse-brute that performs brute force password auditing against the Mobile Mouse service.
- [NSE] Added the script cups-queue-info that lists the contents of a remote CUPS printer queue.
- [NSE] Added the script ip-forwarding that detects devices that have IP forwarding enabled (acting as routers).
- [NSE] Added the script samba-vuln-cve-2012-1182 which detects the SAMBA CVE 2012-1182 vulnerability.
- [NSE] Added the script dns-check-zone that checks DNS configuration against best practices including RFC 1912.
- [NSE] Added the http-gitweb-projects-enum that queries a gitweb for a list of Git projects, their authors and descriptions.
- [NSE] targets-sniffer now is capable of sniffing IPv6 addresses.
- [NSE] Added the script traceroute-geolocation that queries geographic locations of each traceroute hop and allows to export the results to KLM, allowing the hops to be plotted on a map.
- [NSE] Added the ipp library and the script cups-info that lists available printers by querying the cups network daemon.
- [NSE] Added the mobilme library and the scripts http-icloud-findmyiphone and http-icloud-sendmsg, that finds the location of iOS devices and provides functionality to send them messages.
- [NSE] Added gps library and the gpsd-info script that collects GPS data from the gpsd daemon.
- [NSE] Ported the pop3-brute script to use the brute library.
- Fixed a compilation problem on Solaris 9 caused by a missing definition of IPV6_V6ONLY.
- Upgraded included libpcap to version 1.2.1.
- [NSE] Added hostmap-robtex.nse by Arturo Busleiman, which finds other domain names sharing the IP address of the target.
- [NSE] Renamed hostmap.nse to hostmap-bfk.nse.
- [NSE] Added http-robtex-shared-ns by Arturo Busleiman, finding domain names that share the same name server as the target.
- [NSE] Added the script http-vlcstreamer-ls which queries the VLC Streamer helper service for a list of files in a given directory.
- [NSE] Added the script targets-ipv6-mld that sends a malformed ICMP6 MLD Query to discover IPv6 enabled hosts on the LAN.
- [NSE] Added script http-virustotal that allows checking files, or hashes of previously scanned files, against the major antivirus engines.
- Setting --min-parallelism by itself no longer forces the maximum parallelism to the same value.
- [NSE] Added an error message indicating script failure, when Nmap is being run in non verbose/debug mode.
- 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.
- [NSE] Added the script dns-ip6-arpa-scan which uses a very efficient technique to scan the ip6.arpa zone for PTR records.
- Changed XML output to show the "service" element whenever a tunnel is discovered for a port, even if the service behind it was unknown.
- [Zenmap] Fixed a crash that would happen in the profile editor when the script.db file doesn't exist.
- [Zenmap] It is now possible to compare scans having the same name or command line.
- [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.
- Fixed an error that could occur with ICMPv6 probes and -d4 debugging: "Unexpected probespec2ascii type encountered"
- 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.
- [NSE] Added new script http-chrono, which measures min, max and average response times of web servers.
- 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 behavior before this fix was that, when doing ARP host discovery against two targets, only one would be reported up.
- Added ciphers from RFC 5932 and Fortezza-based ciphers to ssl-enum-ciphers.nse.
- [NSE] Added new script http-drupal-users-enum, which enumerates all available Drupal user accounts by exploiting a vulnerability in the Views module.
- [NSE] Added new script broadcast-ataoe-discover, which discovers ATA over Ethernet capable devices through LAN ethernet broadcasts.
- 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.
- [NSE] Added a stun library and the scripts stun-version and stun-info, which extract version information and the external NAT:ed address.
- [NSE] Added the script duplicates which attempts to determine duplicate hosts by analyzing information collected by other scripts.
- 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 6.00
Nmap 5.51
更新細節:
- [Ndiff] Added support for prerule and postrule scripts.
- [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.
- [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).
- 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.
- [NSE] Fixed portrules in dns-zone-transfer and ftp-proftpd-backdoor that used shortport functions incorrectly and always returned true.
- [Ndiff] Fixed ndiff.dtd to include two elements that can be diffed: status and address.
- [Ndiff] Fixed the ordering of hostscript-related elements in XML output.
- [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).
- [NSE] When an NSE script sets a negative socket timeout, it now causes a controlled Lua stack trace instead of a fatal error.
- [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.
- [Ndiff] Fixed an output line that wasn't being redirected to a file when all other output was.
版本下載:Nmap 5.51
Nmap 5.50
更新細節:
- [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.
- [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'
- [NSE] Added an amazing 46 scripts, bringing the total to 177!
- 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.
- 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.
- broadcast-ms-sql-discover: Discovers Microsoft SQL servers in the same broadcast domain.
- broadcast-upnp-info: Attempts to extract system information from the UPnP service by sending a multicast query, then collecting, parsing, and displaying all responses.
- 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).
- db2-discover: Attempts to discover DB2 servers on the network by querying open ibm-db2 UDP ports (normally port 523).
- dns-update.nse: Attempts to perform an unauthenticated dynamic DNS update.
- domcon-brute: Performs brute force password auditing against the Lotus Domino Console.
- domcon-cmd: Runs a console command on the Lotus Domino Console with the given authentication credentials (see also: domcon-brute).
- domino-enum-users: Attempts to discover valid IBM Lotus Domino users and download their ID files by exploiting the CVE-2006-5835 vulnerability.
- firewalk: Tries to discover firewall rules using an IP TTL expiration technique known as firewalking.
- 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.
- giop-info: Queries a CORBA naming server for a list of objects.
- gopher-ls: Lists files and directories at the root of a gopher service. Remember those?
- hddtemp-info: Reads hard disk information (such as brand, model, and sometimes temperature) from a listening hddtemp service.
- 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.
- http-brute: Performs brute force password auditing against http basic authentication.
- 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.
- http-form-brute: Performs brute force password auditing against http form-based authentication.
- http-vhosts: Searches for web virtual hostnames by making a large number of HEAD requests against http servers using common hostnames.
- informix-brute: Performs brute force password auditing against IBM Informix Dynamic Server.
- informix-query: Runs a query against IBM Informix Dynamic Server using the given authentication credentials (see also: informix-brute).
- informix-tables: Retrieves a list of tables and column definitions for each database on an Informix server.
- iscsi-brute: Performs brute force password auditing against iSCSI targets.
- iscsi-info: Collects and displays information from remote iSCSI targets.
- modbus-discover: Enumerates SCADA Modbus slave ids (sids) and collects their device information.
- nat-pmp-info: Queries a NAT-PMP service for its external address.
- netbus-auth-bypass: Checks if a NetBus server is vulnerable to an authentication bypass vulnerability which allows full access without knowing the password.
- netbus-brute: Performs brute force password auditing against the Netbus backdoor ("remote administration") service.
- netbus-info: Opens a connection to a NetBus server and extracts information about the host and the NetBus service itself.
- netbus-version: Extends version detection to detect NetBuster, a honeypot service that mimes NetBus.
- nrpe-enum: Queries Nagios Remote Plugin Executor (NRPE) daemons to obtain information such as load averages, process counts, logged in user information, etc.
- oracle-brute: Performs brute force password auditing against Oracle servers.
- 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).
- path-mtu: Performs simple Path MTU Discovery to target hosts.
- 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.
- rmi-dumpregistry: Connects to a remote RMI registry and attempts to dump all of its objects.
- 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 accountsand 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.
- 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.
- stuxnet-detect: Detects whether a host is infected with the Stuxnet worm (http://en.wikipedia.org/wiki/Stuxnet).
- svn-brute: Performs brute force password auditing against Subversion source code control servers.
- 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.
- vnc-brute: Performs brute force password auditing against VNC servers.
- vnc-info: Queries a VNC server for its protocol version and supported security types.
- wdb-version: Detects vulnerabilities and gathers information (such as version numbers and hardware support) from VxWorks Wind DeBug agents.
- 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).
- [NSE] Added 12 new protocol libraries:
* dhcp.lua by Ron
* dnssd.lua (DNS Service Discovery)
* ftp.lua
* giop.lua (CORBA naming service)
* informix.lua (Informix database)
* iscsi.lua (iSCSI - IP based SCSI data transfer)
* nrpc.lua (Lotus Domino RPC)
* rmi.lua (Java Remote Method Invocation)
* tns.lua (Oracle)
* upnp.lua (UPnP support)
* vnc.lua (Virtual Network Computing)
* wsdd.lua (Web Service Dynamic Discovery)
- [NSE] Added a new brute library that provides a basic framework and logic for brute force password auditing scripts.
- [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.
- 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.
- 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.
- [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.
- [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 astargets. 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.
- [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-*"'.
- 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 http://nmap.org/svn/docs/nmap.xsl, and here is an example scan processed through it:
- [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").
- 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".
- 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.
- 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 http://nmap.org/book/inst-windows.html#inst-win-source
- 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.
- 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 part binaries (OpenSSL, WinPcap) still don't support ASLR or DEP. Support for DEP on XP SP3, using SetProcessDEPPolicy(), could still be implemented.
- Investigated using the CPE (Common Platform Enumeration) standard for describing operating systems, devices, and service names for Nmap OS and service detection.
- [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.
- 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.
- [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.
- [Nping] Substantially improved the Nping man page.
- Documented the licenses of the third-party software used by Nmap and it's sibling tools:
- [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.
- Added a simple Nmap NSE script template to make writing new scripts
- [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 (notopen|filtered) are considered when calculating node sizes. Henri Doreau found and fixed a bug in the implementation.
- [NSE] Added the get_script_args NSE function for parsing script arguments in a clean and standardized way
- 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.
- 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)
- Fix Nmap compilation on OpenSolaris
- [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.
- 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 forIPv4.
- [Zenmap] Upgraded to the newer gtk.Tooltip API to avoid deprecation messages about gtk.Tooltip.
- [NSE] Made dns-zone-transfer script able to add new discovered DNS records to the Nmap scanning queue.
- [NSE] Enhance ssl-cert to also report the type and bit size of SSL certificate public keys
- [Ncat] Make --exec and --idle-timeout work when connecting with--proxy.
- [Nping] Fixed a bug which caused Nping to fail when targeting broadcast addresses
- [Nping] Nping now limits concurrent open file descriptors properly based on the resources available on the host
- [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.
- Ncat now logs Nsock debug output to stderr instead of stdout forconsistency with its other debug messages.
- [NSE] Added a new function, shortport.http, for HTTP script portrules and changed 14 scripts to use it.
- Updated to the latest config.guess and config.sub. Thanks to Ty Miller for a reminder.
- [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).
- 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.
- [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.
- Upgraded the OpenSSL binaries shipped in our Windows installer to version 1.0.0a.
- [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.
- Changed the name of libdnet's sctp_chunkhdr to avoid a conflict witha struct of the same name in . This caused a compilation error when Nmap was compiled with an OpenSSL that had SCTP support.
- [NSE] Implemented a big cleanup of the Nmap NSE Nsock library binding code.
- 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.
- [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.
- [NSE] Made the ftp-anon script return a directory listing when anonymous login is allowed.
- [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.
- [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).
- [NSE] Scripts can now access the MTU of the host.interface device using host.interface_mtu.
- 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.
- Nmap now prints the MTU for interfaces in --iflist output.
- [NSE] Removed references to the MD2 algorithm, which OpenSSL 1.x.x no longer supports.
- [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.
- [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.
- [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.
- [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.
- [NSE] Made sslv2.nse give special output when SSLv2 is supported, but no SSLv2 ciphers are offered. This happened with a specific Sendmail configuration.
- [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 aconservative guess of 3 seconds for read timeouts.
- Fixed the fragmentation options (-f in Nmap, --mtu in Nmap & Nping),which were improperly sending whole packets in version 5.35DC1.
- [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 whichreturns the current time (and convenience functions clock_ms() and clock_us()). Qscan.nse was updated to use this more accurate timing data.
- [Ncat,Nsock] Fixed some minor bugs discovered using the Smatch source code analyzer (http://smatch.sourceforge.net/).
- [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'
- 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.
- Updated IANA IP address space assignment list for random IP (-iR) generation.
- [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.
- [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.
- 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.
- Added a service detection probe for master servers of Quake 3 and related games.
- [Zenmap] Updated French translation.
- [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.
版本下載:Nmap 5.50
Nmap 5.21
更新細節:
- [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'".
- 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.
- [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.
- [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.
- [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.
- [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
- 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.
- [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.
- [NSE] Fixed the use of an undefined variable in smb-enum-sessions.
- Fixed a compiler error when --without-liblua is used.
- [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)
- 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.
- Fixed a bug with the decoding of NMAP OID component values greater than 127.
版本下載:Nmap 5.21