All Projects → giovanifss → Dumb

giovanifss / Dumb

Licence: GPL-3.0 license
Dumain Bruteforcer - a fast and flexible domain bruteforcer

Programming Languages

haskell
3896 projects

Projects that are alternatives of or similar to Dumb

Js.org
Dedicated to JavaScript and its awesome community since 2015
Stars: ✭ 3,996 (+7300%)
Mutual labels:  dns, domain, subdomain
Fierce
A DNS reconnaissance tool for locating non-contiguous IP space.
Stars: ✭ 1,072 (+1885.19%)
Mutual labels:  dns, domain, subdomain
Information collection handbook
Handbook of information collection for penetration testing and src
Stars: ✭ 447 (+727.78%)
Mutual labels:  dns, domain, subdomain
Getaltname
Extract subdomains from SSL certificates in HTTPS sites.
Stars: ✭ 320 (+492.59%)
Mutual labels:  dns, subdomain, pentest-tool
Dictionary Of Pentesting
Dictionary collection project such as Pentesing, Fuzzing, Bruteforce and BugBounty. 渗透测试、SRC漏洞挖掘、爆破、Fuzzing等字典收集项目。
Stars: ✭ 492 (+811.11%)
Mutual labels:  dns, bruteforce, subdomain
Bash Toolkit
Este proyecto esá destinado a ayudar a los sysadmin
Stars: ✭ 13 (-75.93%)
Mutual labels:  dns, domain
Thedev.id
🎉 An identity for developers on the web.
Stars: ✭ 37 (-31.48%)
Mutual labels:  dns, domain
Domainfuzz
Domain name permutation engine for detecting typo squatting, phishing and corporate espionage
Stars: ✭ 74 (+37.04%)
Mutual labels:  dns, domain
Python Whois
Python module/library for retrieving WHOIS information of domains 💻❤
Stars: ✭ 128 (+137.04%)
Mutual labels:  dns, domain
Shuffledns
shuffleDNS is a wrapper around massdns written in go that allows you to enumerate valid subdomains using active bruteforce as well as resolve subdomains with wildcard handling and easy input-output support.
Stars: ✭ 498 (+822.22%)
Mutual labels:  dns, subdomain
Yotter
yotter - bash script that performs recon and then uses dirb to discover directories that might lead to information leakage
Stars: ✭ 118 (+118.52%)
Mutual labels:  dns, bruteforce
Amass
In-depth Attack Surface Mapping and Asset Discovery
Stars: ✭ 1,693 (+3035.19%)
Mutual labels:  dns, subdomain
Subdomain3
A new generation of tool for discovering subdomains( ip , cdn and so on)
Stars: ✭ 605 (+1020.37%)
Mutual labels:  dns, subdomain
Amass
In-depth Attack Surface Mapping and Asset Discovery
Stars: ✭ 6,284 (+11537.04%)
Mutual labels:  dns, subdomain
Bugcrowd Levelup Subdomain Enumeration
This repository contains all the material from the talk "Esoteric sub-domain enumeration techniques" given at Bugcrowd LevelUp 2017 virtual conference
Stars: ✭ 513 (+850%)
Mutual labels:  dns, subdomain
Hosts Blocklists
Automatically updated, moderated and optimized lists for blocking ads, trackers, malware and other garbage
Stars: ✭ 1,749 (+3138.89%)
Mutual labels:  dns, domain
Dart Basic Utils
A dart package for many helper methods fitting common situations
Stars: ✭ 153 (+183.33%)
Mutual labels:  dns, domain
Massdns
A high-performance DNS stub resolver for bulk lookups and reconnaissance (subdomain enumeration)
Stars: ✭ 2,093 (+3775.93%)
Mutual labels:  dns, subdomain
Dnsprobe
DNSProb is a tool built on top of retryabledns that allows you to perform multiple dns queries of your choice with a list of user supplied resolvers.
Stars: ✭ 221 (+309.26%)
Mutual labels:  dns, subdomain
vaf
Vaf is a cross-platform very advanced and fast web fuzzer written in nim
Stars: ✭ 294 (+444.44%)
Mutual labels:  bruteforce, pentest-tool

