root@thehacksparrow:~/writeups$ SYSTEM ONLINE
root@sparrow:~/writeups$ cat httpx.md
// recon

httpx

21 Jul 2026 · 5 min read
httpx is the HTTP toolkit from ProjectDiscovery: it takes a list of hosts or URLs and tells you, fast and in parallel, which ones respond over HTTP/HTTPS. Not to be confused with the Python library of the same name. It is the standard tool for turning a list of subdomains into a set of live web endpoints you can keep working on.

The point of httpx is that a single pass can probe each host and enrich it at the same time with status code, title, technologies, IP and more, without running separate tools. Understanding its filters (-mc, -fc, -mr) is what turns thousands of results into a short, actionable list, which is why it fits so well chained after subfinder.

1. Beginner level — probing and status

HTTPX cheat sheet — Beginner
CommandWhat it does
httpx -l hosts.txtTests which hosts have a live website
httpx -u https://<t>A single target
httpx -l hosts.txt -silentOnly the live URLs
httpx -l hosts.txt -scShows the status code
httpx -l hosts.txt -titleExtracts the <title>
httpx -l hosts.txt -tdDetects technologies (Wappalyzer)
httpx -l hosts.txt -ipShows the IP
httpx -l hosts.txt -clShows the content-length
httpx -l hosts.txt -o live.txtSaves the live URLs
httpx -l hosts.txt -json -o out.jsonOutput in JSON
httpx -l hosts.txt -ports 80,443,8080Tests several ports
httpx -l hosts.txt -mc 200Filters by code 200
httpx -versionShows the version
httpx -l hosts.txt -web-serverShows the server (Server header)

2. Advanced level — recon, favicon and screenshots

HTTPX cheat sheet — Advanced
CommandWhat it does
httpx -l hosts.txt -sc -title -td -ip -clAll the info at a glance
httpx -l hosts.txt -fc 404Filters out the 404s
httpx -l hosts.txt -mc 200,301,302Several codes
httpx -l hosts.txt -path /admin -mc 200Tests a specific path
httpx -l hosts.txt -x GET,POSTSeveral methods
httpx -l hosts.txt -H 'X-Forwarded-For: 127.0.0.1'Custom headers
httpx -l hosts.txt -faviconFavicon hash (fingerprint)
httpx -l hosts.txt -jarmJARM TLS fingerprint
httpx -l hosts.txt -proxy http://127.0.0.1:8080Routes through Burp
httpx -l hosts.txt -screenshotScreenshot of each website
httpx -l hosts.txt -rl 100 -threads 50Rate and concurrency tuning
httpx -l hosts.txt -locationFollows and shows redirects
subfinder -d dom.com | httpx -sc -titleChains subfinder + httpx
httpx -l hosts.txt -mr 'admin'Filters by regex in the response

3. Details people miss

  • ProjectDiscovery's httpx is not Python's httpx library. If typing httpx throws a Python error, you have the library installed instead of the tool; install ProjectDiscovery's (for example with go install) or use the correct path.
  • With -silent you get only the live URLs, ideal for chaining in a pipe; without it, the output carries banners and colors that pollute the next command.
  • Filters split into match and filter: -mc lets only those codes through and -fc discards them. Do not mix them carelessly, because a -fc 404 plus a -mc 200 can leave you with no results without it being obvious.
  • -screenshot spins up a headless browser under the hood, so it needs Chrome/Chromium available and uses far more CPU and time; save it for the already filtered set of live sites, not the full initial list.
  • Raise -threads and -rl sensibly: too much concurrency against a single target trips WAFs and rate limits, and it also skews your results with timeouts that look like dead hosts.

Responsible use

These commands are for systems you own or have explicit written authorisation to test (labs, CTFs, contracted engagements). Using them against third-party infrastructure without permission is illegal in most countries.