← retour aux outils back to tools

# httpx

Boîte à outils HTTP polyvalente et rapide. Sonde des URLs pour leur statut, titre, stack technique, captures d'écran et redirections. Outil central du pipeline ProjectDiscovery. Fast multi-purpose HTTP toolkit. Probes URLs for status, title, tech stack, screenshots, and redirects. Core tool in the ProjectDiscovery pipeline.

↗ https://github.com/projectdiscovery/httpx

## Overview

httpx is a fast, flexible HTTP toolkit from ProjectDiscovery. It probes lists of hosts/URLs for live web servers, gathers metadata (title, status code, tech, content length, redirect chain), and integrates seamlessly with subfinder, naabu, and nuclei.

## Basic Probing

Probe a list of hosts for live web servers

    cat hosts.txt | httpx

Probe with scheme

    echo "target.com" | httpx

Probe multiple ports

    cat hosts.txt | httpx -ports 80,443,8080,8443,8888

Follow redirects

    cat hosts.txt | httpx -follow-redirects

Silent output (URLs only, for piping)

    cat hosts.txt | httpx -silent

## Information Gathering

Show status code, title, content length, server

    cat hosts.txt | httpx -status-code -title -content-length -server

Show technology (Wappalyzer-like detection)

    cat hosts.txt | httpx -tech-detect

Show IP address

    cat hosts.txt | httpx -ip

Show HTTP method allowed

    cat hosts.txt | httpx -method GET

Resolve CNAME/IP chain

    cat hosts.txt | httpx -cname

Show response body hash

    cat hosts.txt | httpx -hash sha256

All common metadata at once

    cat hosts.txt | httpx -status-code -title -content-length -server -tech-detect -ip

## Pipeline Integration

Subfinder → httpx → nuclei (full chain)

    subfinder -d target.com -silent | httpx -silent | nuclei -t technologies/

Port scan → probe for HTTP

    naabu -host target.com -silent | httpx -silent

Probe specific URLs

    cat urls.txt | httpx -match-code 200 -title

Find admin panels

    cat hosts.txt | httpx -path /admin -match-code 200

Check multiple paths

    cat hosts.txt | httpx -path /admin,/login,/phpmyadmin -match-code 200

## Filtering

Match specific status code

    cat hosts.txt | httpx -mc 200

Match multiple status codes

    cat hosts.txt | httpx -mc 200,301,302

Filter out status codes

    cat hosts.txt | httpx -fc 404,403

Match response containing string

    cat hosts.txt | httpx -ms "admin panel"

Match content length

    cat hosts.txt | httpx -ml 1024-5000

Match response header

    cat hosts.txt | httpx -mh "Server: Apache"

## Screenshots

Take screenshots of web pages

    cat hosts.txt | httpx -screenshot -srd /tmp/screenshots/

Screenshot with specific resolution

    cat hosts.txt | httpx -screenshot -system-chrome

## Output

Save to file

    cat hosts.txt | httpx -o live_hosts.txt

JSON output (detailed)

    cat hosts.txt | httpx -json -o results.json

CSV output

    cat hosts.txt | httpx -csv -o results.csv

## Tips

- Always use `-silent` when piping to other tools to suppress the banner
- `httpx -random-agent` rotates User-Agent strings to avoid fingerprinting
- Use `-threads 50` to speed up probing on large lists
- `httpx -favicon` computes favicon hashes for Shodan correlation

Help / Man page

    httpx [flags]

    Input:
      -l file          Input file of hosts/URLs
      -u host          Single target

    Probing:
      -ports list      Ports to probe (default: 80,443)
      -path path       Probe specific path
      -follow-redirects  Follow redirects

    Output:
      -status-code     Show status code
      -title           Show page title
      -content-length  Show content length
      -server          Show server header
      -tech-detect     Show detected technologies
      -ip              Show resolved IP
      -cname           Show CNAME
      -json            JSON output
      -csv             CSV output
      -o file          Output file
      -silent          Silent mode (URLs only)

    Filtering:
      -mc codes        Match status codes
      -fc codes        Filter status codes
      -ms string       Match response body
      -ml range        Match content length

    Performance:
      -threads N       Concurrent threads (default: 50)
      -timeout N       Request timeout
      -rate-limit N    Requests per second
      -random-agent    Random User-Agent

## Vue d’ensemble

httpx est une boîte à outils HTTP rapide et flexible de ProjectDiscovery. Il sonde des listes d’hôtes/URLs à la recherche de serveurs web actifs, récupère des métadonnées (titre, code de statut, technologies, longueur de contenu, chaîne de redirection), et s’intègre parfaitement avec subfinder, naabu et nuclei.

