Skip to content
KitploitKITPLOIT
StrumentiBlog
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
mitm6 — Sfrutta la configurazione predefinita di Windows IPv6 per falsificare il DNS tramite DHCPv6, reindirizzando il traffico della vittima per il credential relaying e attacchi man-in-the-middle durante i test di penetrazione. | Kitploit
Strumenti/GitHubGitHub/dirkjanm/mitm6
Raccolta InformazioniSicurezza di RetePenetration TestingAutenticazioneRed TeamingAnalisi DNS
GitHubdirkjanm/mitm6

mitm6

Sfrutta la configurazione predefinita di Windows IPv6 per falsificare il DNS tramite DHCPv6, reindirizzando il traffico della vittima per il credential relaying e attacchi man-in-the-middle durante i test di penetrazione.

Vedi Repository
1.9k26564 anni 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 →
Condividi

mitm6

Python 2.7 and 3 compatible PyPI version License: GPLv2

mitm6 è uno strumento di penetration testing che sfrutta la configurazione predefinita di Windows per prendere il controllo del server DNS predefinito. Lo fa rispondendo ai messaggi DHCPv6, fornendo alle vittime un indirizzo IPv6 link-local e impostando l'host dell'attaccante come server DNS predefinito. Come server DNS, mitm6 risponderà selettivamente alle query DNS scelte dall'attaccante e reindirizzerà il traffico delle vittime verso la macchina dell'attaccante invece del server legittimo. Per una spiegazione completa dell'attacco, consulta il nostro blog su mitm6. Mitm6 è progettato per funzionare insieme a ntlmrelayx da impacket per lo spoofing WPAD e il relay di credenziali.

Dipendenze e installazione

mitm6 è compatibile sia con Python 2.7 che con 3.x. Puoi installare i requisiti per la tua versione con pip install -r requirements.txt. In entrambi i casi, mitm6 utilizza i seguenti pacchetti:

  • Scapy
  • Twisted
  • netifaces

Per Python 2.7, utilizza il modulo backport ipaddress. Puoi installare l'ultima versione da PyPI con , oppure l'ultima versione dal sorgente con dopo aver clonato questo repository git.

pip install mitm6
python setup.py install

Utilizzo

Dopo l'installazione, mitm6 sarà disponibile come programma da riga di comando chiamato mitm6. Poiché utilizza la cattura di pacchetti raw con Scapy, dovrebbe essere eseguito come root. mitm6 dovrebbe rilevare le impostazioni di rete predefinite e utilizzare la tua interfaccia primaria per lo spoofing. L'unica opzione che probabilmente dovrai specificare è il dominio AD che stai spoofando. Per una regolazione avanzata, sono disponibili le seguenti opzioni:

root@kitploit:~
usage: mitm6 [-h] [-i INTERFACE] [-l LOCALDOMAIN] [-4 ADDRESS] [-6 ADDRESS] [-m ADDRESS] [-a] [-r TARGET] [-v] [--debug]
             [-d DOMAIN] [-b DOMAIN] [-hw DOMAIN] [-hb DOMAIN] [--ignore-nofqdn]

mitm6 - pwning IPv4 via IPv6
For help or reporting issues, visit https://github.com/dirkjanm/mitm6

optional arguments:
  -h, --help            show this help message and exit
  -i INTERFACE, --interface INTERFACE
                        Interface to use (default: autodetect)
  -l LOCALDOMAIN, --localdomain LOCALDOMAIN
                        Domain name to use as DNS search domain (default: use first DNS domain)
  -4 ADDRESS, --ipv4 ADDRESS
                        IPv4 address to send packets from (default: autodetect)
  -6 ADDRESS, --ipv6 ADDRESS
                        IPv6 link-local address to send packets from (default: autodetect)
  -m ADDRESS, --mac ADDRESS
                        Custom mac address - probably breaks stuff (default: mac of selected interface)
  -a, --no-ra           Do not advertise ourselves (useful for networks which detect rogue Router Advertisements)
  -r TARGET, --relay TARGET
                        Authentication relay target, will be used as fake DNS server hostname to trigger Kerberos auth
  -v, --verbose         Show verbose information
  --debug               Show debug information

Filtering options:
  -d DOMAIN, --domain DOMAIN
                        Domain name to filter DNS queries on (Allowlist principle, multiple can be specified.)
  -b DOMAIN, --blocklist DOMAIN, --blacklist DOMAIN
                        Domain name to filter DNS queries on (Blocklist principle, multiple can be specified.)
  -hw DOMAIN, -ha DOMAIN, --host-allowlist DOMAIN, --host-whitelist DOMAIN
                        Hostname (FQDN) to filter DHCPv6 queries on (Allowlist principle, multiple can be specified.)
  -hb DOMAIN, --host-blocklist DOMAIN, --host-blacklist DOMAIN
                        Hostname (FQDN) to filter DHCPv6 queries on (Blocklist principle, multiple can be specified.)
  --ignore-nofqdn       Ignore DHCPv6 queries that do not contain the Fully Qualified Domain Name (FQDN) option.

