Skip to content
Related Articles

Related Articles

Dome – Python Script To Obtain Subdomains And Search For Open Ports

View Discussion
Improve Article
Save Article
  • Last Updated : 08 Jun, 2022
View Discussion
Improve Article
Save Article

Dome is an automated cyber-security tool developed in the Python language that is used in the process of subdomain enumerations. This subdomain can be tested for getting the bugs out of it. The Dome tool has an active and passive mode for the enumeration process. Dome tool is available on the GitHub platform for free and is open source to use. This tool is highly recommended for security researchers and bug bounty hunters.

Passive Mode:

This is the safe mode that is undetectable by the target domain. In this mode, no active connection will be done between the target domain and the attacker’s machine.

Active Mode:

Perform brute-force attacks to obtain alive subdomains. There are 2 types of brute force. Here there is a risk of getting detected on the target server:

  • Pure Bruteforce: Check subdomains from to (26 + 26^2 + 26^3 = 18278 subdomains) this bruteforce can be disabled with -nb, –no-bruteforce
  • Wordlist based: Use a custom wordlist provided by the user using the flag -w, –wordlist. If no wordlists are specified, this mode won’t be executed.

Note: Make Sure You have Python Installed on your System, as this is a python-based tool. Click to check the Installation process: Python Installation Steps on Linux

Installation of Dome Tool on Kali Linux OS

Step 1: In this step, we will be getting the Dome tool repository from Github.

git clone

Step 2: We have cloned the repository from Github, now we will navigate to the directory in which the python file is situated.

cd Dome

Step 3: You are in the directory of Dome. Now you have to install a dependency of the serenity using the following command.

sudo pip install -r requirements.txt

Step 4: Run the below command to verify the installation and check the help section of the tool.

python3 -h

Working with Dome Tool on Kali Linux OS

Example 1: Perform active and passive scan, show the IP address of each subdomain and make a port scan using top-web-ports. Data will also be written in /the results folder

python3 -m active -d -w wordlists/wordlist.txt -i –top-web-ports -o

In this example, we are performing a simple scan on the domain which will give us the subdomains and the tool will also check the top ports.

We have got the list of subdomains of

Example 2: Perform passive scan in silent mode and write output to files

python3 -m passive -d –silent –output

In this example, we are performing a silent scan without any run-time messages or logs.

Our results are saved in the results directory with various files.

We have displayed the results_geeksforgeeks.html file which shows the list of subdomains.

Example 3: Only Bruteforce with the wordlist

python3 -m active -d -w wordlists/subdomains-5000.txt –no-bruteforce

In this example, we are brute-forcing the subdomain scan by using the wordlist (subdomains-5000.txt).

Example 4: Scan active and passive and perform port scan ONLY in ports 22,80,3306

python3 -m active -d -w wordlists/top1million.txt -p 22,80,3306

In this example, we are checking for the specific ports on the target domain.

We have got the list of open ports and the subdomains.

My Personal Notes arrow_drop_up
Recommended Articles
Page :

Start Your Coding Journey Now!