
Scanner rapide de prise de contrôle de sous-domaines avec 50+ signatures, prenant en charge les intégrations de fournisseurs cloud (AWS, Azure, Cloudflare) et le mode pipeline CI/CD pour les tests de sécurité automatisés.
DNS Reaper est un autre outil de prise de contrôle de sous-domaines, mais avec un accent sur la précision, la rapidité et le nombre de signatures dans notre arsenal !
Nous pouvons analyser environ 50 sous-domaines par seconde, en testant chacun avec plus de 50 signatures de prise de contrôle. Cela signifie que la plupart des organisations peuvent analyser l'intégralité de leur parc DNS en moins de 10 secondes.
Pour faciliter la prise en main, nous avons construit une petite version web qui analysera un fichier de zone DNS, une liste séparée par des virgules, ou jusqu'à 100 sous-domaines que nous trouvons via ProjectDiscovery.
Consultez-la : dnsreaper web
Bien sûr, l'outil CLI est bien plus ÉPIQUE, et plus rapide.

Vous pouvez l'exécuter en fournissant une liste de domaines dans un fichier, ou un seul domaine en ligne de commande. DNS Reaper analysera ensuite les domaines avec toutes ses signatures, produisant un fichier CSV.
Vous pouvez l'exécuter en lui laissant récupérer vos enregistrements DNS pour vous ! Oui, c'est juste, vous pouvez l'exécuter avec des identifiants et tester toute votre configuration de domaine rapidement et facilement. DNS Reaper se connectera au fournisseur DNS, récupérera tous vos enregistrements, puis les testera.
Nous supportons actuellement AWS Route53, Cloudflare et Azure. La documentation sur l'ajout de votre propre fournisseur se trouve ici
Punk Security est une entreprise DevSecOps, et DNS Reaper puise ses racines dans les meilleures pratiques de sécurité modernes.
Vous pouvez exécuter DNS Reaper dans un pipeline, en lui fournissant une liste de domaines que vous prévoyez de provisionner, et il se terminera avec un code non nul s'il détecte qu'une prise de contrôle est possible. Vous pouvez ainsi prévenir les prises de contrôle avant même qu'elles ne soient possibles !
Pour exécuter DNS Reaper, vous pouvez utiliser l'image Docker ou l'exécuter avec Python 3.11.
Les résultats sont renvoyés dans la sortie et plus de détails sont fournis dans un fichier local "results.csv". Nous supportons également la sortie JSON en option.
docker run punksecurity/dnsreaper --help
[!IMPORTANT] La version minimale de Python supportée par dnsReaper est 3.9, mais 3.11 est recommandée. Nous essayons de maintenir le support des versions stables de Python qui ne sont pas en fin de vie. Nous ne fournirons pas de support et n'accepterons pas de pull requests pour des problèmes affectant les versions de Python en fin de vie. Voir Statut des versions de Python pour plus d'informations.
Lors de l'exécution locale, nous recommandons d'utiliser un environnement virtuel (venv) pour éviter les conflits de dépendances. Instructions disponibles Ici.
pip install -r requirements.txt
python main.py --help
Analyser un compte AWS :
docker run punksecurity/dnsreaper aws --aws-access-key-id <key> --aws-access-key-secret <secret>
Pour plus d'informations, voir la documentation du fournisseur AWS
Analyser tous les domaines depuis un fichier :
docker run -it --rm -v $(pwd):/etc/dnsreaper punksecurity/dnsreaper file --filename /etc/dnsreaper/<filename>
Analyser un seul domaine :
docker run -it --rm punksecurity/dnsreaper single --domain <domain>
Analyser un seul domaine et afficher la sortie sur stdout :
Vous devez soit rediriger la sortie stderr, soit sauvegarder la sortie stdout avec >
docker run -it --rm punksecurity/dnsreaper single --domain <domain> --out stdout --out-format=json > output
____ __ _____ _ __
/ __ \__ ______ / /__/ ___/___ _______ _______(_) /___ __
/ /_/ / / / / __ \/ //_/\__ \/ _ \/ ___/ / / / ___/ / __/ / / /
/ ____/ /_/ / / / / ,< ___/ / __/ /__/ /_/ / / / / /_/ /_/ /
/_/ \__,_/_/ /_/_/|_|/____/\___/\___/\__,_/_/ /_/\__/\__, /
PRESENTS /____/
DNS Reaper ☠️
Analysez tous vos enregistrements DNS pour les prises de contrôle de sous-domaines !
utilisation :
main.py provider [options]
sortie :
résultats affichés à l'écran et (par défaut) dans results.csv
aide :
main.py --help
fournisseurs :
> aws - Analyser plusieurs domaines en les récupérant depuis AWS Route53
> azure - Analyser plusieurs domaines en les récupérant depuis Azure DNS services
> bind - Lire les domaines depuis un fichier de zone DNS BIND, ou un chemin vers plusieurs
> cloudflare - Analyser plusieurs domaines en les récupérant depuis Cloudflare
> digitalocean - Analyser plusieurs domaines en les récupérant depuis Digital Ocean
> file - Lire les domaines depuis un fichier (ou un dossier de fichiers), un par ligne
> godaddy - Analyser plusieurs domaines en les récupérant depuis GoDaddy
> googlecloud - Analyser plusieurs domaines en les récupérant depuis Google Cloud. Nécessite la variable d'environnement GOOGLE_APPLICATION_CREDENTIALS.
> projectdiscovery - Analyser plusieurs domaines en les récupérant depuis ProjectDiscovery
> securitytrails - Analyser plusieurs domaines en les récupérant depuis Security Trails
> single - Analyser un seul domaine en fournissant un domaine en ligne de commande
> zonetransfer - Analyser plusieurs domaines en récupérant les enregistrements via un transfert de zone DNS
arguments positionnels :
{aws,azure,bind,cloudflare,digitalocean,file,godaddy,googlecloud,projectdiscovery,securitytrails,single,zonetransfer}