📜  SourceWolf – Linux 中的 CLI Web 爬虫工具

📅  最后修改于: 2022-05-13 01:57:26.850000             🧑  作者: Mango

SourceWolf – Linux 中的 CLI Web 爬虫工具

网络爬虫是使用程序或自动化脚本对网页上的数据进行索引的过程,这些自动化脚本或程序有多个名称,包括网络爬虫、蜘蛛、蜘蛛机器人,通常简称为爬虫。如果目标的范围更大,手动爬取会消耗大量时间。 SourceWolf 是一个用Python语言开发的自动化脚本,它从域服务器和状态码中爬取目录。这可以帮助测试人员快速测试响应为 200 或 301 的页面。 SourceWolf 是一个开源和免费使用的工具。 SourceWolf 工具支持用于暴力破解的自定义单词列表。 SourceWolf 的输出特性非常好,输出存储在主目录中,主目录包含子目录,子目录和状态码目录分开。

SourceWolf 能做什么?

  • SourceWolf 工具可以抓取响应以识别目标域的隐藏端点。
  • SourceWolf 工具可以创建已识别的 JavaScript 源变量的详细列表。
  • SourceWolf 工具支持使用自定义单词列表对文件和目录进行暴力破解。
  • SourceWolf 工具可以显示在目标服务器上访问的每个导演的状态码。
  • SourceWolf 工具为我们提供了在本地抓取响应文件的选项,这样您就不会再次将请求发送到您已经拥有其响应副本的端点。

SourceWolf的3种模式

1.爬取响应模式:在该模式下,隐藏端点被发现并以文本文件格式保存。

python3 sourcewolf.py -l domains.txt -o output/ -c crawl_output

2.蛮力模式:在这种模式下蛮力攻击是为了检测目标域上的文件和目录。单词列表用于蛮力。

python3 sourcewolf.py -b https://geeksforgeeks.org/FUZZ -w /usr/share/wordlists/dirb/common.txt -s status

3.探测模式:在此模式下,检查目标域的活跃度。在此模式下验证目标主机是否处于活动状态。

python3 sourcewolf.py -l domains.txt -s live

如何将其集成到您的工作流程中?

SourceWolf 工具在我们的工作流程中非常有用。该工具支持过滤活动域。因此,我们可以从 Amass、AssetFinder 和 Sublist3r 工具中枚举子域,并将列表传递给 SourceWolf 工具。 SourceWolf 工具将仅过滤掉响应或实时子域,因此我们可以仅测试实时子域,而不是将时间浪费在非活动子域上。此工具还可用于查找目标域的端点。

命名约定

要在本地爬行文件,我们必须遵循一些命名约定规则。这些约定使 SourceWolf 可以直接识别主机名,从而解析所有端点,包括相关端点。

考虑一个 URL https://geeksforgeeks.org/api/

  • 从 URL 中删除 https(协议)和尾部斜杠(//)(如果有)–> geeksforgeeks.org/api
  • 将 '/' 替换为 '@' –> geeksforgeeks@api
  • 使用上面获得的文件名将响应保存为文本文件。

所以文件最终看起来像 geeksforgeeks@api.txt

注意:确保您的系统上安装了Python ,因为这是一个基于 Python 的工具。点击查看安装过程:Linux上的Python安装步骤

在 Kali Linux 操作系统上安装 SourceWolf Tool

Step 1 : 检查Python Environment 是否已建立,使用以下命令。

python3

第 2 步:打开 Kali Linux 终端并使用以下命令移动到桌面。

cd Desktop

第 3 步:您现在在桌面上使用以下命令创建一个名为 SourceWolf 的新目录。在这个目录中,我们将完成 SourceWolf 工具的安装。

mkdir SourceWolf 

第 4 步:现在使用以下命令切换到 SourceWolf 目录。

cd SourceWolf 

第 5 步:现在您必须安装该工具。您必须从 GitHub 克隆该工具。

git clone https://github.com/micha3lb3n/SourceWolf.git

第六步:工具已成功下载到SourceWolf目录下。现在使用以下命令列出该工具的内容。

ls

第 7 步:您可以观察到在我们安装工具时已经生成了 SourceWolf 工具的新目录。现在使用以下命令移动到该目录:

cd SourceWolf 

第 8 步:再次发现该工具的内容,使用以下命令。

ls

第 9 步:下载运行该工具所需的软件包,使用以下命令。

pip3 install -r requirements.txt

第 10 步:现在我们完成了安装,使用以下命令查看工具的帮助(更好地理解工具)索引。

python3 sourcewolf.py -h

在 Kali Linux 操作系统上使用 SourceWolf 工具

示例 1 :简单用法

python3 sourcewolf.py --url http://geeksforgeeks.org/wp-admin

在此示例中,我们仅测试目标域 geeksforgeeks.org 上的单个目录。我们有 500 作为状态代码,它定义了来自服务器的通用错误响应。

示例 2 :蛮力

python3 sourcewolf.py -b http://geeksforgeeks.org/FUZZ

1. 在本例中,我们将在 geeksforgeeks.org 域上对目录进行暴力破解。我们正在使用自定义或默认单词列表进行暴力破解。

2. 在下面的截图中,我们得到了服务器响应状态的结果。

示例 3 :详细

python3 sourcewolf.py -b http://geeksforgeeks.org/FUZZ -v

1. 在本例中,我们将以更真实或更详细的方式打印结果。我们使用 -v 标签来表示详细模式。

2.在下面的截图中,我们实时得到了结果,所有测试的目录都显示在终端中,并带有服务器返回的状态码。

示例 4 :单词表

1. 在本例中,我们将使用 -w 标签中指定的自定义单词列表。

2. 在下面的截图中,我们已经指定了使用自定义单词列表的命令。

3. 在下面的截图中,我们得到了模糊测试的结果,我们正在尝试打开状态码为 200 (Ok) 的 http://geeksforgeeks.org/About URL。

4. 在下面的截图中,我们在网络浏览器上打开了关于页面的 URL。

示例 5 :输出

1. 在本例中,我们将结果保存在磁盘上以供进一步使用。我们使用 -o 标记以及将保存结果的目录的名称。

2. 在下面的屏幕截图中,我们得到了扫描结果。

3. 在下面的屏幕截图中,使用状态代码的名称创建了新目录。在此目录中,将保存相关的状态码网页信息。

4. 在下面的屏幕截图中,我们打开了 2xx 目录,其中包含所有来自服务器响应为 200 的网页。

5.在下面的截图中,我们打开了状态码为200的文件,所有的HTML、JS代码数据都存储在文件中。