## Sondage de base

    # Sonder une liste d'hôtes à la recherche de serveurs web actifs
    cat hosts.txt | httpx

    # Sonder avec le schéma
    echo "target.com" | httpx

    # Sonder plusieurs ports
    cat hosts.txt | httpx -ports 80,443,8080,8443,8888

    # Suivre les redirections
    cat hosts.txt | httpx -follow-redirects

    # Sortie silencieuse (URLs uniquement, pour le pipe)
    cat hosts.txt | httpx -silent

## Collecte d’informations

    # Afficher le code de statut, le titre, la longueur de contenu, le serveur
    cat hosts.txt | httpx -status-code -title -content-length -server

    # Afficher la technologie (détection façon Wappalyzer)
    cat hosts.txt | httpx -tech-detect

    # Afficher l'adresse IP
    cat hosts.txt | httpx -ip

    # Afficher la méthode HTTP autorisée
    cat hosts.txt | httpx -method GET

    # Résoudre la chaîne CNAME/IP
    cat hosts.txt | httpx -cname

    # Afficher le hash du corps de la réponse
    cat hosts.txt | httpx -hash sha256

    # Toutes les métadonnées courantes en une fois
    cat hosts.txt | httpx -status-code -title -content-length -server -tech-detect -ip

## Intégration en pipeline

    # Subfinder -> httpx -> nuclei (chaîne complète)
    subfinder -d target.com -silent | httpx -silent | nuclei -t technologies/

    # Scan de ports -> sondage HTTP
    naabu -host target.com -silent | httpx -silent

    # Sonder des URLs spécifiques
    cat urls.txt | httpx -match-code 200 -title

    # Trouver des panneaux d'administration
    cat hosts.txt | httpx -path /admin -match-code 200

    # Vérifier plusieurs chemins
    cat hosts.txt | httpx -path /admin,/login,/phpmyadmin -match-code 200

## Filtrage

    # Faire correspondre un code de statut spécifique
    cat hosts.txt | httpx -mc 200

    # Faire correspondre plusieurs codes de statut
    cat hosts.txt | httpx -mc 200,301,302

    # Filtrer certains codes de statut
    cat hosts.txt | httpx -fc 404,403

    # Faire correspondre une réponse contenant une chaîne
    cat hosts.txt | httpx -ms "admin panel"

    # Faire correspondre une longueur de contenu
    cat hosts.txt | httpx -ml 1024-5000

    # Faire correspondre un en-tête de réponse
    cat hosts.txt | httpx -mh "Server: Apache"

## Captures d’écran

    # Prendre des captures d'écran des pages web
    cat hosts.txt | httpx -screenshot -srd /tmp/screenshots/

    # Capture avec une résolution spécifique
    cat hosts.txt | httpx -screenshot -system-chrome

## Sortie

    # Sauvegarder dans un fichier
    cat hosts.txt | httpx -o live_hosts.txt

    # Sortie JSON (détaillée)
    cat hosts.txt | httpx -json -o results.json

    # Sortie CSV
    cat hosts.txt | httpx -csv -o results.csv

## Conseils

- Toujours utiliser `-silent` en pipant vers d’autres outils pour supprimer la bannière
- `httpx -random-agent` fait tourner les chaînes User-Agent pour éviter le fingerprinting
- Utiliser `-threads 50` pour accélérer le sondage sur de grandes listes
- `httpx -favicon` calcule les hashs de favicon pour la corrélation Shodan

Aide / Page de manuel

    httpx [flags]

    Input:
      -l file          Input file of hosts/URLs
      -u host          Single target

    Probing:
      -ports list      Ports to probe (default: 80,443)
      -path path       Probe specific path
      -follow-redirects  Follow redirects

    Output:
      -status-code     Show status code
      -title           Show page title
      -content-length  Show content length
      -server          Show server header
      -tech-detect     Show detected technologies
      -ip              Show resolved IP
      -cname           Show CNAME
      -json            JSON output
      -csv             CSV output
      -o file          Output file
      -silent          Silent mode (URLs only)

    Filtering:
      -mc codes        Match status codes
      -fc codes        Filter status codes
      -ms string       Match response body
      -ml range        Match content length

    Performance:
      -threads N       Concurrent threads (default: 50)
      -timeout N       Request timeout
      -rate-limit N    Requests per second
      -random-agent    Random User-Agent