Skip to content
KitploitKITPLOIT
StrumentiBlog
Log in
Invia
StrumentiBlog
Invia

Strumenti di Hacking, PenTest e Cybersecurity per il tuo Arsenale di Sicurezza!

Kitploit è una directory di strumenti di hacking, cybersecurity e pentesting. Scopri gli ultimi aggiornamenti dei progetti per trovare vulnerabilità, analizzare sistemi, automatizzare i test e rafforzare la tua sicurezza.

··Feed·Contatto·Privacy·© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
thc-ipv6 — Toolkit per attacchi IPv6 | Kitploit
Strumenti/GitHubGitHub/vanhauser-thc/thc-ipv6
RicognizioneAnalisi delle VulnerabilitàExploitEvasione IDS/IPSFuzzingSicurezza di ReteSicurezza WirelessPenetration TestingUtilità e FrameworkRed Teaming
GitHubvanhauser-thc/thc-ipv6
1.2k229175 mesi faRevisionato da Kitploit

Più Popolari

Vedi tutti →

Scopri gli strumenti più utilizzati dalla nostra community.

Esplora tutti gli strumenti

Sfoglia la nostra collezione di strumenti

Vedi tutti gli strumenti →

thc-ipv6

Toolkit per attacchi IPv6

Vedi Repository
Condividi

THC-IPV6-ATTACK-TOOLKIT (c) 2005-2022 [email protected] https://github.com/vanhauser-thc/thc-ipv6

	Licensed under AGPLv3 (vedi file LICENSE)

INTRODUZIONE

Questo codice è nato quando sono entrato in contatto con IPv6, ho imparato sempre di più - e poi non ho trovato strumenti per giocare (leggi: "hackerare") con esso. All'inizio ho provato a implementare cose con libnet, ma poi ho scoperto che l'implementazione IPv6 è solo parziale - e fa schifo. Ho provato ad aggiungere il codice mancante, ma beh, non era così facile, quindi ho risparmiato tempo e ho scritto rapidamente la mia libreria.

LIMITAZIONI

Questo codice attualmente funziona solo su:

  • Linux 2.6.x o successivo (a causa dell'uso di /proc)
  • Ethernet Ma per tutti i ragazzi Linux significa che funzionerà per il 98% dei tuoi casi d'uso. Sono gradite patch! (aggiungi "antispam" nell'oggetto per superare la mia protezione antispam, altrimenti l'email rimbalzerà)

BUILD

Devi avere installato libpcap-dev per poter compilare gli strumenti. Inoltre sono raccomandati anche libssl-dev e libnetfilter-queue-dev.

Questi possono essere installati con (Kali, Debian, Ubuntu): sudo apt-get install libpcap-dev libssl-dev libnetfilter-queue-dev

Puoi compilare gli strumenti eseguendo: make all

Puoi installare gli strumenti e le pagine man esistenti eseguendo: make install

GLI STRUMENTI

Il THC IPV6 ATTACK TOOLKIT viene già fornito con molti strumenti di attacco efficaci:

  • parasite6: spoof ICMPv6 neighbor solicitation/advertisement, ti mette come man-in-the-middle, come ARP mitm (e parasite)
  • alive6: uno scan alive efficace, che rileverà tutti i sistemi in ascolto su questo indirizzo
  • dnsdict6: brute forcer parallelo di dizionario DNS IPv6
  • fake_router6: annunciati come router sulla rete, con la massima priorità
  • redir6: reindirizza il traffico verso di te in modo intelligente (man-in-the-middle) con un abile spoof ICMPv6 redirect
  • toobig6: riduttore di MTU con la stessa intelligenza di redir6
  • detect-new-ip6: rileva nuovi dispositivi IPv6 che si uniscono alla rete, puoi eseguire uno script per scansionare automaticamente questi sistemi ecc.
  • dos-new-ip6: rileva nuovi dispositivi IPv6 e dice loro che il loro IP scelto collide sulla rete (DOS).
  • trace6: traceroute6 molto veloce con supporto di ICMP6 echo request e TCP-SYN
  • flood_router6: inonda un target con annunci router casuali
  • flood_advertise6: inonda un target con annunci neighbor casuali
  • fuzz_ip6: fuzzer per IPv6
  • implementation6: esegue vari controlli di implementazione su IPv6
  • implementation6d: demone di ascolto per implementation6 per controllare dietro un FW
  • fake_mld6: annunciati in un gruppo multicast di tua scelta sulla rete
  • fake_mld26: stesso ma per MLDv2
  • fake_mldrouter6: falsifica messaggi router MLD
  • fake_mipv6: ruba un IP mobile al tuo se IPSEC non è richiesto per l'autenticazione
  • fake_advertiser6: annunciati sulla rete
  • smurf6: smurf locale
  • rsmurf6: smurf remoto, noto per funzionare solo contro linux al momento
  • exploit6: vulnerabilità IPv6 note da testare contro un target
  • denial6: una raccolta di test denial-of-service contro un target
  • thcping6: invia un pacchetto ping6 artigianale
  • sendpees6: uno strumento di [email protected], che genera richieste neighbor solicitation con molti CGA (roba crittografica ;-) per tenere la CPU occupata. carino. e circa altri 25 strumenti da scoprire :-)

