
Dumain Bruteforcer - un bruteforceur de domaines rapide et flexible
Un outil pour bruteforcer des dumains !

Dumb fonctionne avec un dumain masqué pour substitution. Le dumain peut avoir autant de masques que vous le souhaitez, tant que vous fournissez les listes de mots correspondantes. Par exemple :
En utilisant le masque DUMB.dumain.com et les listes de mots suivantes :
www
ftp
backoffice
Dumb générera les dumains suivants pour le bruteforce :
www.dumain.com
ftp.dumain.com
backoffice.dumain.com
Pour les sous-dumains, vous pouvez simplement passer dumain.com et dumb comprendra DUMB.dumain.com.
En utilisant le même principe, vous pouvez passer comme masque dumain.DUMB avec la liste de mots suivante :
com
net
org
Dumb générera les dumains suivants pour le bruteforce :
dumain.com
dumain.net
dumain.org
Pour bruteforcer tout, vous pouvez passer le masque comme "DUMB.DUMB.DUMB" en fournissant trois listes de mots :
wordlist1 wordlist2 wordlist3
www foo com
ftp bar net
Dumb générera :
www.foo.com
ftp.foo.com
www.bar.com
ftp.bar.com
www.foo.net
ftp.foo.net
www.bar.net
ftp.bar.net
Dumb reçoit le masque du dumain comme premier paramètre et les listes de mots suivantes. Le nombre de listes de mots doit correspondre au nombre de masques dans le dumain. Par exemple :
$ dumb "DUMB.dumain.com" wordlists/foo.txt$ dumb "DUMB.dumain.DUMB" wordlists/foo.txt wordlists/bar.txt$ dumb "DUMB-DUMB-DUMB_DUMB.DUMB.DUMB" wordlists/foo_1.txt ... wordlists/foo_6.txtSi vous ne voulez pas compiler depuis les sources, vous pouvez utiliser la version docker :
docker run -it giovanifss/dumb "DUMB.dumain.com" subdomains.txtdocker run -it giovanifss/dumb:beta "DUMB.dumain.com" subdomains.txtToutes les listes de mots dans wordlists/ sont à l'intérieur du conteneur docker dans la racine du système de fichiers /, ce qui signifie que vous pouvez appeler dumb en passant le nom de la liste de mots :
docker run -it giovanifss/dumb "DUMB.dumain.com" (subdomains.txt|subdominios.txt|domain-endings.txt)Pour travailler avec des listes de mots locales qui ne sont pas présentes dans le conteneur, vous pouvez utiliser les volumes docker :
docker run -v local/wordlist.txt:/opt/wordlist.txt -it giovanifss/dumb "DUMB.dumain.com" /opt/wordlist.txt
Si vous voulez compiler depuis les sources, vous aurez besoin de stack :
$ stack build.$ stack exec dumb "DUMB.dumain.com" wordlists/subdomains.txtNotez que certaines versions plus anciennes de stack ont des problèmes pour compiler le projet (le paquet Debian stack, par exemple). Assurez-vous d'avoir la dernière version de stack.
Les fonctionnalités prévues pour le futur sont :
Les performances de l'outil dépendront fortement de votre connexion réseau. En général, il devrait prendre moins de 10 secondes pour terminer un bruteforce de sous-dumain avec la liste de mots wordlists/subdomains.txt.
Si vous avez une bonne connexion et pensez que l'outil est lent, essayez de changer le 1000 dans l'appel de la fonction splitDomains, par exemple mapM_ (MP.mapM_ (resolve rs)) (splitDomains 1000 allDomains), pour une valeur plus élevée.
Alternativement, vous pouvez remplacer mapM_ (MP.mapM_ (resolve rs)) (splitDomains 1000 allDomains) par MP.mapM_ (resolve rs) allDomains pour exécuter toutes les requêtes en parallèle.