📜  HakTrails – 用于漏洞赏金的子域侦察工具

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

HakTrails – 用于漏洞赏金的子域侦察工具

Haktrails工具是一个基于 Golang 语言的工具,用于查询 SecurityTrails API 数据。 Security Trails 赞助了 Haktrails 工具。 Haktrails 是一个很好的侦察工具。此工具的主要目的是用于子域枚举,但您可以在此枚举之外工作。 Haktrails 的设计方式使其可以与其他工具轻松链接。作为一名安全研究员,您可以将此工具添加到您的漏洞赏金调查桶中。

注意:由于 Haktrails 是一个基于 Golang 语言的工具,所以你的系统上需要有一个 Golang 环境。因此,请查看此链接以在您的系统中安装 Golang – 如何在 Linux 中安装 Go 编程语言

Haktrails 工具的特点

  • 标准输入,便于工具链接
  • 子域发现
  • 关联的根域发现
  • 关联的 IP 发现
  • 历史 DNS 数据
  • 历史whois数据
  • DSL 查询(目前是原型)
  • 公司发现(发现任何域的所有者)
  • Whois(返回任何给定域的 JSON whois 数据)
  • Ping(检查您当前的 SecurityTrail 的配置/密钥是否有效)
  • 使用情况(检查您当前的 SecurityTrails 使用情况)
  • “JSON”或“list”输出选项,便于工具链
  • “ZSH 和 Bash 自动完成”

在 Kali Linux 中安装 Haktrails

第一步:如果您的系统中已经下载了Golang,请通过检查Golang的版本来验证安装,使用以下命令。

go version

第二步:从 Github 获取 Haktrails 存储库或克隆 Haktrails 工具,使用以下命令。



sudo go get github.com/hakluke/haktrails

第三步:将Haktrails工具复制到bin目录下,这样我们就可以方便的使用该工具了,不用golang手动运行该工具,使用如下命令。

sudo cp /root/go/bin/haktrails /usr/local/go/bin/

第 4 步:要获取您的 API 密钥,请访问 https://securitytrails.com/app/signup?plan=api-0 网站并注册您的帐户。您将获得您唯一的 API 密钥;

https://securitytrails.com/app/signup?plan=api-0

第五步:在mkdir ~/.config/haktools/目录下插入运行工具所需的API key,使用如下命令。

sudo mkdir ~/.config/haktools/

第 6 步:(设置配置文件)创建一个 haktrails-config.yml 文件,将在其中插入 API 密钥,使用以下命令。



sudo mousepad ~/.config/haktools/haktrails-config.yml

第七步:验证haktrails是否配置成功,使用如下命令。

haktrails

步骤 8:验证您的 API 密钥是否正确插入,使用以下命令。

haktrails ping

如果您收到此 {“success”:true} 响应,则您的密钥配置正确。

了解标志

  • -o json 或 -o list: Hakrails 工具可以指定 JSON 或列表格式的输出。列表格式是输出的默认格式。子域、关联域和关联 IP 与列表格式兼容。所有剩余的端点都与 JSON 格式兼容。
  • -t Haktrails 工具允许手动设置线程数。这将指定在同一时间实例中可以处理多少个域。
  • -c <文件路径>: Haktrails 工具允许使用 -c <文件路径> 标志在任何文件位置设置配置文件。
  • -type Haktrails 工具具有历史 DNS 查找的功能,因此要设置使用 -type 标志。其他可用类型包括 a、aaaa、mx、ns、soa、txt。

注意:使用此工具,可以通过大量 API 积分直接使用。例如,如果 target_domains.txt 中有超过 10,000 个域,则运行 cat target_domains.txt | haktrails 子域将使用 10,000 个积分。还值得注意的是,某些功能(例如关联域)将使用多个 API 请求。例如,echo “geeksforgeeks.org” | haktrails 关联域会使用大约 20 个 API 请求,因为数据是分页的,而且 geeksforgeeks.org 有许多关联域。

使用 Haktrails 工具

内容或目标域在domains.txt 文件中列出。在下面的屏幕截图中,显示了domains.txt 的内容。

示例 1:收集关联域



“收集关联域名”是指仅获取同一家公司收购或拥有的域名。我们将在我们的domains.txt 文件中收集每个指定域的所有关联域。

cat domains.txt | haktrails associateddomains

示例 2:收集关联的 IP

在此示例中,我们将收集公司拥有的 IP 地址或 IP 范围。我们将指定域列表并查找 IP 地址。

cat domains.txt | haktrails associatedips

示例 3:Ping

Ping 属性检查我们的 API 密钥是否正常工作。如果它有任何问题,那么 ping 将返回一个错误。

haktrails ping

示例 4:获取历史 DNS 数据

在此示例中,我们将尝试为目标域或公司收集重要的历史或过去的 DNS(域名系统)数据。



cat domains.txt | haktrails historicaldns

示例 5:获取公司详细信息

获取有关公司的详细信息非常重要。因此,在此示例中,我们将尝试获取公司详细信息并更简要地探索该公司。

cat domains.txt | haktrails company

示例 6:获取域详细信息

在此示例中,我们将收集有关指定域的详细信息,包括 DNS 记录、域的 Alexa 排名和上次查看时间。

cat domains.txt | haktrails details

示例 7:获取 whois 数据

WHOIS 数据或记录在渗透域时非常重要。因此,收集whois 数据也是至关重要的工作。所以在这个例子中,我们将收集域的 Whois 数据。输出以 JSON 格式显示。

cat domains.txt | haktrails whois



示例 8:获取域标签

在本例中,我们将返回特定目标域的标签。

cat domains.txt | haktrails tags

示例 9:获取 API 使用数据

在此示例中,我们将返回 SecurityTrails 帐户上 API 的信息或使用数据。

haktrails usage

示例 10:检查您的 API 密钥

以下命令将 Ping SecurityTrails 以检查您的 API 密钥是否正常工作。

haktrails ping

示例 11:显示一些普通的 ASCII 艺术

横幅是展示工具设计的创造性艺术。所以在这个例子中,我们将使用横幅来显示一个花哨的横幅或 ASCII 艺术

haktrails banner

示例 12:获取子域

Haktrails 具有收集与目标域相关的子域的功能。所以在这个例子中,我们将为我们的domains.txt文件收集子域

cat domains.txt | haktrails subdomains