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
pretender — Il tuo compagno MitM per attacchi di relay con funzionalità di takeover DNS DHCPv6 e spoofing di mDNS, LLMNR e NetBIOS-NS. | Kitploit
Strumenti/GitHubGitHub/redteampentesting/pretender
RicognizioneRaccolta InformazioniSicurezza di RetePenetration TestingAutenticazioneRed TeamingAnalisi DNS
GitHubredteampentesting/pretender

pretender

Il tuo compagno MitM per attacchi di relay con funzionalità di takeover DNS DHCPv6 e spoofing di mDNS, LLMNR e NetBIOS-NS.

Vedi Repository
1.3k971 mese 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

pretender

Il tuo compagno MitM per attacchi di relay con DHCPv6 DNS takeover e spoofing di mDNS, LLMNR e NetBIOS-NS

Release GitHub Action: Check Software License Go Report Card


pretender è uno strumento sviluppato da RedTeam Pentesting per ottenere posizioni di intermediazione (machine-in-the-middle) tramite spoofing della risoluzione dei nomi locale e attacchi DHCPv6 DNS takeover. pretender si rivolge principalmente a host Windows, poiché è pensato per essere utilizzato per attacchi di relay, ma può essere installato su Linux, Windows e tutte le altre piattaforme supportate da Go. Le query di risoluzione dei nomi possono essere risposte con IP arbitrari per situazioni in cui lo strumento di relay viene eseguito su un host diverso da pretender. È progettato per funzionare con strumenti come Impacket's ntlmrelayx.py e krbrelayx che gestiscono le connessioni in arrivo per attacchi di relay o dump di hash.

Leggi il nostro post sul blog per maggiori informazioni su DHCPv6 DNS takeover, spoofing della risoluzione dei nomi locale e attacchi di relay.


Utilizzo

Per avere un'idea della situazione nella rete locale, pretender può essere avviato in modalità --dry in cui registra solo le query in arrivo senza rispondere a nessuna:

root@kitploit:~
pretender -i eth0 --dry
pretender -i eth0 --dry --no-ra # senza annunci di router (RA)
pretender -i eth0 --dry --no-ra-dns # con RA ma senza pubblicizzare il DNS nei RA

Per eseguire lo spoofing della risoluzione dei nomi locale tramite mDNS, LLMNR e NetBIOS-NS e un DHCPv6 DNS takeover con annunci di router, basta eseguire pretender in questo modo:

root@kitploit:~
pretender -i eth0

È possibile disabilitare alcuni attacchi con --no-dhcp-dns (disabilita DHCPv6, DNS e annunci di router), --no-lnr (disabilita mDNS, LLMNR e NetBIOS-NS), --no-mdns, --no-llmnr, --no-netbios e --no-ra.

Se ntlmrelayx.py viene eseguito su un host diverso (ad esempio 10.0.0.10/fe80::5), esegui pretender in questo modo:

root@kitploit:~
pretender -i eth0 -4 "10.0.0.10" -6 "fe80::5"

Pretender può essere configurato per rispondere solo a query per determinati domini (o a tutti tranne alcuni) e può eseguire gli attacchi di spoofing solo per determinati host (o per tutti tranne alcuni). Il riferimento agli host tramite hostname si basa sulla risoluzione dei nomi dell'host che esegue pretender. Vedi il seguente esempio:

root@kitploit:~
pretender -i eth0 --spoof "example.com" --dont-spoof-for "10.0.0.3,host1.corp,fe80::f" --ignore-nofqdn

Per maggiori informazioni, esegui pretender --help.


Suggerimenti

  • Le opzioni --spoof/--dont-spoof/--spoof-for/--dont-spoof-for supportano wildcard. Mentre domain.fqdn esegue solo corrispondenza letterale, .domain.fqdn corrisponderà a domain.fqdn e sub.domain.fqdn. Allo stesso modo, *domain.fqdn corrisponde a mydomain.fqdn. Usa *.domain.fqdn per corrispondere solo ai sottodomini. Nota che i wildcard per sottodomini (punto iniziale) e wildcard arbitrari (*) non possono essere usati insieme.
  • Assicurati di abilitare il supporto IPv6 in ntlmrelayx.py con il flag -6.
  • Pretender supporta la configurazione DNS stateless tramite Router Advertisements senza DHCPv6 con il flag --stateless-ra. Di default, il server DHCPv6 viene comunque avviato ma può essere disabilitato usando --no-dhcp.

Compilazione e Vendoring

Pretender può essere compilato come segue:

root@kitploit:~
go build

Pretender può anche essere compilato con impostazioni preconfigurate. Per questo, i ldflags devono essere modificati in questo modo:

root@kitploit:~
-ldflags '-X main.vendorInterface=eth1'

Ad esempio, Pretender può essere compilato per Windows con un'interfaccia predefinita specifica, senza output colorato e con un indirizzo IPv4 di relay configurato:

root@kitploit:~
GOOS=windows go build -trimpath -ldflags '-X "main.vendorInterface=Ethernet 2" -X main.vendorNoColor=true -X main.vendorRelayIPv4=10.0.0.10'

Elenco completo delle opzioni di vendoring (vedi defaults.go o pretender --help per informazioni dettagliate):

