Skip to content
KitploitKITPLOIT
OutilsBlog
Soumettre
OutilsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

··Flux·Contact·Confidentialité·© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
pretender — Votre acolyte MitM pour relayer les attaques comprenant DHCPv6 DNS takeover ainsi que mDNS, LLMNR et NetBIOS-NS spoofing. | Kitploit
Outils/GitHubGitHub/redteampentesting/pretender
ReconnaissanceCollecte d'InformationsSécurité RéseauTests d'IntrusionAuthentificationRed TeamingAnalyse DNS
GitHubredteampentesting/pretender

pretender

Votre acolyte MitM pour relayer les attaques comprenant DHCPv6 DNS takeover ainsi que mDNS, LLMNR et NetBIOS-NS spoofing.

Voir le dépôt
1.3k97il y a 1 moisVérifié par Kitploit

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
Partager

pretender

Votre compagnon MitM pour les attaques de relais, avec prise de contrôle DNS par DHCPv6
ainsi que l'usurpation mDNS, LLMNR et NetBIOS-NS

Release GitHub Action: Check Software License Go Report Card


pretender est un outil développé par RedTeam Pentesting pour obtenir des positions d'homme-du-milieu via l'usurpation de résolution de noms locale et des attaques de prise de contrôle DNS par DHCPv6. pretender cible principalement les hôtes Windows, car il est destiné à être utilisé pour des attaques de relais, mais il peut être déployé sur Linux, Windows et toutes les autres plates-formes supportées par Go. Les requêtes de résolution de noms peuvent être répondues avec des adresses IP arbitraires dans les situations où l'outil de relais s'exécute sur un hôte différent de pretender. Il est conçu pour fonctionner avec des outils tels que Impacket's ntlmrelayx.py et krbrelayx qui gèrent les connexions entrantes pour les attaques de relais ou l'extraction de hachages.

Lisez notre article de blog pour plus d'informations sur la prise de contrôle DNS par DHCPv6, l'usurpation de résolution de noms locale et les attaques de relais.


Utilisation

Pour avoir une idée de la situation dans le réseau local, pretender peut être démarré en mode --dry où il se contente de journaliser les requêtes entrantes sans y répondre :

root@kitploit:~
pretender -i eth0 --dry
pretender -i eth0 --dry --no-ra # sans annonces de routeur (RA)
pretender -i eth0 --dry --no-ra-dns # avec RA mais sans annoncer DNS dans les RA

Pour effectuer une usurpation de résolution de noms locale via mDNS, LLMNR et NetBIOS-NS ainsi qu'une prise de contrôle DNS par DHCPv6 avec annonces de routeur, exécutez simplement pretender ainsi :

root@kitploit:~
pretender -i eth0

Vous pouvez désactiver certaines attaques avec --no-dhcp-dns (désactive DHCPv6, DNS et annonces de routeur), --no-lnr (désactive mDNS, LLMNR et NetBIOS-NS), --no-mdns, --no-llmnr, --no-netbios et --no-ra.

Si ntlmrelayx.py s'exécute sur un hôte différent (par exemple 10.0.0.10/fe80::5), lancez pretender ainsi :

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

Pretender peut être configuré pour ne répondre qu'aux requêtes pour certains domaines (ou à tous sauf certains) et il peut effectuer les attaques d'usurpation seulement pour certains hôtes (ou tous sauf certains). La référence aux hôtes par nom d'hôte repose sur la résolution de noms de l'hôte qui exécute pretender. Voir l'exemple suivant :

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

Pour plus d'informations, exécutez pretender --help.


Conseils

  • Les options --spoof/--dont-spoof/--spoof-for/--dont-spoof-for prennent en charge les wildcards. domain.fqdn effectue une correspondance littérale, tandis que .domain.fqdn correspondra à domain.fqdn et sub.domain.fqdn. De même, *domain.fqdn correspond à mydomain.fqdn. Utilisez *.domain.fqdn pour uniquement correspondre aux sous-domaines. Notez que les wildcards de sous-domaines (point en tête) et les wildcards arbitraires (*) ne peuvent pas être utilisés ensemble.
  • Assurez-vous d'activer le support IPv6 dans ntlmrelayx.py avec l'option -6.
  • Pretender prend en charge la configuration DNS sans état via les annonces de routeur sans DHCPv6 avec l'option --stateless-ra. Par défaut, le serveur DHCPv6 est toujours démarré mais peut être désactivé en utilisant --no-dhcp.

Construction et personnalisation

Pretender peut être construit comme suit :

