Urlhunter is a recon tool that allows searching on URLs that are exposed via shortener services such as bit.ly and goo.gl. The project is written in Go.
How?
A group named URLTeam (kudos to them) are brute forcing the URL shortener services and publishing matched results on a daily basis. urlhunter downloads their collections and lets you analyze them.
Installation
- From Binary
You can download the pre-built binaries from the releases page and run. For example:
tar xzvf urlhunter_0.1.0_Linux_amd64.tar.gz
./urlhunter --help
- From Source
- Install Go on your system
- Run:
go get -u github.com/utkusen/urlhunter
Note For The Windows Users: urlhunter uses XZ Utils
which is pre-installed on Linux and macOS systems. For Windows systems, you need to download it from https://tukaani.org/xz/
Usage
- urlhunter requires 3 parameters to run:
-keywords
,-date
and-o
. - For example:
urlhunter -keywords keywords.txt -date 2020-11-20 -o out.txt
- -keywords
- You need to specify the txt file that contains keywords to search on URLs. Keywords must be written line by line. You have three different ways to specify keywords:
- Single Keyword: urlhunter will search the given keyword as a substring. For example:
acme.com
keyword will both matchhttps://acme.com/blabla
andhttps://another.com/?referrer=acme.com
- Multiple Keywords: urlhunter will search the given keywords with an
AND
logic. Which means, a URL must include all the provided keywords. Keywords must be separated with,
character. For example:acme.com,admin
will matchhttps://acme.com/secret/adminpanel
but won’t matchhttps://acme.com/somethingelse
- Regex Values: urlhunter will search for the given regex value. In the keyword file, the line that contains a regular expression formula must start with
regex
string. The format is:regex REGEXFORMULA
. For example:regex 1\d{10}
will matchhttps://example.com/index.php?id=12938454312
but won’t matchhttps://example.com/index.php?id=abc223
- -date
- urlhunter downloads the archive files of the given date(s). You have three different ways to specify the date:
- Latest: urlhunter will download the latest archive.
-date latest
- Single Date: urlhunter will download the archive of the given date. Date format is YYYY-MM-DD.
- For example:
-date 2020-11-20
- For example:
- Date Range: urlhunter will download all the archives between given start and end dates.
- For example:
-date 2020-11-10:2020-11-20
- For example:
- -o
- You can specify the output file with
-o
parameter. For example-o out.txt
- You can specify the output file with
Demonstration Video