root@kitploit:~
vendorInterface
vendorRelayIPv4
vendorRelayIPv6
vendorSOAHostname
vendorSpoofResponseName
vendorNoDHCPv6DNSTakeover
vendorNoDHCPv6
vendorNoDNS
vendorNoMDNS
vendorNoNetBIOS
vendorNoLLMNR
vendorNoLocalNameResolution
vendorNoIPv6LNR
vendorNoRA
vendorNoRADNS
vendorSpoof
vendorDontSpoof
vendorSpoofFor
vendorDontSpoofFor
vendorSpoofTypes
vendorSpoofSRV
vendorIgnoreDHCPv6NoFQDN
vendorIgnoreNonMicrosoftDHCP
vendorDelegateIgnoredTo
vendorToggleNameResolutionSpoofing
vendorDontSendEmptyReplies
vendorDryMode
vendorDryWithDHCPMode
vendorStatelessRA
vendorTTL
vendorLeaseLifetime
vendorRARouterLifetime
vendorRAPeriod
vendorDNSTimeout
vendorStopAfter
vendorVerbose
vendorNoColor
vendorNoTimestamps
vendorLogFileName
vendorNoHostInfo
vendorHideIgnored
vendorRedirectStderr
vendorListInterfaces
Scarica lo strumento
  • Se sono presenti filtri --dont-spoof/--dont-spoof-for e non è configurato un server DNS upstream con --delegate-ignored-to, gli annunci di router non pubblicizzeranno direttamente il server DNS, rendendo l'attacco meno efficace.
  • Pretender può essere configurato per fermarsi dopo un certo periodo di tempo in situazioni in cui non può essere interrotto manualmente (--stop-after e main.vendorStopAfter).
  • La ricerca di informazioni sugli host (che si basa sulla tabella ARP, sui vicini IP e sulle reverse lookup) può essere disabilitata con --no-host-info o main.vendorNoHostInfo
  • Se non sei sicuro di quale interfaccia scegliere (soprattutto su Windows), elenca tutte le interfacce con nomi e indirizzi usando --interfaces.
  • Se desideri escludere host dallo spoofing della risoluzione dei nomi locale, assicurati di escludere anche i loro indirizzi IPv6 o usa --no-ipv6-lnr/main.vendorNoIPv6LNR.
  • I messaggi DHCPv6 di solito contengono un'opzione FQDN (che a volte può anche contenere un hostname che non è un FQDN). Questa opzione viene utilizzata per filtrare i messaggi per hostname (--spoof-for/--dont-spoof-for). Puoi decidere cosa fare con i messaggi DHCPv6 senza opzione FQDN impostando o omettendo --ignore-nofqdn.
  • A seconda della configurazione di build, viene utilizzato il resolver del sistema operativo (CGO_ENABLED=1) o un'implementazione Go (CGO_ENABLED=0). Questo può essere importante per la raccolta di informazioni sugli host perché il resolver del sistema operativo può supportare la risoluzione dei nomi locale mentre l'implementazione Go no, a meno che non venga utilizzato un resolver stub.
  • La funzionalità di informazioni sugli host è attualmente disponibile solo per Windows e Linux.
  • Una lista personalizzata di vendor di indirizzi MAC può essere compilata nel binario sostituendo la lista predefinita hostinfo/mac-vendors.txt. Vengono riconosciute solo le righe con prefissi MAC nel seguente formato: FF:FF:FF<tab>VendorID<tab>Vendor (la lunghezza del prefisso MAC può essere arbitraria).
  • Se desideri eseguire solo il relaying Kerberos tramite aggiornamenti dinamici, puoi specificare --no-lnr e --spoof-types SOA per ignorare qualsiasi query non correlata all'attacco.
  • Quando si conduce un attacco di relay Kerberos in cui krbrelayx.py viene eseguito su un host diverso da pretender (l'indirizzo IPv4 di relay punta a un host diverso che esegue krbrelayx.py), anche l'host che esegue krbrelayx.py dovrà eseguire pretender per ricevere e negare la query di aggiornamento dinamico inviata all'indirizzo IPv4 di relay.
  • Per impostazione predefinita, al fine di limitare le interruzioni durante un DHCPv6 DNS Takeover, è possibile utilizzare l'opzione --delegate-ignored-to <server DNS> per delegare le query ignorate a un server DNS legittimo.
  • L'opzione --dry-with-dhcp può essere combinata con --delegate-ignored-to per monitorare le query di risoluzione dei nomi nella rete senza interruzioni.
  • È possibile ignorare i messaggi DHCP da client non Windows specificando --ignore-non-microsoft-dhcp. Ciò è possibile perché il client DHCP di Windows include il numero enterprise 311 di Microsoft nell'opzione vendor DHCP.
  • Con --toggle, lo spoofing della risoluzione dei nomi (DNS, mDNS, LLMNR, NetBIOS) può essere abilitato e disabilitato dinamicamente a runtime. Questo è particolarmente potente con --delegate-ignored-to per avviare e fermare gli attacchi senza fermare il server DHCP. Può essere utilizzato come soluzione alternativa quando il client DHCP di Windows smette di assegnare indirizzi dopo non essere riuscito a raggiungere il server DHCP per un po' di tempo.