thc-ipv6: update to v2.0, package all available utilities
authorJo-Philipp Wich <jow@openwrt.org>
Thu, 11 Oct 2012 21:57:56 +0000 (21:57 +0000)
committerJo-Philipp Wich <jow@openwrt.org>
Thu, 11 Oct 2012 21:57:56 +0000 (21:57 +0000)
SVN-Revision: 33728

package/network/ipv6/thc-ipv6/Makefile
package/network/ipv6/thc-ipv6/patches/100-no-ssl.patch [new file with mode: 0644]
package/network/ipv6/thc-ipv6/patches/100-optional-openssl.patch [deleted file]

index c3192ef982ed436f8475cd1cb1467bd463b7baf2..c5bbe618770a9e4d866043f050dd257bd824df13 100644 (file)
@@ -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.
 # See /LICENSE for more information.
@@ -8,65 +8,52 @@
 include $(TOPDIR)/rules.mk
 
 PKG_NAME:=thc-ipv6
-PKG_VERSION:=0.7
+PKG_VERSION:=2.0
 PKG_RELEASE:=1
 
 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
 PKG_SOURCE_URL:=http://freeworld.thc.org/releases/
-PKG_MD5SUM:=01715cfa7f5d4a53fe8f142a10c38c78
+PKG_MD5SUM:=5c9be9ad38ac15c368bb5140d031c051
 
 PKG_MAINTAINER:=Jo-Philipp Wich <jow@openwrt.org>
 
 include $(INCLUDE_DIR)/package.mk
 
-define Package/thc-ipv6/Default
-  SECTION:=ipv6
-  CATEGORY:=IPv6
-  DEPENDS:=+libpcap
-  URL:=http://freeworld.thc.org/
-endef
-
-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
-
+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
-
-  PKG_CONFIG_DEPENDS+=CONFIG_PACKAGE_$(1)
-
-  define Package/$(1)
-  $$(call Package/thc-ipv6/Default)
-    TITLE:=$(2)
-    SUBMENU:=IPv6 attack and analyzing toolset (thc-ipv6)
+  define Package/thc-ipv6-$(subst _,-,$(1))
+    TITLE:=THC-IPv6 $(1) utility
+    SECTION:=ipv6
+    CATEGORY:=IPv6
+    DEPENDS:=+libpcap $(THC_DEPENDS_$(1))
+    URL:=http://freeworld.thc.org/
+    SUBMENU:=THC-IPv6 attack and analyzing toolkit
   endef
 
-  define Package/$(1)/description
-    $(3)
+  define Package/thc-ipv6-$(subst _,-,$(1))/description
+    This package contains the $(1) utility of the THC-IPv6 toolkit.
   endef
 
-  define Package/$(1)/install
+  define Package/thc-ipv6-$(subst _,-,$(1))/install
        $(INSTALL_DIR) $$(1)/usr/sbin
        $(INSTALL_BIN) $(PKG_BUILD_DIR)/$(1) $$(1)/usr/sbin/$(1)
   endef
 
-  $$(eval $$(call BuildPackage,$(1)))
-
+  $$(eval $$(call BuildPackage,thc-ipv6-$(subst _,-,$(1))))
 endef
 
-
-#$(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))
+$(foreach a,$(THC_APPLETS),$(eval $(call BuildTool,$(a))))
diff --git a/package/network/ipv6/thc-ipv6/patches/100-no-ssl.patch b/package/network/ipv6/thc-ipv6/patches/100-no-ssl.patch
new file mode 100644 (file)
index 0000000..5f87bcd
--- /dev/null
@@ -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
diff --git a/package/network/ipv6/thc-ipv6/patches/100-optional-openssl.patch b/package/network/ipv6/thc-ipv6/patches/100-optional-openssl.patch
deleted file mode 100644 (file)
index 96f6ceb..0000000
+++ /dev/null
@@ -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