Knock – Tool Designed To Enumerate Subdomains

Knock is a python tool designed to enumerate subdomains on a target domain through a wordlist.

It is designed to scan for DNS zone transfer and to try to bypass the wildcard DNS record automatically if it is enabled.

Now knockpy supports queries to VirusTotal subdomains, you can setting the API_KEY within the config.json file.

$ knockpy

If you want to save full log like this one just type:

$ knockpy –json

Also Read:DjangoHunter : Tool To Identify Incorrectly Configured Django Applications

Knock Install

  • Dnspython

$ sudo apt-get install python-dnspython

  • Installing

$ git clone
$ cd knock
$ nano knockpy/config.json <- set your virustotal API_KEY
$ sudo python install

Note : It’s recommended to use Google DNS: and

  • Knockpy arguments

$ knockpy -h
usage: knockpy [-h] [-v] [-w WORDLIST] [-r] [-c] [-j] domain
knock subdomain scan
knockpy v.4.1
Author: Gianni ‘guelfoweb’ Amato
positional arguments:
domain target to scan, like
optional arguments:
-h, –help show this help message and exit
-v, –version show program’s version number and exit
-w WORDLIST specific path to wordlist file
-r, –resolve resolve ip or domain name
-c, –csv save output in csv
-f, –csvfields add fields name to the first row of csv output file
-j, –json export full report in JSON
knockpy -w wordlist.txt
knockpy -r or IP
knockpy -c

Note : For virustotal subdomains support you can setting your API_KEY in the config.json file.

Credit: Gianni ‘guelfoweb’ Amato