将 Gobuster 扫描结果保存到文件

Beginner
立即练习

引言

在本实验中,你将学习如何有效地使用 Gobuster,一个流行的目录和文件暴力破解工具,将其扫描结果保存到文件中。保存扫描结果是网络安全中的一项基本实践,它允许进行详细的分析、报告和未来参考。我们将逐步介绍构建 Gobuster 命令、指定输出文件、执行扫描以及验证已保存结果的完整性。这项技能对于任何从事 Web 应用程序安全测试或渗透测试的人来说都至关重要,因为它确保了宝贵的发现能够得到妥善记录和访问。

构建一个标准的 gobuster dir 命令

在此步骤中,你将构建一个基础的 gobuster dir 命令。gobuster dir 命令用于目录和文件暴力破解。我们将指定目标 URL 和一个常用的字典。

首先,请确保你位于 ~/project 目录。

cd ~/project

现在,让我们构建基础的 gobuster dir 命令。我们将使用 http://127.0.0.1:8080 作为目标 URL,并使用 /usr/share/wordlists/dirb/common.txt 作为字典。

gobuster dir -u http://127.0.0.1:8080 -w /usr/share/wordlists/dirb/common.txt

此命令将开始扫描目标,查找字典中列出的目录和文件,并将结果直接显示在终端中。

预期输出(部分):

===============================================================
Gobuster v3.5
by OJ <oj@gobuster.io>
===============================================================
[+] Url:                     http://127.0.0.1:8080
[+] Method:                  GET
[+] Threads:                 10
[+] Wordlist:                /usr/share/wordlists/dirb/common.txt
[+] Add Slash:               false
[+] Allow Timeouts:          false
[+] User Agent:              gobuster/3.5
[+] Timeout:                 10s
===============================================================
2024/01/01 12:00:00 Starting gobuster in directory enumeration mode
===============================================================
/admin.html           (Status: 200)
/secret.txt           (Status: 200)
/testdir              (Status: 200)
...

添加 -o 标志以指定输出文件

在此步骤中,你将修改 gobuster 命令以包含 -o 标志,该标志允许你为扫描结果指定一个输出文件。这对于保存你的发现以供后续分析至关重要。

我们将把输出保存到 ~/project 目录下的一个名为 gobuster_results.txt 的文件中。

通过添加 -o gobuster_results.txt 来修改之前的命令:

gobuster dir -u http://127.0.0.1:8080 -w /usr/share/wordlists/dirb/common.txt -o gobuster_results.txt

此命令将执行扫描,并且除了将结果打印到控制台外,还会将所有发现写入指定的文件。

执行扫描

在此步骤中,你将执行带有 -o 标志的 gobuster 命令。这将启动目录枚举过程并将结果保存到 gobuster_results.txt

运行你在上一步中构建的命令:

gobuster dir -u http://127.0.0.1:8080 -w /usr/share/wordlists/dirb/common.txt -o gobuster_results.txt

扫描将运行,你可能会在终端中看到一些输出,但完整的结果将被定向到文件。请等待扫描完成。这可能需要几分钟时间,具体取决于字典的大小。

预期输出(部分,因为大部分输出会写入文件):

===============================================================
Gobuster v3.5
by OJ <oj@gobuster.io>
===============================================================
[+] Url:                     http://127.0.0.1:8080
[+] Method:                  GET
[+] Threads:                 10
[+] Wordlist:                /usr/share/wordlists/dirb/common.txt
[+] Add Slash:               false
[+] Allow Timeouts:          false
[+] User Agent:              gobuster/3.5
[+] Timeout:                 10s
===============================================================
2024/01/01 12:00:00 Starting gobuster in directory enumeration mode
===============================================================

验证输出文件是否已创建

在此步骤中,你将验证扫描完成后 gobuster_results.txt 文件是否已成功创建在你的 ~/project 目录中。

使用 ls 命令列出当前目录的内容,并检查 gobuster_results.txt 是否存在。

ls -l

你应该会在文件列表中看到 gobuster_results.txt

预期输出(部分):

total 8
-rw-r--r-- 1 labex labex 1234 Jan  1 12:00 gobuster_results.txt

查看已保存结果文件的内容

在最后一步中,你将查看 gobuster_results.txt 文件的内容,以确认扫描结果已正确保存。

使用 cat 命令显示文件内容:

cat gobuster_results.txt

你应该会看到发现的目录和文件,以及它们的 HTTP 状态码,这与你在 gobuster 扫描的终端输出中看到的内容类似。

预期输出(部分):

/admin.html           (Status: 200)
/secret.txt           (Status: 200)
/testdir              (Status: 200)

这证实了你的 gobuster 扫描结果已成功保存到文件中,这是在实际场景中进行文档记录和进一步分析的关键步骤。

总结

在本实验中,你已成功学会如何将 gobuster 扫描结果保存到文件。你首先构建了一个标准的 gobuster dir 命令,然后通过添加 -o 标志来指定输出文件,从而对其进行了增强。执行扫描后,你验证了输出文件的创建并查看了其内容,确认结果已正确保存。这项技能对于在 Web 安全评估和渗透测试中进行有效的文档记录和分析至关重要。