← retour aux outils back to tools

# gau (getallurls)

Récupère les URLs connues d'un domaine depuis AlienVault OTX, la Wayback Machine, Common Crawl et URLScan pour une découverte passive rapide de endpoints. Fetches known URLs for a domain from AlienVault OTX, the Wayback Machine, Common Crawl, and URLScan for fast passive endpoint discovery.

↗ https://github.com/lc/gau

## Overview

gau (getallurls) pulls every URL an archive provider has ever seen for a given domain — no active requests to the target are made. It’s a fast first step in web recon for surfacing forgotten endpoints, parameters, JS files, and old API routes that active crawlers would never find on a fresh scan.

## Common Usage

All known URLs for a domain

    gau example.com

Include subdomains

    gau --subs example.com

Read domains from a file (many domains at once)

    cat domains.txt | gau

Only pull from specific providers

    gau --providers wayback,otx example.com

Filter to a specific status code (requires —verbose for live checks)

    gau example.com | gau-filter --status 200

## Filtering & Chaining

Grep for interesting file extensions

    gau example.com | grep -E '\.(js|json|xml|env)$'

Find URLs with parameters (candidates for fuzzing/injection testing)

    gau example.com | grep '=' | sort -u

Feed into httpx to check which are still alive

    gau example.com | httpx -silent -mc 200

Feed into gf patterns to spot XSS/SQLi candidate params

    gau example.com | gf xss

Exclude noisy extensions (images, fonts, css)

    gau example.com --blacklist png,jpg,gif,css,woff

## Tips

- Combine with `waybackurls` and `katana` for broader coverage — each archive has gaps the others fill
- `--fc` and `--mc` (from newer versions) filter output by response code without a second tool
- Pipe straight into `uro` to dedupe near-identical URLs before further processing
- Passive only — safe to run against scope with no active-testing restrictions

Help / Man page

    gau [options] [domain...]

    OPTIONS:
      --subs                Include subdomains of the target domain
      --providers <list>    Comma-separated providers: wayback,commoncrawl,otx,urlscan
      --blacklist <exts>    Skip URLs with given extensions
      --fc <codes>          Filter out URLs with these status codes (requires fetching)
      --mc <codes>          Only include URLs with these status codes
      --from <date>         Only fetch URLs from Wayback after this date (YYYYMM)
      --to <date>           Only fetch URLs from Wayback before this date (YYYYMM)
      --json                Output as JSON
      --o <file>            Write output to file
      --threads <n>         Number of concurrent workers
      --verbose             Show fetch progress and errors

      Reads domains from stdin if none given as arguments.

## Vue d’ensemble

gau (getallurls) récupère toutes les URLs qu’un fournisseur d’archives a jamais vues pour un domaine donné : aucune requête active n’est envoyée à la cible. C’est une première étape rapide en recon web pour faire remonter des endpoints oubliés, des paramètres, des fichiers JS et de vieilles routes d’API qu’un crawler actif ne trouverait jamais lors d’un scan neuf.

## Utilisation courante

    # Toutes les URLs connues d'un domaine
    gau example.com

    # Inclure les sous-domaines
    gau --subs example.com

    # Lire les domaines depuis un fichier (plusieurs domaines à la fois)
    cat domains.txt | gau

    # Ne récupérer que depuis des fournisseurs spécifiques
    gau --providers wayback,otx example.com

    # Filtrer sur un code de statut spécifique (nécessite --verbose pour les vérifications en direct)
    gau example.com | gau-filter --status 200

## Filtrage et chaînage

    # Grep sur des extensions de fichiers intéressantes
    gau example.com | grep -E '\.(js|json|xml|env)$'

    # Trouver les URLs avec paramètres (candidates pour fuzzing/tests d'injection)
    gau example.com | grep '=' | sort -u

    # Envoyer dans httpx pour vérifier lesquelles sont toujours actives
    gau example.com | httpx -silent -mc 200

    # Envoyer dans des patterns gf pour repérer des paramètres candidats à XSS/SQLi
    gau example.com | gf xss

    # Exclure les extensions bruyantes (images, fonts, css)
    gau example.com --blacklist png,jpg,gif,css,woff

## Conseils

- Combiner avec `waybackurls` et `katana` pour une couverture plus large : chaque archive a des lacunes que les autres comblent
- `--fc` et `--mc` (des versions plus récentes) filtrent la sortie par code de réponse sans outil secondaire
- Envoyer directement dans `uro` pour dédupliquer les URLs quasi-identiques avant traitement ultérieur
- Purement passif : sûr à lancer contre un périmètre sans restriction de tests actifs

Aide / Page de manuel

    gau [options] [domain...]

    OPTIONS:
      --subs                Include subdomains of the target domain
      --providers <list>    Comma-separated providers: wayback,commoncrawl,otx,urlscan
      --blacklist <exts>    Skip URLs with given extensions
      --fc <codes>          Filter out URLs with these status codes (requires fetching)
      --mc <codes>          Only include URLs with these status codes
      --from <date>         Only fetch URLs from Wayback after this date (YYYYMM)
      --to <date>           Only fetch URLs from Wayback before this date (YYYYMM)
      --json                Output as JSON
      --o <file>            Write output to file
      --threads <n>         Number of concurrent workers
      --verbose             Show fetch progress and errors

      Reads domains from stdin if none given as arguments.