Find every historical URL ever associated with a domain for a bug bounty or security assessment.
Filter discovered URLs by HTTP status code, file type, or date range to focus on relevant pages.
Export discovered URLs as JSON Lines for feeding into other security tooling.
Route lookups through an HTTP or SOCKS5 proxy such as Tor while gathering URLs.
| mhdashikofficial/furl | alexrosbach/replibook | arlandaren/proagents | |
|---|---|---|---|
| Stars | 25 | 25 | 25 |
| Language | Python | Python | Python |
| Setup difficulty | easy | easy | easy |
| Complexity | 2/5 | 2/5 | 1/5 |
| Audience | developer | ops devops | vibe coder |
Figures from each repo's GitHub metadata at analysis time.
Just needs Python 3.8+, git, and a pip install, no external accounts or API keys required.
furl is a command line tool written in Python that finds every publicly known web address, or URL, that has ever been associated with a given domain name. Instead of crawling a website itself, it asks four outside services that already keep historical records: the Wayback Machine, AlienVault OTX, Common Crawl, and URLScan.io. It pulls the results from all four at once, using async networking so it can wait on several requests in parallel, then removes duplicate URLs before showing them to you. The tool is built for people who do security work, such as bug bounty hunters and penetration testers, who often need a full picture of every page and endpoint a target domain has ever exposed, including old or forgotten ones that still show up in historical archives. It is a Python rewrite of an existing tool called gau, aiming to match its command options closely while adding installation through pip. Once installed, you run it by typing the tool's name followed by a domain, and it prints matching URLs to your screen or to a file. You can narrow the results by choosing which of the four sources to use, filtering by HTTP status code, filtering by file type such as images or fonts you want to skip, or limiting results to a date range. Output can be plain text or structured JSON, and the tool can also route its requests through an HTTP or SOCKS5 proxy. Settings you use often can be stored in a small configuration file so you do not have to type them every time. Setup requires Python 3.8 or newer and git, and the README gives separate install steps for Ubuntu, Fedora, Arch Linux, Windows, and macOS, generally involving creating a virtual environment and installing the package with pip.
furl is a Python command line tool that gathers every historically known URL for a domain from the Wayback Machine, AlienVault OTX, Common Crawl, and URLScan.io.
Mainly Python. The stack also includes Python, aiohttp, asyncio.
Setup difficulty is rated easy, with roughly 5min to a first successful run.
Mainly developer.
This repo across BitVibe Labs
Don't trust strangers blindly. Verify against the repo.