Dumb - Dumain Bruteforcer

A tool to bruteforce dumains!

Dumb

How DUMB works:

Dumb works with a masked dumain for substitution. The dumain can have as many masks as you want as long as you pass the according wordlists. For example:

Bruteforcing subdumains:

Using the mask DUMB.dumain.com and the following wordlists:

www
ftp
backoffice

Dumb will generate the following dumains for bruteforce:

www.dumain.com
ftp.dumain.com
backoffice.dumain.com

For subdumains, you can only pass dumain.com and dumb will understand as DUMB.dumain.com.

Bruteforcing domain endings:

Using the same principle, you can pass as mask dumain.DUMB with the following wordlist:

com
net
org

Dumb will generate the following dumains for bruteforce:

dumain.com
dumain.net
dumain.org

Bruteforcing everything:

To bruteforce everything you can pass the mask as "DUMB.DUMB.DUMB" passing three wordlists:

wordlist1   wordlist2   wordlist3
www         foo         com
ftp         bar         net

Dumb will generate:

www.foo.com
ftp.foo.com
www.bar.com
ftp.bar.com
www.foo.net
ftp.foo.net
www.bar.net
ftp.bar.net

Usage:

Dumb receives the dumain mask as first parameter and the wordlists following. The number of wordlists must match the number of masks in the dumain. For example:

  • One mask:
    $ dumb "DUMB.dumain.com" wordlists/foo.txt
  • Two masks:
    $ dumb "DUMB.dumain.DUMB" wordlists/foo.txt wordlists/bar.txt
  • Several masks:
    $ dumb "DUMB-DUMB-DUMB_DUMB.DUMB.DUMB" wordlists/foo_1.txt ... wordlists/foo_6.txt

Docker:

If you don't want to build from source, you can use the docker version:

  • docker run -it giovanifss/dumb "DUMB.dumain.com" subdomains.txt
    Also, if you want to test the newest code (beta) with improvements, use:
  • docker run -it giovanifss/dumb:beta "DUMB.dumain.com" subdomains.txt
    Note that the beta may be unstable or do not perform well

All the wordlists in wordlists/ are inside the docker container in filesystem root /, this means that you can call dumb passing the wordlists name:

  • docker run -it giovanifss/dumb "DUMB.dumain.com" (subdomains.txt|subdominios.txt|domain-endings.txt)

To work with local wordlists that aren't present inside the container, you can use docker volumes:
docker run -v local/wordlist.txt:/opt/wordlist.txt -it giovanifss/dumb "DUMB.dumain.com" /opt/wordlist.txt

Building from source:

If you want to build from source you will need stack:

  • Enter in the project directory and run $ stack build.
  • To execute: $ stack exec dumb "DUMB.dumain.com" wordlists/subdomains.txt

Note that some older versions of stack have some problems to build the project (Debian stack package, for example). Make sure you get the latest stack version.

Future features:

Future planned features are:

  • Argument parser support, for better configuration of the tool execution;
  • Post analysis of found dumains, generating statistics and metrics;

Performance:

The tool performance will highly depend on your network connection. Usually, it should take less then 10 seconds to finish a subdumain burteforce with the wordlists/subdomains.txt wordlist.

If you have a good connection and think that the tool is slow, try changing the 1000 in the splitDomains function call, e.g. mapM_ (MP.mapM_ (resolve rs)) (splitDomains 1000 allDomains), to a higher value.

Alternatively, you can change mapM_ (MP.mapM_ (resolve rs)) (splitDomains 1000 allDomains) to MP.mapM_ (resolve rs) allDomains to execute all the requests in parallel.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].