enumerating-HTTP-HTTPS
枚举 HTTP 和 HTTPS
端口 80 和 443 通常分配给使用 HTTP 和 HTTPS 协议(分别)的主机 Web 服务。这些协议用于 Web 服务器和 Web 浏览器之间通过 OSI 模型的应用层 进行通信。
信息收集
目标扫描中出现的端口 80 和 443 表明该目标可能托管 Web 服务。调查这些端口是收集目标信息的好方法。你可以找到很多关于他们的架构、他们使用的服务/应用程序等的信息。
通过航站楼
如果目标可能不稳定,或者您想留下更少的痕迹,则可以从使用 curl 开始。通过curl,你可以获得整个网站的HTML。您还可以使用 -I 命令来请求标头,该命令比较隐蔽,因为来自目标的响应携带的数据较少。
1 | # Headers only: using wordcount command: |
您还可以通过设置 User-Agent 标头来进一步隐藏自己。使用 curl 时,发送到目标的请求的默认 User-Agent 为 "curl/7.88.1"。
1 | curl -I http://10.0.3.5:80 --verbose |
您可以将其设置为不太明显的值,例如 Mozilla/5.0 (platform; rv:geckoversion) Gecko/geckotrail Firefox/firefoxversion,使用 -H 标志来设置标头。
1 | curl -I -H "User-Agent: Mozilla/5.0 (platform; rv:geckoversion) Gecko/geckotrail Firefox/firefoxversion" http://10.0.3.5:80 --verbose |
通过浏览器
由于这些端口托管 Web 服务,因此可以使用 Web 浏览器访问它们。您可以通过将目标的 IP 地址放入浏览器的搜索栏中,并在末尾附加 :80 或 :443 来完成此操作:
1 | http://10.0.3.5:80 |
或者使用终端上的浏览器:
1 | firefox http://10.0.3.5:80 |


- Kioptrix 虚拟机
漏洞扫描(w/ nikto)
调查结果
卫生
通过调查这些端口,我们可以看到目标意外留下的默认页面。这表明“卫生条件差”,可以作为一项发现包含在渗透测试报告中。
###信息公开
HTML 中包含的 URL 还可以告诉我们有关目标的更多信息。例如,单击“DocumentRoot”链接会将我们带到网站的另一部分 http://10.0.3.5:80/manual/mod/core.html#document,我们会在其中看到 404 响应错误代码。

此页面不仅告诉我们这个可能曾经有效的链接现在已损坏(卫生状况不佳),我们还看到Apache 版本控制和目标的主机名(在本例中为 localhost)。该信息被认为不适合我们,可以包含在报告中的“信息披露”项下。
[!资源]
- MDN:用户代理字符串参考
man curl
[!我以前的笔记(在文本中链接)]