thc-ipv6: update to v2.0, package all available utilities

SVN-Revision: 33728
master
Jo-Philipp Wich 12 years ago
parent f5d12a126d
commit f248332d52
  1. 69
      package/network/ipv6/thc-ipv6/Makefile
  2. 11
      package/network/ipv6/thc-ipv6/patches/100-no-ssl.patch
  3. 93
      package/network/ipv6/thc-ipv6/patches/100-optional-openssl.patch

@ -1,5 +1,5 @@
# #
# Copyright (C) 2009-2011 OpenWrt.org # Copyright (C) 2009-2012 OpenWrt.org
# #
# This is free software, licensed under the GNU General Public License v2. # This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information. # See /LICENSE for more information.
@ -8,65 +8,52 @@
include $(TOPDIR)/rules.mk include $(TOPDIR)/rules.mk
PKG_NAME:=thc-ipv6 PKG_NAME:=thc-ipv6
PKG_VERSION:=0.7 PKG_VERSION:=2.0
PKG_RELEASE:=1 PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=http://freeworld.thc.org/releases/ PKG_SOURCE_URL:=http://freeworld.thc.org/releases/
PKG_MD5SUM:=01715cfa7f5d4a53fe8f142a10c38c78 PKG_MD5SUM:=5c9be9ad38ac15c368bb5140d031c051
PKG_MAINTAINER:=Jo-Philipp Wich <jow@openwrt.org> PKG_MAINTAINER:=Jo-Philipp Wich <jow@openwrt.org>
include $(INCLUDE_DIR)/package.mk include $(INCLUDE_DIR)/package.mk
define Package/thc-ipv6/Default THC_APPLETS := \
address6 alive6 covert_send6 covert_send6d denial6 detect-new-ip6 \
detect_sniffer6 dnsdict6 dnsrevenum6 dos-new-ip6 \
dump_router6 exploit6 fake_advertise6 fake_dhcps6 fake_dns6d \
fake_dnsupdate6 fake_mipv6 fake_mld26 fake_mld6 fake_mldrouter6 \
fake_router26 fake_router6 fake_solicitate6 flood_advertise6 \
flood_dhcpc6 flood_mld26 flood_mld6 flood_mldrouter6 flood_router26 \
flood_router6 flood_solicitate6 fragmentation6 fuzz_ip6 \
implementation6 implementation6d inverse_lookup6 kill_router6 \
ndpexhaust6 node_query6 parasite6 passive_discovery6 randicmp6 \
redir6 rsmurf6 sendpees6 sendpeesmp6 smurf6 thcping6 toobig6 trace6
THC_DEPENDS_dnsdict6 := +libpthread
THC_DEPENDS_thcping6 := +librt
define BuildTool
define Package/thc-ipv6-$(subst _,-,$(1))
TITLE:=THC-IPv6 $(1) utility
SECTION:=ipv6 SECTION:=ipv6
CATEGORY:=IPv6 CATEGORY:=IPv6
DEPENDS:=+libpcap DEPENDS:=+libpcap $(THC_DEPENDS_$(1))
URL:=http://freeworld.thc.org/ URL:=http://freeworld.thc.org/
endef SUBMENU:=THC-IPv6 attack and analyzing toolkit
define Build/Compile
$(MAKE) -C $(PKG_BUILD_DIR) \
CC="$(TARGET_CC)" \
OPT="$(TARGET_CFLAGS) -L$(STAGING_DIR)/usr/lib -I$(PKG_BUILD_DIR) -I$(STAGING_DIR)/usr/include" all
endef
define BuildTool
PKG_CONFIG_DEPENDS+=CONFIG_PACKAGE_$(1)
define Package/$(1)
$$(call Package/thc-ipv6/Default)
TITLE:=$(2)
SUBMENU:=IPv6 attack and analyzing toolset (thc-ipv6)
endef endef
define Package/$(1)/description define Package/thc-ipv6-$(subst _,-,$(1))/description
$(3) This package contains the $(1) utility of the THC-IPv6 toolkit.
endef endef
define Package/$(1)/install define Package/thc-ipv6-$(subst _,-,$(1))/install
$(INSTALL_DIR) $$(1)/usr/sbin $(INSTALL_DIR) $$(1)/usr/sbin
$(INSTALL_BIN) $(PKG_BUILD_DIR)/$(1) $$(1)/usr/sbin/$(1) $(INSTALL_BIN) $(PKG_BUILD_DIR)/$(1) $$(1)/usr/sbin/$(1)
endef endef
$$(eval $$(call BuildPackage,$(1))) $$(eval $$(call BuildPackage,thc-ipv6-$(subst _,-,$(1))))
endef endef
$(foreach a,$(THC_APPLETS),$(eval $(call BuildTool,$(a))))
#$(eval $(call BuildTool,NAME,TITLE,DESCRIPTION))
$(eval $(call BuildTool,parasite6,ARP spoofer for IPv6,Provides false answers to Neighbor Solitication requests))
$(eval $(call BuildTool,dos-new-ip6,DAD spoofer,Prevents new IPv6 interfaces to come up by spoofing DAD))
$(eval $(call BuildTool,detect-new-ip6,Host detector,Detects new IPv6 addresses joining the network))
$(eval $(call BuildTool,fake_router6,Router spoofer,Send Router Advertisements and try to become the default router))
$(eval $(call BuildTool,fake_advertise6,RA spoofer,Advertise arbitary IPv6 addresses))
$(eval $(call BuildTool,fake_mld6,Multicast membership spoofer,Advertise local host in arbitary multicast groups))
$(eval $(call BuildTool,fake_mipv6,MIPv6 update spoofer,Spoof MIPv6 updates to redirect packets directed at the home-address))
$(eval $(call BuildTool,redir6,Route injector,Inject IPv6 routes to redirect traffic to other routers))
$(eval $(call BuildTool,smurf6,Local smurfer,Smurf the target or all-nodes multicast group with ICMPv6 echo replies))
$(eval $(call BuildTool,alive6,Host presence scanner,Find active IPv6 hosts in the network segment))
$(eval $(call BuildTool,toobig6,MTU injector,Inject MTU values in a IPv6 host))
$(eval $(call BuildTool,rsmurf6,Remote smurfer,Smurf the local network of a target host by exploiting Linux implementation errors))

