
Résolveur DNS haute vitesse et bruteforceur de sous-domaines avec filtrage précis des wildcards et validation des empoisonnements DNS pour une reconnaissance précise.

Résolveur de domaines rapide et bruteforce de sous-domaines avec filtrage précis des wildcards
Pour commencer »
Utilisation
·
Fonctionnement
·
Parrainage
·
FAQ
puredns est un outil rapide de résolution de domaines et de bruteforce de sous-domaines capable de filtrer avec précision les sous-domaines wildcard et les entrées empoisonnées du DNS.
Il utilise massdns, un puissant résolveur DNS stub, pour effectuer des requêtes en masse. Avec la bande passante appropriée et une bonne liste de résolveurs publics, il peut résoudre des millions de requêtes en quelques minutes. Malheureusement, les résultats de massdns ne sont aussi bons que les réponses fournies par les résolveurs publics. Les résultats sont souvent pollués par des réponses DNS erronées et des faux positifs provenant de sous-domaines wildcard.
puredns résout ce problème grâce à son algorithme de détection des wildcards. Il peut filtrer les wildcards en fonction des réponses DNS obtenues à partir d'un ensemble de résolveurs de confiance. Il tente également de contourner l'empoisonnement DNS en validant les réponses obtenues à l'aide de ces résolveurs de confiance.
Vous trouvez cela utile ? ⭐ Mettez une étoile sur GitHub — cela aide !

|
Si mon travail vous rapporte de l'argent, envisagez de devenir sponsor ! Vous pouvez obtenir des avantages uniques ! Cela signifierait aussi ÉNORMÉMENT ❤️ car cela me permettrait de continuer à travailler gratuitement pour la communauté. Mais quoi que vous fassiez, soyez assuré que mon logiciel restera gratuit et open-source pour vous. |
Puredns nécessite massdns sur la machine hôte. Si le chemin vers le binaire massdns est présent dans la variable d'environnement PATH, puredns fonctionnera directement. Un bon endroit pour copier l'exécutable massdns est /usr/local/bin sur la plupart des systèmes. Sinon, vous devrez spécifier le chemin vers le fichier binaire massdns à l'aide de l'argument --bin en ligne de commande.
Ce qui suit devrait fonctionner sur la plupart des systèmes basés sur Debian. Suivez les instructions officielles pour plus d'informations.
git clone https://github.com/blechschmidt/massdns.git
cd massdns
make
sudo make install
Vous devez obtenir une liste de serveurs DNS publics pour utiliser puredns. Référez-vous à la FAQ pour apprendre à constituer votre propre liste de serveurs fonctionnels.
Vous pouvez télécharger une version binaire.
Alternativement, vous pouvez facilement compiler la dernière version. Assurez-vous d'abord que Go est installé sur votre système - les deux dernières versions majeures de Go sont prises en charge. Référez-vous à la page d'installation officielle de Go pour les instructions d'installation. Ensuite, exécutez la commande suivante :
go install github.com/d3mondev/puredns/v2@latest
Assurez-vous de consulter la liste complète des commandes et options disponibles avec puredns --help.
Si un fichier resolvers.txt existe dans le répertoire de travail actuel, puredns l'utilisera par défaut. Sinon, si les fichiers ~/.config/puredns/resolvers.txt ou ~/.config/puredns/resolvers-trusted.txt sont présents, puredns les utilisera automatiquement comme résolveurs. Si aucune de ces options n'est disponible, spécifiez les résolveurs à utiliser avec les arguments --resolvers et --resolvers-trusted.
Spécifier des résolveurs de confiance est optionnel. Par défaut, puredns utilise simplement 8.8.8.8 et 8.8.4.4.
Voici comment bruteforcer une liste massive de sous-domaines en utilisant une wordlist nommée all.txt :
puredns bruteforce all.txt domain.com
Vous pouvez également bruteforcer plusieurs domaines à la fois avec l'option -d pour charger un fichier texte contenant des domaines au lieu de spécifier un seul domaine comme argument :
puredns bruteforce all.txt -d domains.txt
Vous pouvez également résoudre une liste de domaines contenus dans un fichier texte (un par ligne).
puredns resolve domains.txt
Vous pouvez passer la liste des domaines à résoudre via stdin :
cat domains.txt | puredns resolve
Ou une liste de mots à utiliser pour le bruteforce :
cat wordlist.txt | puredns bruteforce domain.com
Vous pouvez également ajouter l'option -q pour n'afficher que les domaines trouvés et les rediriger vers d'autres outils :
cat domains.txt | puredns resolve -q | httprobe
Vous pouvez enregistrer les informations suivantes dans des fichiers pour les réutiliser dans vos workflows :