Puoi sovrascrivere manualmente la maggior parte delle opzioni di rilevamento automatico (anche se sovrascrivere l'indirizzo MAC romperà le cose). Se la rete ha hardware che blocca o rileva messaggi Router Advertisement non autorizzati, puoi aggiungere il flag --no-ra per non trasmetterli. I Router Advertisement non sono necessari per il funzionamento di mitm6 poiché si basa principalmente sui messaggi DHCPv6.

Opzioni di filtro

Sono disponibili diverse opzioni di filtro per selezionare quali host vuoi attaccare e spoofare. Prima ci sono le opzioni --host-allowlist e --host-blocklist (o in breve -hw e -hb), che accettano un dominio (parziale) come argomento. Le richieste DHCPv6 in entrata verranno filtrate in base a questa lista. La proprietà controllata è l'opzione DHCPv6 FQND, in cui il client fornisce il proprio hostname. Lo stesso vale per le richieste DNS, per le quali è disponibile l'opzione --domain (o -d), dove puoi specificare quale/i dominio/i vuoi spoofare. Bloccare domini specifici è possibile anche con --blocklist/-b. Entrambi i parametri possono essere specificati più volte per includere/bloccare più domini (ad esempio -d domain.local -d otherdomain.local -b somehost.domain.local -b somehost.otherdomain.local).

Sia per il filtro host che DNS, viene eseguito un semplice confronto di stringhe. Quindi se scegli di rispondere a wpad, risponderà anche a query per wpad.corpdomain.com. Se vuoi un filtro più specifico, usa entrambe le opzioni allowlist e blocklist, poiché la blocklist ha la precedenza sull'allowlist. Per impostazione predefinita, il primo dominio specificato verrà utilizzato come dominio di ricerca DNS, se vuoi specificare esplicitamente questo dominio tu stesso, usa l'opzione --localdomain.

Impatto sulla rete e ripristino della rete

mitm6 è progettato come strumento di penetration testing e quindi dovrebbe avere il minor impatto possibile sulla rete. Questa è la ragione principale per cui mitm6 attualmente non implementa un attacco man-in-the-middle completo, come vediamo ad esempio nell'attacco SLAAC. Per ridurre ulteriormente l'impatto, gli indirizzi IP assegnati hanno valori di time-to-live (TTL) bassi. Il lease scadrà entro 5 minuti quando mitm6 viene fermato, il che rimuoverà il server DNS dalla configurazione delle vittime. Per evitare che le risposte DNS vengano memorizzate nella cache, tutte le risposte vengono inviate con un TTL di 100 secondi, che garantisce che la cache venga cancellata entro pochi minuti dall'uscita dello strumento.

Utilizzo con ntlmrelayx

mitm6 è progettato per essere utilizzato con ntlmrelayx. Dovresti eseguire gli strumenti uno accanto all'altro, in questo scenario mitm6 spoofarà il DNS, spingendo le vittime a connettersi a ntlmrelayx per le connessioni HTTP e SMB. Per questo devi assicurarti di eseguire ntlmrelayx con l'opzione -6, che lo farà ascoltare sia su IPv4 che su IPv6. Per ottenere le credenziali per WPAD, specifica l'hostname WPAD da spoofare con -wh HOSTNAME (qualsiasi hostname inesistente nel dominio locale funzionerà poiché mitm6 è il server DNS). Opzionalmente puoi anche usare il parametro -wa N con un numero di tentativi per richiedere l'autenticazione per il file WPAD stesso nel caso sospetti che le vittime non abbiano applicato la patch MS16-077.

Utilizzo con krbrelayx

Puoi anche usare mitm6 per il relay dell'autenticazione Kerberos, specialmente via DNS. Per fare ciò, usa il parametro --relay e specifica un host a cui vuoi fare il relay. Questo host verrà impersonato, e mitm6 cercherà di convincere le tue vittime a inviare aggiornamenti dinamici autenticati usando l'autenticazione Kerberos a krbrelayx. Maggiori informazioni su questo attacco sono disponibili nel seguente blog: https://dirkjanm.io/relaying-kerberos-over-dns-with-krbrelayx-and-mitm6/

Rilevamento

Il team Fox-IT Security Research Team ha rilasciato firme Snort e Suricata per rilevare traffico DHCPv6 non autorizzato e risposte WPAD su IPv6. Le firme sono disponibili qui: https://gist.github.com/fox-srt/98f29051fe56a1695de8e914c4a2373f

Scarica lo strumento