tldfinder

module
v0.0.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 15, 2024 License: MIT

README

TLDFinder

FeaturesInstallationUsageRunning tldfinderJoin Discord

A streamlined tool for discovering TLDs, associated domains, and related domain names.

Features

image

  • TLD based DNS lookups (Passive)
  • Reverse domain lookup (Passive)
  • STD IN/OUT and TXT/JSON output

Installation

tldfinder requires Go 1.21 to install successfully. To install, just run the below command or download pre-compiled binary from release page.

go install github.com/projectdiscovery/tldfinder/cmd/tldfinder@latest

Usage

tldfinder -h

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

tldfinder is a tls data gathering and analysis toolkit.

A streamlined tool for discovering TLDs, associated subdomains, and related domain names.

Usage:
  ./tldfinder [flags]

Flags:
INPUT:
   -d, -domain string[]  domain or list of domains for discovery (file or comma separated)

SOURCE:
   -s, -sources string[]           specific sources to use for discovery (-s censys,dnsrepo). Use -ls to display all available sources.
   -es, -exclude-sources string[]  sources to exclude from enumeration (-es censys,dnsrepo)
   -dm, -discovery-mode value      discovery mode (dns,tld,domain) (default dns)
   -all                            use all sources for enumeration (slow)

FILTER:
   -m, -match string[]   domain or list of domain to match (file or comma separated)
   -f, -filter string[]   domain or list of domain to filter (file or comma separated)

RATE-LIMIT:
   -rl, -rate-limit int      maximum number of http requests to send per second (global)
   -rls, -rate-limits value  maximum number of http requests to send per second four providers in key=value format (-rls hackertarget=10/m) (default ["waybackarchive=15/m", "whoisxmlapi=50/s", "whoisxmlapi=30/s"])
   -t int                    number of concurrent goroutines for resolving (-active only) (default 10)

UPDATE:
   -up, -update                 update tldfinder to latest version
   -duc, -disable-update-check  disable automatic tldfinder update check

OUTPUT:
   -o, -output string       file to write output to
   -oJ, -json               write output in JSONL(ines) format
   -oD, -output-dir string  directory to write output (-dL only)
   -cs, -collect-sources    include all sources in the output (-json only)
   -oI, -ip                 include host IP in output (-active only)

CONFIGURATION:
   -config string                flag config file (default "/Users/user/Library/Application Support/tldfinder/config.yaml")
   -pc, -provider-config string  provider config file (default "/Users/user/Library/Application Support/tldfinder/provider-config.yaml")
   -r string[]                   comma separated list of resolvers to use
   -rL, -rlist string            file containing list of resolvers to use
   -nW, -active                  display active domains only
   -proxy string                 http proxy to use with tldfinder
   -ei, -exclude-ip              exclude IPs from the list of domains

DEBUG:
   -silent             show only domains in output
   -version            show version of tldfinder
   -v                  show verbose output
   -nc, -no-color      disable color in output
   -ls, -list-sources  list all available sources
   -stats              report source statistics

OPTIMIZATION:
   -timeout int   seconds to wait before timing out (default 30)
   -max-time int  minutes to wait for enumeration results (default 10)

Running tldfinder

Input for tldfinder

tldfinder requires domain or tld as input for any discovery mode.

io # TLD input
google.io # Domain input (tld will be auto extracted from domain name)

Input can be provided using -domain / -d flag, and multiple values can be provided using comma-separated input.

Example run:

$ tldfinder -d google.goog
 ________   ___  _____         __       
/_  __/ /  / _ \/ __(_)__  ___/ /__ ____
 / / / /__/ // / _// / _ \/ _  / -_) __/
/_/ /____/____/_/ /_/_//_/\_,_/\__/_/ 

      projectdiscovery.io

[INF] Enumerating sub(domains) for "goog" TLD
simulations.endpoints.ingka-cff-simulations-prod.cloud.goog
kf1.endpoints.x-delivery-benchmarking.cloud.goog
banquedeprojets-mcinet-gov-ma.translate.goog
www-pietervreedeplein-nl.translate.goog
www.chwsimpreprod.goog
kubeflow-ver1-2.endpoints.dbce-dswb-sbx-e07f.cloud.goog
app2.r1.testacq.mesaintegrationtesting.off.goog
rcs-nightly.staging.telephony.goog
bookstore.endpoints.pergamon-test-apis.cloud.goog
texaspokerfans.endpoints.diamondonline-dev.cloud.goog
pinterest-com.translate.goog
ext.audit.endpoints.mw-project-ext-179e.cloud.goog
mas-provider-dev-co.endpoints.txd-mas-dev.cloud.goog
ca8ru178nqhhk3h75qn0.us-central1.visionai.goog
cbd0d2028lo7e2iocmdg.us-central1.visionai.goog
1p-na-telecom.rcs.telephony.goog
.....
[INF] Found 3329 domains for goog in 10 seconds 458 milliseconds

Acknowledgements

  • N7WEra for coming up with idea for this project.

tldfinder is made with ❤️ by the projectdiscovery team and distributed under MIT License.

Join Discord

Directories

Path Synopsis
cmd
tldfinder command
internal
runner
Package runner implements the mechanism to drive the domain enumeration process
Package runner implements the mechanism to drive the domain enumeration process
pkg
agent
Package passive provides capability for doing domain enumeration
Package passive provides capability for doing domain enumeration
resolve
Package resolve is used to handle resolving records It also handles wildcard domains and rotating resolvers.
Package resolve is used to handle resolving records It also handles wildcard domains and rotating resolvers.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL