Skip to content

Virtual Hosts · passage 4 of 4

Fingerprinting VHOSTs

1 code block · Virtual Hosts/README.md

For testing systems you own or are authorised to test, and for defending them. Nothing here is run by this page.

Open this passage on GitHub

Setting `Host` to other known or guessed domains may give **different responses**.

curl -H "Host: admin.example.com" http://10.10.10.10/

Common indicators that you're hitting a different VHOST: * Different HTML titles, meta descriptions, or brand names * Different HTTP Content-Length / body size * Different status codes (200 vs. 403 or redirect) * Custom error pages * Redirect chains to completely different domains * Certificates with Subject Alternative Names listing other domains **NOTE**: Leverage DNS history records to identify old IP addresses previously associated with your target’s domains. Then test (or "spray") the current domain names against those IPs. If successful, this can reveal the server’s real address, allowing you to bypass protections like Cloudflare or other WAFs by interacting directly with the origin server.

Source: Virtual Hosts/README.md in PayloadsAllTheThings. From PayloadsAllTheThings by Swissky and contributors. MIT License, Copyright (c) 2019 Swissky.

Every one of the 4 is a mark on the map. Named now: 1 to 4, reading order first.

  1. Virtual Host§ 1text · README.md
  2. Tools§ 2text · README.md
  3. Methodology§ 34 code blocks · README.md
  4. Fingerprinting VHOSTs§ 41 code block · README.md

Zoom in on the map and the dots under the middle of it are named where they are.

Data as of 2026-11-15. CVE List through 2026-11-15 · EPSS of 2026-11-15 · CISA KEV checked 2026-11-15. Source: PayloadsAllTheThings by Swissky and contributors, MIT License. For authorised testing only.