理解常见的 HTTP 状态码 (200, 301, 403)
在本步骤中,你将了解在 Web 枚举过程中经常遇到的一些最常见的 HTTP 状态码。理解这些状态码是解读 Gobuster 输出和有效过滤结果的基础。
- 200 OK: 此状态码表示请求已成功。服务器已成功处理请求,并正在返回所请求的资源(例如,网页、图片)。在 Gobuster 扫描中,200 状态码通常意味着找到了一个有效、可访问的页面或目录。
- 301 Moved Permanently: 此状态码表示所请求的资源已永久移动到新的 URL。浏览器(或 Gobuster)应自动重定向到新位置。虽然这不是错误,但找到 301 重定向可能表明存在旧的或已重新组织的內容。
- 403 Forbidden: 此状态码表示服务器理解请求但拒绝授权。这通常发生在用户(或 Gobuster)尝试访问需要身份验证或特定权限的资源,但客户端没有这些权限时。找到 403 状态码可能很有趣,因为它们可能指向受保护但仍然存在的敏感区域。
为了更好地理解这些,你可以尝试使用 curl 访问我们模拟 Web 服务器上的某些路径。
首先,让我们通过尝试访问 index.html 来确认服务器正在运行:
curl -I http://localhost:8000/index.html
你应该在输出中看到 HTTP/1.0 200 OK 状态。
接下来,尝试访问 redirect.html 来查看 301 重定向:
curl -I http://localhost:8000/redirect.html
你应该会观察到 HTTP/1.0 301 Moved Permanently 状态。
最后,尝试访问 admin.html 来查看 403 Forbidden 响应:
curl -I http://localhost:8000/admin.html
此命令应返回 HTTP/1.0 403 Forbidden 状态。
这些 curl 命令可以帮助你手动验证服务器上的不同路径如何响应特定的 HTTP 状态码,而这正是 Gobuster 将自动执行的操作。