Skip to content

Releases: libnet/nemesis

Nemesis v1.8

07 Jul 06:18
Compare
Choose a tag to compare

Nemesis the Mover, found a new home in the libnet project.

Changes

  • Add automatic IP multicast group to MAC multicast address translation
  • Improved usability for composing IGMPv3 reports:
    • Default to 224.0.0.2 for IGMPv3 report type
    • Add -n NUM to control number of group records

Fixes

  • Fix IGMP v2 join example in README
  • Fix logic for printing DNS protocol: TCP/UDP, by Brett Kuskie
  • Fix #12: allow 0.0.0.0 as RIP address
  • Fix #13: multiple definitions of variables, by Brett Kuskie

Nemesis v1.7

07 Jun 11:10
Compare
Choose a tag to compare

Nemesis the Comedian

Changes

  • Convert all man pages to mdoc format

Fixes

  • Fix #6: Skip sleep/delay when sending only one frame, i.e. default
  • Fix #9: Call correct exit function in nemesis-dhcp
  • Fix missing S: to getopt() in nemesis-dhcp, reported by Westermo
  • Fix network byte ordering problem with CIADDR, YIADDR, SIADDR, and GIADDR in nemesis-dhcp, reported by Westermo
  • Fix command line parsing of client MAC address, Ethernet source MAC address, and Ethernet destination MAC address in nemesis-dhcp, reported by Westermo
  • Fix missing newline in nemesis-dhcp usage text
  • Fix invalid call to close(), found by Valgrind

Packages for Debian 10, and compatible Ubuntu releases, available at https://deb.troglobit.com/

Nemesis v1.6

16 Jun 13:38
Compare
Choose a tag to compare

Nemesis the Destroyer

Changes

  • Support for DHCP protocol crafting, defaults to DHCP Discover with option 53, 12, 60, 61, and 55
  • Support for repeated send in many protocol injectors. Can be used to, e.g., flood networks with ARP requests or test DHCP.
  • Incompatible command line option changes to IGMP protocol module

Fixes

  • Fix #4: invalid IP header length in ICMP packets, by Samy Kamkar

Nemesis v1.5

10 May 11:48
Compare
Choose a tag to compare

Nemesis the Resurrection

Changes

  • Merged Nemesis libnet1 port, from stale CVS branch
    • Fixed libnet1 porting regression in nemesis-proto_icmp.c
    • Finished port of nemesis-printout.c to libnet1
    • Finished port of nemesis_proto_ospf.c, new HELLO API. Added workaround for missing "Active Neighbor" in libnet1
    • Removed lots of unused local variables, remnants from port
    • Updated configure script to check for libnet1
    • Re-KNF:ed entire source tree in libnet1 port merge. New file in root of tree: .clang-format for auto-indenting (exprimental)
  • Finished OSPF injector implementation, drop beta status
  • Changed default values for RIP injector, use v2 and 224.0.0.9
  • Minor license refactor to be auto-detected as 3-clause BSD
  • Removed build number from version string
  • Simplified usage/help texts for all injectors, more readable format
  • Replaced hard-coded version number with PACKAGE_VERSION
  • Changed README and ChangeLog to Markdown format, reorder the ChangeLog in reverse chronological order, latest first
  • Added some examples (!) to the README, everybody likes examples :)
  • Removed all generated autoconf/automake files from GIT. Use the ./autogen.sh script when building from GIT.
  • Renamed configure.in --> configure.ac and clean up the build system a bit, for readability and simplicity
  • Merged Debian .deb package build support, incl. modernize

Fixes

  • Merged mailing list fix to allow IGMP group 0.0.0.0 when sending a general query. Thanks to Randy Robertson mailto:rmrobert@vmware.com
  • Fixed long-standing OSPF non-functioning bug. Caused by static declaration of OSPF variables in header file
  • Fixed needless byte-swapping in the following injectors, libnet1 does this for us already. Possible bug in earlier versions:
    • OSPF
    • RIP
    • ICMP

Nemesis v1.4

15 Apr 09:06
Compare
Choose a tag to compare

New and improved nemesis: nemesis-ethernet and nemesis-ip.

Changes

  • Windows support (link-layer injection only)
  • Useful man pages
  • Single binary
  • Improved cross-platform support via GNU autotools
  • Easier to use
    • Nemesis will attempt to fill in as many details as possible in a packet, thus requiring fewer or even no command line switches
    • Each protocol builder attempts to build a proper packet by default
  • Organized code base
    • The network header structures in libnet proved useful so nemesis now uses them where appropriate
    • Code is re-used wherever possible resulting in a much more concise code base
  • Full payload functionality
    • Payloads can now contain NULLs within them and full-size packets are available on all supported platforms except Windows
  • IP and TCP options support
    • All nemesis injectors (excluding ARP and Ethernet) now support IP options via -O <file>
    • All nemesis injectors using TCP as a transport protocol now support TCP options via -o <file>
  • Improved IP and TCP functionality
    • Full IP fragmentation support via new -F command line semantics
    • ECN support in TCP with the addition of -fE (ECE) and -fC (CWR)
  • Switched to GNU ChangeLog format
  • Moved printout functions into nemesis-printout.c
  • Moved file I/O functions to nemesis-fileio.c
  • Incorporated strlcpy() and strlcat() into source tree
  • Updated configure.in to use AC_REPLACE_FUNCS for locally included functions: strlcpy(), strlcat(), strspn(), inet_aton()
  • Removed struct OptionsData and PayloadData in favor of FileData
  • Changed builddatafromfile() to accept a FileData *
  • removed acconfig.h and replaced with AH_TOP macro in configre.in
  • updated aclocal.m4, missing, mkinstalldirs, configure, configure.in, config.guess, Makefile.in, man/Makefile.in and src/Makefile.in as part of autotools updates

Fixes

  • Man page fixes from nnposter@users.sourceforge.net

  • minor man page cleanup

  • nemesis-proto_ip.c:

      -    ip_meta_packetlen = ip_packetlen - (link_offet + LIBNET_IP_H);
      +    ip_meta_packetlen = ip_packetlen - (link_offset + LIBNET_IP_H);
    
  • added .cvsignore to CVS

  • allow TCP packets to be sent without flags using -f-

  • allow RIP routing domain value to be 0 with RIP2

  • correct mistakes in specifying payload sizes for ICMP and RIP

  • added src/memcmp.c to satisfy automake dependency

  • debug fixes to configure.in