THC-IPV6
Last update 2013-05-03
Current public version: v2.3
For german speaking people: In the german C't magazine 11/13 (available from the 5-13th May)
will be an article on how to use the thc-ipv6 toolkit to comprehensively test IPv6 firewalls.
Next Trainings:
44Con, London, 10-11th September 2013, "Pentesting & Securing IPv6 Networks" (bookable now)
A complete tool set to attack the inherent protocol weaknesses of IPV6
and ICMP6, and includes an easy to use packet factory library.
[0x00] News and Changelog
Please note that public versions do not include all tools available!
Only those who send in comprehensive patches and new tools for thc-ipv6 get the private
versions which are released more often, include unreleased tools and more!
If you want to participate, here is a list of tools that would be interesting:
* Adding raw mode (sending into a sit 6to4 tunnel) to the library (the current implemetation doesnt work)
* Enhancing the library so it works on FreeBSD and OSX too
* Create a tool which tests an ipv6 address if it is an endpoint for various tunnel protocols
* Adding more exploit tests to exploit6 (I can supply a long list of exploit files)
* Adding more denial of service tests to denial6
* Add a dhcp6 client fuzzer
* Add a dhcp6 server fuzzer
If you want to work on a topic on the list, email me, so not multiple people are working on the same tool.
Contact: vh(at)thc(dot)org and put "antispam" in the subject line.
CHANGELOG:
##########
v2.3 - PUBLIC
* Added new tool: thcsyn6 - a TCP flooding tool
* Added new tool: redirsniff6 - redirects traffic (sniff variant to redir6)
* Added new script: thc-ipv6-setup.sh - configuring Linux for thc-ipv6
* Added new script: 6to4test.sh - check an ipv4 address for dynamic 6to4 tunnel setup
* flood_router26: added -s option for small lifetime which makes the attack even more devasting
* trace6:
- added -B option for sending echo reply packets (will not show the destination)
- added -E option for sending destination headers with invalid option
* thcping6:
- -U/-S port options now also set the source port
- -U/-S options now also send data if given
- -f fragment option can now be used multiple times
* implementation6:
- fixed bug in test case
- added icmp6 type/code printing for error replies
* toobig6: added -u option to allow testing for unrelated ICMPv6 packet firewall bypasses
* firewall6: added more test cases
* thc-ipv6-lib:
- fixed address selection bug if global and ULA addresses are present
- change NDP to use ff02::1:ffxx:xxx limited multicast addresses
- thc_resolve6 ignores now anything after a "/" or in before/after "[]"
[0x01] Introduction
Welcome to the mini website of the THC IPV6 project.
This code was inspired when I got into touch with IPv6, learned more and
more about it - and then found no tools to play (read: "hack") around with.
First I tried to implement things with libnet, but then found out that
the ipv6 implementation is only partial - and sucks. I tried to add the
missing code, but well, it was not so easy, hence I saved my time and
quickly wrote my own library. (That was 2005 though, today libnet and
other packet creation libraries have full IPv6 support.)
[0x02] Disclaimer
1. This tool is for legal purposes only!
2. The GPLv3 applies to this code.
[0x03] Some Of The Included Tools
- parasite6: icmp neighbor solitication/advertisement spoofer, puts you as man-in-the-middle, same as ARP mitm (and parasite)
- alive6: an effective alive scanng, which will detect all systems listening to this address
- dnsdict6: parallized dns ipv6 dictionary bruteforcer
- fake_router6: announce yourself as a router on the network, with the highest priority
- redir6: redirect traffic to you intelligently (man-in-the-middle) with a clever icmp6 redirect spoofer
- toobig6: mtu decreaser with the same intelligence as redir6
- detect-new-ip6: detect new ip6 devices which join the network, you can run a script to automatically scan these systems etc.
- dos-new-ip6: detect new ip6 devices and tell them that their chosen IP collides on the network (DOS).
- trace6: very fast traceroute6 with supports ICMP6 echo request and TCP-SYN
- flood_router6: flood a target with random router advertisements
- flood_advertise6: flood a target with random neighbor advertisements
- exploit6: known ipv6 vulnerabilities to test against a target
- denial6: a collection of denial-of-service tests againsts a target
- fuzz_ip6: fuzzer for ipv6
- implementation6: performs various implementation checks on ipv6
- implementation6d: listen daemon for implementation6 to check behind a fw
- fake_mld6: announce yourself in a multicast group of your choice on the net
- fake_mld26: same but for MLDv2
- fake_mldrouter6: fake MLD router messages
- fake_mipv6: steal a mobile IP to yours if IPSEC is not needed for authentication
- fake_advertiser6: announce yourself on the network
- smurf6: local smurfer
- rsmurf6: remote smurfer, known to work only against linux at the moment
- sendpees6: a tool by willdamn(ad)gmail.com, which generates a neighbor solicitation requests with a lot of CGAs (crypto stuff ;-) to keep the CPU busy. nice.
- thcping6: sends a hand crafted ping6 packet
[and about 30 more tools for you to discover]
[0x04] Documentation
THC-IPV6 comes with a rather long README file that describes the
details about the usage and library interface.
[0x05] Development & Contributions
Your contributions are more than welcomed!
If you find bugs, coded enhancements or wrote a new attack tool
please send them to vh (at) thc (dot) org - and add the word "antispam"
to the subject line.
[0x06] The Art of Downloading: Source and Binaries
The source code of THC-IPV6: thc-ipv6-2.3.tar.gz
(Note: Linux only)
Comments and suggestions are welcome.
Yours sincerly,
van Hauser
The Hackers Choice
http://www.thc.org