@ -0,0 +1,11 @@
--- a/Makefile
+++ b/Makefile
@@ -1,7 +1,7 @@
CC=gcc
#CFLAGS?=-Wall -ggdb
CFLAGS?=-O2
-LDFLAGS+=-lpcap -lssl -lcrypto
+LDFLAGS+=-lpcap
PROGRAMS=parasite6 dos-new-ip6 detect-new-ip6 fake_router6 fake_advertise6 fake_solicitate6 fake_mld6 fake_mld26 fake_mldrouter6 flood_mldrouter6 fake_mipv6 redir6 smurf6 alive6 toobig6 rsmurf6 implementation6 implementation6d sendpees6 sendpeesmp6 randicmp6 fuzz_ip6 flood_mld6 flood_mld26 flood_router6 flood_router26 flood_advertise6 flood_solicitate6 trace6 exploit6 denial6 fake_dhcps6 flood_dhcpc6 fake_dns6d fragmentation6 kill_router6 fake_dnsupdate6 ndpexhaust6 detect_sniffer6 dump_router6 fake_router26 passive_discovery6 dnsrevenum6 inverse_lookup6 node_query6 address6 thcping6 covert_send6 covert_send6d
LIBS=thc-ipv6-lib.o

@ -1,93 +0,0 @@
--- a/Makefile
+++ b/Makefile
@@ -1,8 +1,8 @@
CC=gcc
#OPT=-Wall -ggdb
-OPT=-O2
-LIB=-lpcap -lssl -lcrypto
-PROGRAM=parasite6 dos-new-ip6 detect-new-ip6 fake_router6 fake_advertise6 fake_mld6 fake_mipv6 redir6 smurf6 alive6 toobig6 rsmurf6 test_implementation6 sendpees6
+OPT=-O2 $(if $(USE_SSL),-DUSE_SSL,)
+LIB=-lpcap $(if $(USE_SSL),-lssl -lcrypto,)
+PROGRAM=parasite6 dos-new-ip6 detect-new-ip6 fake_router6 fake_advertise6 fake_mld6 fake_mipv6 redir6 smurf6 alive6 toobig6 rsmurf6 test_implementation6 $(if $(USE_SSL),sendpees6,)
all: thc-ipv6-lib.o $(PROGRAM)
--- a/thc-ipv6-lib.c
+++ b/thc-ipv6-lib.c
@@ -37,8 +37,10 @@
#include <pcap.h>
#include "thc-ipv6.h"
/* libssl */
+#ifdef USE_SSL
#include <openssl/evp.h>
#include <openssl/sha.h>
+#endif
@@ -1507,7 +1509,7 @@
* 2006/07
*/
-
+#ifdef USE_SSL
thc_key_t *thc_generate_key(int key_len)
{
thc_key_t *key;
@@ -1598,6 +1600,7 @@
return cga_hdr;
}
+#endif
thc_timestamp_hdr *generate_timestamp(void)
{
@@ -1632,6 +1635,7 @@
return nonce;
}
+#ifdef USE_SSL
thc_rsa_hdr *thc_generate_rsa(char *data2sign, int data2sign_len, thc_cga_hdr *cga_hdr, thc_key_t *key)
{
thc_rsa_hdr *rsa_hdr;
@@ -1827,3 +1831,4 @@
return 0;
}
+#endif
--- a/thc-ipv6.h
+++ b/thc-ipv6.h
@@ -10,7 +10,9 @@
#define _THC_IPV6_H
#include <pcap.h>
+#ifdef USE_SSL
#include <openssl/rsa.h>
+#endif
#define VERSION "v0.7"
#define AUTHOR "van Hauser / THC <vh@thc.org>"
@@ -228,10 +230,12 @@
char *pad;
} thc_rsa_hdr;
+#ifdef USE_SSL
typedef struct {
RSA *rsa;
int len;
} thc_key_t;
+#endif
typedef struct {
unsigned char *data;
@@ -239,8 +243,10 @@
int len;
} opt_t;
+#ifdef USE_SSL
extern thc_key_t *thc_generate_key(int key_len);
extern thc_cga_hdr *thc_generate_cga(unsigned char *prefix, thc_key_t *key, unsigned char **cga);
+#endif
#endif
Loading…
Cancel
Save