root@kitploit:~
go build

Pretender peut également être compilé avec des paramètres préconfigurés. Pour cela, les ldflags doivent être modifiés comme suit :

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

Par exemple, Pretender peut être construit pour Windows avec une interface par défaut spécifique, sans sortie colorée et avec une adresse IPv4 de relais configurée :

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

Liste complète des options de personnalisation (voir defaults.go ou pretender --help pour des informations détaillées) :

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
Télécharger l’outil
  • Si des filtres --dont-spoof/--dont-spoof-for sont présents et qu'aucun serveur DNS amont n'est configuré avec --delegate-ignored-to, les annonces de routeur n'annonceront pas directement le serveur DNS, ce qui rend l'attaque moins efficace.
  • Pretender peut être configuré pour s'arrêter après une certaine période dans les situations où il ne peut pas être interrompu manuellement (--stop-after et main.vendorStopAfter).
  • La recherche d'informations sur l'hôte (qui repose sur la table ARP, les voisins IP et les recherches inverses) peut être désactivée avec --no-host-info ou main.vendorNoHostInfo.
  • Si vous n'êtes pas sûr de l'interface à choisir (surtout sous Windows), listez toutes les interfaces avec leurs noms et adresses en utilisant --interfaces.
  • Si vous voulez exclure des hôtes de l'usurpation de résolution de noms locale, assurez-vous d'exclure également leurs adresses IPv6 ou utilisez --no-ipv6-lnr/main.vendorNoIPv6LNR.
  • Les messages DHCPv6 contiennent généralement une option FQDN (qui peut aussi parfois contenir un nom d'hôte qui n'est pas un FQDN). Cette option est utilisée pour filtrer les messages par nom d'hôte (--spoof-for/--dont-spoof-for). Vous pouvez décider quoi faire des messages DHCPv6 sans option FQDN en définissant ou en omettant --ignore-nofqdn.
  • Selon la configuration de construction, soit le résolveur du système d'exploitation (CGO_ENABLED=1) soit une implémentation Go (CGO_ENABLED=0) est utilisé. Cela peut être important pour la collecte d'informations sur l'hôte car le résolveur du SE peut prendre en charge la résolution de noms locale alors que l'implémentation Go ne le fait pas, à moins qu'un résolveur stub ne soit utilisé.
  • La fonctionnalité d'informations sur l'hôte n'est actuellement disponible que pour Windows et Linux.
  • Une liste personnalisée de fournisseurs d'adresses MAC peut être compilée dans le binaire en remplaçant la liste par défaut hostinfo/mac-vendors.txt. Seules les lignes avec des préfixes MAC au format suivant sont reconnues : FF:FF:FF<tab>VendorID<tab>Vendor (la longueur du préfixe MAC peut être arbitraire).
  • Si vous voulez effectuer uniquement du relais Kerberos via des mises à jour dynamiques, vous pouvez spécifier --no-lnr et --spoof-types SOA pour ignorer toute requête non liée à l'attaque.
  • Lors d'une attaque de relais Kerberos où krbrelayx.py s'exécute sur un hôte différent de pretender (l'adresse IPv4 de relais pointe vers un autre hôte qui exécute krbrelayx.py), l'hôte exécutant krbrelayx.py devra également exécuter pretender afin de recevoir et refuser la requête de mise à jour dynamique envoyée à l'adresse IPv4 de relais.
  • Par défaut, afin de limiter les perturbations lors d'une prise de contrôle DNS par DHCPv6, l'option --delegate-ignored-to <serveur DNS> peut être utilisée pour déléguer les requêtes ignorées à un serveur DNS légitime.
  • L'option --dry-with-dhcp peut être combinée avec --delegate-ignored-to pour surveiller les requêtes de résolution de noms dans le réseau sans perturbation.
  • Il est possible d'ignorer les messages DHCP provenant de clients non-Windows en spécifiant --ignore-non-microsoft-dhcp. Cela est possible car le client DHCP Windows inclut le numéro d'entreprise 311 de Microsoft dans l'option de fournisseur DHCP.
  • Avec --toggle, l'usurpation de résolution de noms (DNS, mDNS, LLMNR, NetBIOS) peut être activée et désactivée dynamiquement à l'exécution. Cela est particulièrement puissant avec --delegate-ignored-to pour démarrer et arrêter les attaques sans arrêter le serveur DHCP. Cela peut être utilisé comme solution de contournement lorsque le client DHCP Windows cesse d'attribuer des adresses après avoir échoué à joindre le serveur DHCP pendant un certain temps.