← retour aux outils back to tools

# HTTrack

Copieur de site web hors ligne qui aspire la structure, les pages et les ressources d'un site entier pour navigation et analyse hors ligne. Offline website copier that mirrors an entire site's structure, pages, and assets for offline browsing and analysis.

↗ https://www.httrack.com

## Overview

HTTrack recursively downloads a website — HTML, images, CSS, JS, and linked resources — and rebuilds the relative link structure locally so it can be browsed offline. During recon it’s useful for grabbing a full snapshot of a target’s public site to grep through at leisure (comments, old paths, JS bundles, exposed endpoints) without hammering the live server with repeated requests.

## Common Usage

Mirror a site into ./target-site/

    httrack https://target.com -O ./target-site

Limit depth and stay on the same domain

    httrack https://target.com -O ./target-site "+*.target.com/*" -r3

Throttle requests to be polite / avoid tripping WAF rate limits

    httrack https://target.com -O ./target-site --sockets=4 -%c500

Resume an interrupted mirror

    httrack --continue -O ./target-site

Interactive wizard mode

    httrack

## Post-mirror analysis

Grep the mirrored JS for interesting endpoints/keys

    grep -rEi "api[_-]?key|/api/|token" ./target-site --include=*.js

Find all unique links/paths discovered

    grep -roE 'href="[^"]+"' ./target-site | sort -u

## Notes

- Respect `robots.txt` unless the engagement scope explicitly says otherwise — HTTrack honors it by default (`-s0` disables that).
- Large sites can generate a lot of traffic fast; use `-%c` and `--sockets` to throttle.
- Good complement to passive recon tools like `waybackurls` for finding content no longer linked live.

Help / Man page

    httrack <URLs> -O <output_path> [options]

      -O <path>          Output/mirror directory
      -r<N>              Set recursion depth (default: unlimited)
      -%c<N>             Max simultaneous connections
      --sockets=<N>       Max sockets
      -s0                 Ignore robots.txt
      -c<N>              Number of connections
      -F "<user-agent>"  Set custom User-Agent
      --continue          Resume an interrupted mirror
      -W                  Wizard/interactive mode
      -v                  Verbose output
      +<pattern>          Include filter (wildcard)
      -<pattern>          Exclude filter (wildcard)

## Vue d’ensemble

HTTrack télécharge récursivement un site web (HTML, images, CSS, JS et ressources liées) et reconstruit la structure de liens relatifs en local afin qu’il puisse être navigué hors ligne. En phase de reconnaissance, il est utile pour récupérer un instantané complet du site public d’une cible et le grepper à loisir (commentaires, anciens chemins, bundles JS, endpoints exposés) sans marteler le serveur en production avec des requêtes répétées.

## Utilisation courante

    # Aspirer un site dans ./target-site/
    httrack https://target.com -O ./target-site

    # Limiter la profondeur et rester sur le même domaine
    httrack https://target.com -O ./target-site "+*.target.com/*" -r3

    # Ralentir les requêtes pour rester poli / éviter de déclencher les limites de débit d'un WAF
    httrack https://target.com -O ./target-site --sockets=4 -%c500

    # Reprendre une aspiration interrompue
    httrack --continue -O ./target-site

    # Mode assistant interactif
    httrack

## Analyse post-aspiration

    # Grepper le JS aspiré pour des endpoints/clés intéressants
    grep -rEi "api[_-]?key|/api/|token" ./target-site --include=*.js

    # Trouver tous les liens/chemins uniques découverts
    grep -roE 'href="[^"]+"' ./target-site | sort -u

## Notes

- Respecter `robots.txt` sauf si le périmètre de la mission le stipule explicitement autrement : HTTrack le respecte par défaut (`-s0` désactive ce comportement).
- Les gros sites peuvent générer beaucoup de trafic rapidement ; utiliser `-%c` et `--sockets` pour ralentir.
- Bon complément aux outils de reconnaissance passive comme `waybackurls` pour trouver du contenu qui n’est plus lié en direct.

Aide / Page de manuel

    httrack <URLs> -O <output_path> [options]

      -O <path>          Output/mirror directory
      -r<N>              Set recursion depth (default: unlimited)
      -%c<N>             Max simultaneous connections
      --sockets=<N>       Max sockets
      -s0                 Ignore robots.txt
      -c<N>              Number of connections
      -F "<user-agent>"  Set custom User-Agent
      --continue          Resume an interrupted mirror
      -W                  Wizard/interactive mode
      -v                  Verbose output
      +<pattern>          Include filter (wildcard)
      -<pattern>          Exclude filter (wildcard)