Script http-vhosts
Script types:
portrule
Categories:
discovery, intrusive
Download: https://svn.nmap.org/nmap/scripts/http-vhosts.nse
Script Summary
Searches for web virtual hostnames by making a large number of HEAD requests against http servers using common hostnames.
Each HEAD request provides a different
Host
header. The hostnames come from a built-in default
list. Shows the names that return a document. Also shows the location of
redirections.
The domain can be given as the http-vhosts.domain
argument or
deduced from the target's name. For example when scanning www.example.com,
various names of the form <name>.example.com are tried.
Script Arguments
- http-vhosts.filelist
file with the vhosts to try. Default
nselib/data/vhosts-default.lst
- http-vhosts.collapse
The limit to start collapsing results by status code. Default
20
- http-vhosts.path
The path to try to retrieve. Default
/
.- http-vhosts.domain
The domain that hostnames will be prepended to, for example
example.com
yields www.example.com, www2.example.com, etc. If not provided, a guess is made based on the hostname.- slaxml.debug
See the documentation for the slaxml library.
- http.host, http.max-body-size, http.max-cache-size, http.max-pipeline, http.pipeline, http.truncated-ok, http.useragent
See the documentation for the http library.
- smbdomain, smbhash, smbnoguest, smbpassword, smbtype, smbusername
See the documentation for the smbauth library.
Example Usage
nmap --script http-vhosts -p 80,8080,443 <target>
Script Output
PORT STATE SERVICE REASON 80/tcp open http syn-ack | http-vhosts: | example.com: 301 -> http://www.example.com/ | www.example.com: 200 | docs.example.com: 302 -> https://www.example.com/docs/ |_images.example.com: 200
Requires
Author:
License: Same as Nmap--See https://nmap.org/book/man-legal.html
action
- action (host, port)
-
Script action
Parameters
- host
- table
- port
- table