Skip to content
This repository has been archived by the owner. It is now read-only.

projectdiscovery/dnsprobe

master
Switch branches/tags
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
lib
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Note - This project is discontinued. New updates and fixes will be pushed to dnsx.

dnsprobe

License Go Report Card contributions welcome

DNSProbe 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.

Resources

Features

dnsprobe

  • Simple and Handy utility to query DNS records.

Usage

dnsprobe -h

This will display help for the tool. Here are all the switches it supports.

Flag Description Example
-c Max dns retries (default 1) dnsprobe -c 5
-l List of dns domains (optional) dnsprobe -l domains.txt
-r Request Type A, NS, CNAME, SOA, PTR, MX, TXT, AAAA dnsprobe -r A
-s List of resolvers (optional) dnsprobe -s resolvers.txt
-t Number of concurrent requests to make (default 250) dnsprobe -t 500
-f Output type dnsprobe -f json
-o Output file (optional) dnsprobe -o result.txt

Installation Instructions

From Source

dnsprobe requires go1.13+ to install successfully. Run the following command to get the repo -

GO111MODULE=on go get -v github.com/projectdiscovery/dnsprobe

Running in a Docker Container

  • Clone the repo using git clone https://github.com/projectdiscovery/dnsprobe.git
  • Build your docker container
> docker build -t projectdiscovery/dnsprobe .
  • After building the container using either way, run the following -
> docker run -it projectdiscovery/dnsprobe

For example, to query a list of domains for CNAME record and output the results to your host file system:

> cat domains.txt | docker run -i projectdiscovery/dnsprobe -r CNAME > bugcrowd.txt

Querying host for A record

To query a list of domains, you can pass the list via stdin (it also accepts full URLS, in this case the domain is extracted automatically).

> cat domains.txt | dnsprobe

root@test:~# cat bc.txt | dnsprobe
bounce.bugcrowd.com 192.28.152.174
blog.bugcrowd.com 104.20.4.239
blog.bugcrowd.com 104.20.5.239
www.bugcrowd.com 104.20.5.239
www.bugcrowd.com 104.20.4.239
events.bugcrowd.com 54.84.134.174

Querying host for CNAME record

> dnsprobe -l domains.txt -r CNAME

root@test:~# dnsprobe -l bc.txt -r CNAME
forum.bugcrowd.com bugcrowd.hosted-by-discourse.com.
collateral.bugcrowd.com bugcrowd.outrch.com.
go.bugcrowd.com mkto-ab270028.com.
ww2.bugcrowd.com bugcrowdinc.mktoweb.com.
researcherdocs.bugcrowd.com ssl.readmessl.com.
docs.bugcrowd.com ssl.readmessl.com.

This will run the tool against domains in domains.txt and returns the results. The tool uses the resolvers specified with -s option to perform the queries or default system resolvers.

Querying CNAME records on the Subfinder output

> subfinder -d bugcrowd.com -silent | dnsprobe -r cname

root@b0x:~# subfinder -d bugcrowd.com -silent | dnsprobe -r cname
forum.bugcrowd.com bugcrowd.hosted-by-discourse.com.
docs.bugcrowd.com ssl.readmessl.com.
go.bugcrowd.com mkto-ab270028.com.
ww2.bugcrowd.com bugcrowdinc.mktoweb.com.
researcherdocs.bugcrowd.com ssl.readmessl.com.
collateral.bugcrowd.com bugcrowd.outrch.com.
proxilate.bugcrowd.com proxilate.a.bugcrowd.com.

License

DNSProbe is made with 🖤 by the projectdiscovery team.