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