Web 信息收集与拦截代理

通过目录爆破和虚拟主机枚举发现隐藏的 Web 资产。掌握 HTTP 拦截技术以分析原始请求,并使用命令行工具与 REST API 进行交互。

网络安全工程师网络安全NmapLinux

💡 本教程由 AI 辅助翻译自英文原版。如需查看原文,您可以 切换至英文原版

简介

Web 应用暴露的内容远不止浏览器中可见的链接。未链接的目录、基于名称的虚拟主机、未记录的参数和 API 路由都可能扩大攻击面。本课程将带你发现这些元素,并检查访问它们时使用的 HTTP 请求。

你将使用 ffuf、Gobuster、curl 和 jq 对本地目标进行操作,从内容枚举逐步过渡到精确构造请求和与 REST API 交互。最后的挑战会综合这些技能:发现隐藏虚拟主机、定位其 API 路径,并构造获取实验令牌所需的请求。

你将学到什么

  • 配合提供的字典使用 ffuf 枚举隐藏目录,并按 HTTP 状态码筛选结果。
  • 使用 Gobuster 搜索带有 .php、.txt 等指定扩展名的文件。
  • 对 Host 请求头进行模糊测试,并按响应大小过滤默认页面,从而发现基于名称的虚拟主机。
  • 模糊测试未记录的 GET 和 POST 参数名,并验证由此产生的应用行为。
  • 使用 curl 查看详细 HTTP 交互,并构造查询字符串、请求头、Cookie 和表单请求体。
  • 登录本地 REST API、发送 Bearer 令牌、用 jq 解析 JSON,并练习 PUT 与 DELETE 方法。
  • 在独立映射挑战中结合虚拟主机发现、目录枚举和自定义 API 请求。

本课程适合谁

这是一门中级课程,适合已理解基础 Web 请求、希望动手练习 Web 攻击面映射的安全学习者,也适合准 Web 渗透测试人员、API 安全学习者,以及希望了解隐藏路由和客户端可控 HTTP 字段如何被测试的开发与防御人员。

前置要求: 熟悉 Linux 终端和基本重定向,并理解 URL、HTTP 方法、请求头、状态码及 JSON 结构。

学习环境: Ubuntu 22.04 终端,提供 ffuf、Gobuster、curl、jq、实验字典,以及运行在 8080 端口的隔离本地 Web 和 API 目标。不会扫描公网系统。

常见问题

课程会使用 Burp Suite 或其他图形化拦截代理吗?

不会。HTTP 拦截实验通过 curl 的详细输出,手动练习读取和修改请求组成部分。它为后续使用图形化代理打下基础,但不教授 Burp Suite 或 OWASP ZAP 工作流。

这里的模糊测试会用于猜测密码吗?

不会。练习使用提供的小型字典测试目录名、文件名、虚拟主机名和参数名,不进行凭据暴力破解。

我会向真实网站发送请求吗?

不会。所有枚举和 API 请求都以课程环境内 127.0.0.1 或 localhost 的 8080 端口服务为目标。

我会执行哪些 API 操作?

你将识别端点、使用固定实验凭据登录、传递 Bearer 令牌、从 JSON 中提取字段,并发送 PUT 和 DELETE 请求修改隔离练习 API 中的数据。最终挑战还要求使用自定义请求头发送 POST 请求以获取实验令牌。

教师

labby
Labby
Labby is the LabEx teacher.