[]()
`xsubfind3r` is a command-line interface (CLI) utility to find domain’s known [subdomains]( “subdomains” ) from curated passive online sources.
## Features
* Fetches domains from curated passive sources to maximize results.
* Supports `stdin` and `stdout` for easy integration into workflows.
* Cross-Platform (Windows, Linux & macOS).
## Installation
### Install release binaries (Without Go Installed)
Visit the [releases page]( “releases page” ) and find the appropriate archive for your operating system and architecture. Download the archive from your browser or copy its URL and retrieve it with `wget` or `curl`:
* …with `wget`:
wget https://github.com/hueristiq/xsubfind3r/releases/download/v/xsubfind3r–linux-amd64.tar.gz
* …or, with `curl`:
curl -OL https://github.com/hueristiq/xsubfind3r/releases/download/v/xsubfind3r–linux-amd64.tar.gz
…then, extract the binary:
tar xf xsubfind3r–linux-amd64.tar.gz
> **TIP:** The above steps, download and extract, can be combined into a single step with this onliner
>
>
> curl -sL https://github.com/hueristiq/xsubfind3r/releases/download/v/xsubfind3r–linux-amd64.tar.gz | tar -xzv
**NOTE:** On [Windows]( “Windows” ) systems, you should be able to double-click the zip archive to extract the `xsubfind3r` executable.
…move the `xsubfind3r` binary to somewhere in your `PATH`. For example, on GNU/Linux and OS X systems:
sudo mv xsubfind3r /usr/local/bin/
**NOTE:** Windows users can follow [How to: Add Tool Locations to the PATH Environment Variable]( “How to: Add Tool Locations to the PATH Environment Variable” ) in order to add `xsubfind3r` to their `PATH`.
### Install source (With Go Installed)
Before you install from source, you need to make sure that Go is installed on your system. You can install Go by following the official instructions for your operating system. For this, we will assume that Go is already installed.
#### `go install …`
go install -v github.com/hueristiq/xsubfind3r/cmd/xsubfind3r@latest
#### `go build …` the development Version
* Clone the repository
git clone https://github.com/hueristiq/xsubfind3r.git
* Build the utility
cd xsubfind3r/cmd/xsubfind3r &&
go build .
* Move the `xsubfind3r` binary to somewhere in your `PATH`. For example, on GNU/Linux and OS X systems:
sudo mv xsubfind3r /usr/local/bin/
**NOTE:** Windows users can follow [How to: Add Tool Locations to the PATH Environment Variable]( “How to: Add Tool Locations to the PATH Environment Variable” ) in order to add `xsubfind3r` to their `PATH`.
**NOTE:** While the development version is a good way to take a peek at `xsubfind3r`’s latest features before they get released, be aware that it may have bugs. Officially released versions will generally be more stable.
## Post Installation
`xsubfind3r` will work right after [installation]( “installation” ). However, **[BeVigil]( “BeVigil” )**, **[Chaos]( “Chaos” )**, **[Fullhunt]( “Fullhunt” )**, **[Github]( “Github” )**, **[Intelligence X]( “Intelligence X” )** and **[Shodan]( “Shodan” )** require API keys to work, **[URLScan]( “URLScan” )** supports API key but not required. The API keys are stored in the `$HOME/.hueristiq/xsubfind3r/config.yaml` file – created upon first run – and uses the YAML format. Multiple API keys can be specified for each of these source from which one of them will be used.
Example `config.yaml`:
version: 0.3.0
sources:
– alienvault
– anubis
– bevigil
– chaos
– commoncrawl
– crtsh
– fullhunt
– github
– hackertarget
– intelx
– shodan
– urlscan
– wayback
keys:
bevigil:
– awA5nvpKU3N8ygkZ
chaos:
– d23a554bbc1aabb208c9acfbd2dd41ce7fc9db39asdsd54bbc1aabb208c9acfb
fullhunt:
– 0d9652ce-516c-4315-b589-9b241ee6dc24
github:
– d23a554bbc1aabb208c9acfbd2dd41ce7fc9db39
– asdsd54bbc1aabb208c9acfbd2dd41ce7fc9db39
intelx:
– 2.intelx.io:00000000-0000-0000-0000-000000000000
shodan:
– AAAAClP1bJJSRMEYJazgwhJKrggRwKA
urlscan:
– d4c85d34-e425-446e-d4ab-f5a3412acbe8
## Usage
To display help message for `xsubfind3r` use the `-h` flag:
xsubfind3r -h
help message:
_ __ _ _ _____
__ _____ _ _| |__ / _(_)_ __ __| |___ / _ __
/ / __| | | | ‘_ | |_| | ‘_ / _` | |_ | ‘__|
> “directory” ) path
-v, –verbosity string debug, info, warning, error, fatal or silent (default: info)
CONFIGURATION:
-c, –configuration string configuration file path (default: ~/.hueristiq/xsubfind3r/config.yaml)
## Contribution
[Issues]( “Issues” ) and [Pull Requests]( “Pull Requests” ) are welcome! **Check out the [contribution guidelines]( “contribution guidelines” ).**
## Licensing
This utility is [distributed]( “distributed” ) under the [MIT license]( “MIT license” ).
**[Download Xsubfind3R]( “Download Xsubfind3R” )**Read More

