1
0
mirror of https://github.com/nmap/nmap.git synced 2025-12-27 01:49:03 +00:00
Commit Graph

49 Commits

Author SHA1 Message Date
david
11b76a55e2 Route tables rework to libdnet-stripped/NMAP_MODIFICATIONS. 2012-09-30 00:01:20 +00:00
djalal
af495cdc49 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.
2012-09-26 09:24:00 +00:00
djalal
e017b7c290 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.

http://seclists.org/nmap-dev/2012/q3/986
2012-09-26 08:49:22 +00:00
david
0674925f73 Skip over entire ifreq struct in NEXTIFR.
On platforms supporting sa_len, NEXTIFR would skip over sa_len bytes
starting at the beginning of ifr_addr, and assume that was the end of
the struct. (The idea being that a large address such as a sockaddr_in6
could overflow the nominal struct boundary.) This logic was wrong when
there was something else in the union bigger than sa_len; we would
increment into somewhere in the middle of the same struct.

This exhibited itself on NetBSD, where struct ifreq has a
sockaddr_storage member in its internal union:
struct	ifreq {
	char	ifr_name[IFNAMSIZ];		/* if name, e.g. "en0" */
	union {
		struct	sockaddr ifru_addr;
		struct	sockaddr ifru_dstaddr;
		struct	sockaddr ifru_broadaddr;
		struct	sockaddr_storage ifru_space;

No, we skip over sa_len bytes, or to the nominal end of the struct,
whichever is larger.

Unix Network Programming gets this wrong too; in figure 17.8 they do
ptr += sizeof(ifr->ifr_name) + max(sizeof(struct sockaddr), ifr->ifr_addr.sa_len);
2012-09-10 01:17:28 +00:00
david
f7873c0089 Resolve strict-aliasing problems in ip6_ntop.
addr-util.c:191:3: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
2012-09-01 03:29:39 +00:00
david
48ff61a710 Handle ARPHRD_VOID in addr_ston.
This type is used by OpenVZ venet interfaces. We "handle" such an
address type just by blanking the MAC address field.

Lack of support for this type of interface was preventing Nmap from
working on certain systems.

http://seclists.org/nmap-dev/2012/q2/763

An earlier message about this same type of interface is

http://seclists.org/nmap-dev/2009/q3/303
2012-07-21 07:35:41 +00:00
djalal
8e7edbd008 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]
2012-06-02 19:35:08 +00:00
david
ae2f887af1 Ignore IPMP interfaces in SIOCGLIFCONF intf_loop.
This is a (hopefully temporary) workaround for these virtual interfaces
on Solaris. They don't work for Nmap because they don't allow packet
sniffing, but you can use one of the physical interfaces they're
composed of.
2012-05-24 02:56:08 +00:00
david
8d964ad4e9 Consider IFF_LOOPBACK before IFF_BROADCAST.
The IPv6 loopback interface on AIX has both IFF_BROADCAST and IFF_LOOPBACK set. Checking IFF_BROADCAST first erroneously makes it appear as an Ethernet device.
2011-09-26 22:26:50 +00:00
david
032caee6ac 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.
2011-09-25 19:14:33 +00:00
david
dba101df69 Update NMAP_MODIFICATIONS to reflect upstream code merges by Jay Fink. 2010-10-11 18:17:23 +00:00
david
f664110479 Update NMAP_MODIFICATIONS for fixed ip6_pack_hdr. 2010-10-07 21:54:19 +00:00
david
a2b84bf74f 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
  compiliation error when Nmap was compiled with an OpenSSL that had
  SCTP support. [Olli Hauer, Daniel Roethlisberger]
2010-09-05 03:40:31 +00:00
david
b61286dc2c Add #ifdef guards around two uses of AF_LINK (there was already a guard
around the third use). Vlatko submitted this patch to compile on
Android.
2010-08-20 04:50:19 +00:00
david
7b956b8099 Document r17542 in NMAP_MODIFICATIONS.
o Made eth_get_pcap_devname compare interface descriptions as well as
  MAC addresses when assigning interface names like eth0 on Windows.
  Only comparing MAC addresses failed in the case of "teamed"
  interfaces, when three interfaces (two physical, one virtual) could
  have the same hardware address.
2010-05-14 16:53:46 +00:00
david
5c1ec9a488 Don't build a shared libdnet library by default. We always link directly
against the static library.
2010-05-07 21:08:32 +00:00
david
d4ff5e9688 Make the Autoconf check for PF_PACKET support Linux-specific. Recent
versions of OpenSolaris (I tested snv_134) also support PF_PACKET, but
not in an entirely compatible way. The configure check was making the
build use eth-linux.c, which doesn't compile under OpenSolaris. This
change makes OpenSolaris fall back to eth-dlpi.c, which works. The
report about this was sent by Darren Reed.
2010-04-27 23:33:17 +00:00
david
d9fd52c194 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 the error message
    Warning: Unable to open interface e1000g0 -- skipping it.
  on Solaris 9. [David]
2010-02-28 19:45:39 +00:00
david
2099944ef0 Move entries in libdnet-stripped/NMAP_MODIFICATIONS to reflect recent
upstream merges by Jay Fink.