Basta eseguire gli strumenti senza opzioni e ti daranno aiuto e mostreranno le opzioni della riga di comando.

LA LIBRERIA

La libreria thc-ipv6-lib.c è il cuore e l'anima di tutti gli strumenti - e quelli che potresti voler scrivere. L'implementazione è così semplice, di solito sono bastano 2-4 righe per creare un pacchetto IPv6/ICMPv6 completo con il contenuto che desideri.

La struttura base che usi è (thc_ipv6_hdr *) per esempio thc_ipv6_hdr *my_ipv6_packet; int my_ipv6_packet_len; e non dovrai mai giocare con le sue opzioni/campi.

Ogni volta che vuoi costruire un pacchetto IPv6, scrivi: my_ipv6_packet = thc_create_ipv6_extended(interface, prefer, &my_ipv6_packet_len, src6, dst6, ttl, length, label, class, version); se qualcosa fallisce, restituisce NULL (solo se my_ipv6_packet_len o dst6 non esistono o malloc fallisce). Le opzioni di thc_create_ipv6_extended sono: (char*) interface - l'interfaccia su cui inviare il pacchetto (int) prefer - PREFER_LINK (per usare l'indirizzo link-local) o PREFER_HOST per usare un indirizzo IPv6 host, e PREFER_GLOBAL per usare un indirizzo IP6 pubblico (default) (int ) &my_ipv6_packet_len - la dimensione del pacchetto che verrà creato (unsigned char) src6 - l'IP6 sorgente (OPZIONALE - verrà selezionato se NULL) (unsigned char*) dst6 - l'IP6 di destinazione (in formato rete, 16 byte) solitamente il risultato di thc_resolve6("ipv6.google.com"); (int) ttl - il ttl del pacchetto (OPZIONALE - 0 lo imposterà a 255) (int) length - la lunghezza che verrà impostata nell'header (OPZIONALE - 0 = lunghezza reale) (int) label - l'etichetta di flusso (0 va bene) (int) class - la classe del pacchetto (0 va bene) (int) version - la versione IP6 (OPZIONALE - 0 imposterà la versione 6) Restituisce NULL in caso di errore o una struttura mallocata in caso di successo. free() una volta che hai finito.

Ora puoi impostare header di estensione sopra: thc_add_hdr_route(my_ipv6_packet, &my_ipv6_packet_len, routers, routerptr); thc_add_hdr_fragment(my_ipv6_packet, &my_ipv6_packet_len, offset, more_frags, id); thc_add_hdr_dst(my_ipv6_packet, &my_ipv6_packet_len, buf, buflen); thc_add_hdr_hopbyhop(my_ipv6_packet, &my_ipv6_packet_len, buf, buflen); thc_add_hdr_nonxt(my_ipv6_packet, &my_ipv6_packet_len, hdropt); thc_add_hdr_misc(my_ipv6_packet, &my_ipv6_packet_len, type, len, buf, buflen); Le funzioni spiegate: _route: Aggiungi un Routing Forwarding Header (come IP Source Routing) (int) routers - il numero di router in routerptr (char**) routerptr - una struttura char[routers + 1] con destinazioni router in formato rete. Vedi alive6.c per un esempio. _fragment: Aggiungi un Fragment Header (int) offset - l'offset in cui scrivere i dati (nota: inserisci la posizione dell'offset in byte qui, non in ottetti) (int) more_frags - impostato a 0 se è l'ultimo frammento, 1 su tutti gli altri (int) id - un ID per il pacchetto (uguale per tutti i frammenti) _dst: Aggiungi un Destination Options Header (char) buf - un buffer di char. devi gestire questo buffer tu stesso con ciò che vuoi scrivere dentro. (int) buflen - la lunghezza di buf _hopbyhop: Aggiungi un Hop-By-Hop Header (char*) buf - un buffer di char. devi gestire questo buffer tu stesso con ciò che vuoi scrivere dentro. (int) buflen - la lunghezza di buf _nonxt: Specifica che non ci saranno header successivi (int) hdropt - questa opzione è attualmente ignorata _misc: Specifica un header miscellaneo. Usalo se vuoi progettare un header di estensione non valido o inesistente. (int) type - l'ID del tipo per specificare l'header (int) len - la lunghezza da pubblicizzare per l'header (OPZIONALE - -1 imposta il valore corretto) (char*) buf - un buffer di char. devi gestire questo buffer tu stesso con ciò che vuoi scrivere dentro. (int) buflen - la lunghezza di buf Queste funzioni restituiscono (int) 0 in caso di successo e -1 in caso di errore.

Scarica lo strumento