http://code.google.com/p/libdnet/source/detail?r=654
http://code.google.com/p/libdnet/source/detail?r=655
http://code.google.com/p/libdnet/source/detail?r=656
2010-02-24 01:54:56 +00:00
david
5cb31211f9 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.
2009-11-09 04:49:32 +00:00
fyodor
978b8fc3ae Applied a configure.in patch from Petr Salinger in Debian bug #542388 which apparently fixes the libdnet build on GNU/kFreeBSD 2009-08-20 08:46:00 +00:00
david
41dadaedb7 Use socklen_t as the type in arguments to getsockname and getsockopt to
avoid a "pointer targets differ in signedness" warning. Add a check for
socklen_t in configure.in; if it's not present, typedef it to int.
2009-08-07 00:11:57 +00:00
david
36c672cdd7 autoreconf with Autoconf 2.63, Automake 1.10.1, and libtool 2.2.6. 2009-08-06 22:00:34 +00:00
david
000a1ee3ac Regenerate configure and aclocal.m4 with Autoconf 2.63. 2009-08-06 19:58:10 +00:00
josh
1d45eaf352 Changd some calls to ctype functions so that their arguments are explicitly cast
to type int.
2009-08-06 16:12:21 +00:00
daniel
82f698becf Mark the __attribute__ ifndefs merged to upstream libdnet r653. 2009-07-05 21:08:52 +00:00
daniel
1cfb3558c9 Cleanup and introduction of a special section for changes to libdnet
which have been merged to the upstream libdnet repository and thus
do not have to be re-applied when the libdnet version included with
Nmap is updated in the future.
2009-07-03 18:07:20 +00:00
daniel
2ed58055ee Setting eol-style native in preparation of cleanups to NMAP_MODIFICATIONS. 2009-07-03 17:52:54 +00:00
josh
9c374417eb Fixed a formatting mistake in libdnet-stripped/src/intf.c and updated
NMAP_MODIFICATIONS to reflect a bug fix.
2009-07-02 20:33:38 +00:00
daniel
50830f7488 o Added initial SCTP port scanning support to Nmap. SCTP is
a layer 4 protocol used mostly for telephony related applications.
  This brings the following new features:
  o 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.
  o SCTP COOKIE-ECHO chunk port scan (-sZ): open ports are silent,
    closed ports return an ABORT chunk.
  o SCTP INIT chunk ping probes (-PY): host discovery using SCTP
    INIT chunk packets.
  o SCTP-specific IP protocol scan (-sO -p sctp).
  o SCTP-specific traceroute support (--traceroute).
  o The ability to use the deprecated Adler32 algorithm as specified
    in RFC 2960 instead of CRC32C from RFC 4960 (--adler32).
  o 42 well-known SCTP ports were added to the nmap-services file.
  Part of the work on SCTP support was kindly sponsored by
  Compass Security AG, Switzerland.  [Daniel Roethlisberger]
2009-06-03 23:15:45 +00:00
david
10962f4fc0 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.
2009-03-15 22:55:20 +00:00
kris
d23556c513 Upgrading shipped libdnet to 1.12 2008-09-19 06:12:25 +00:00
david
8bc4a2ced3 Document something in NMAP_MODIFICATIONS I forgot to document before. It's from
when I adapted some libdnet 1.11 code to convert a dnet name to a pcap name by
matching hardware addresses. I removed an earlier comment that this one
supersedes.
2008-08-30 04:39:30 +00:00
david
ba27a7308c Copy libdnet-stripped/include/dnet/os.h from libdnet 1.12. This avoids a
duplicate typedef of ssize_t.
2008-08-29 20:23:56 +00:00
david
3e3f0d8d39 Canonicalize interface type numbers used internally by libdnet. Also
recognize 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.
2007-12-03 23:51:26 +00:00
david
62823cb379 Back out r6322, which added a debugging message to libdnet. The bug which
necessitated the message will be fixed in a pending commit.
2007-12-03 23:44:02 +00:00
david
dfb9c157c7 Delete auxiliary scripts config.guess, config.sub, depcomp, install-sh,
ltmain.sh, and missing from subdirectories. Autoconf automatically looks
in the parent directory for these files. I had to copy the files
depcomp, ltmain.sh, and missing into the root of the source tree.
2007-11-27 06:22:46 +00:00
david
e1a5a6424d Show a warning in libdnet whenever a Windows interface type is unrecognized.
(These get mapped to interfaces beginning with "net": net0, net1, etc.) I
originally planned to make this a debugging message to be displayed at a
certain debuggin level whether the interface type is recognized or not. It
looked to be a pain to give libdnet visibility of Nmap debugging level, so
instead it just prints a message to stderr only when the interface type is
unrecognized.
2007-11-27 00:39:01 +00:00
david
d08af8a057 List all interface aliases on Windows. All aliases of one interface will be
given the same name, e.g., "eth0". Use -e to choose the interface and -S to
choose the source address.
2007-11-26 23:44:20 +00:00
fyodor
b361685be8 NSE committed 2006-12-11 00:34:26 +00:00
fyodor
9c686d4a12 about to do more os fingerprint integration 2006-12-03 00:34:19 +00:00
fyodor
5a9fea3b39 portability fixes, fixed UDP phantom port bug, fixed --version-intensity crash, changed mass_dns to give warning rather than error if cannot find dns servers 2006-06-10 21:23:27 +00:00
fyodor
76acd0a496 Nmap 3.98BETA1 2006-01-21 23:57:49 +00:00
fyodor
e2b19b36a3 a bunch of misc. changes 2005-12-29 11:34:45 +00:00
fyodor
0551dc6964 Time to start working on verifying/fixing alleged memorly leak on large scans 2005-12-03 04:20:52 +00:00
fyodor
b3923483ea 3.84ALPHA1 release imminant 2005-08-11 05:07:01 +00:00
fyodor
bdf2caa2a4 vcproj for nmap 2005-08-08 05:48:49 +00:00
fyodor
9e7384fd63 truly close to 3.83SOC2 release 2005-07-21 00:59:11 +00:00
fyodor
4d2beed7c3 libdnet stripped and integrated, ARP ping scan starting to work pretty well 2005-04-30 05:12:29 +00:00