waymore 的设计理念是从 Wayback Machine(以及更多来源)中挖掘出比现有工具更多的链接。
👉 waymore 与其他工具的最大区别在于,它还能够 下载存档的响应数据(来自 Wayback Machine 和 URLScan),以便你可以从中搜索更多链接、开发者注释、额外参数等。 👉 此外,其他工具目前无法处理来源现行的速率限制,常常在结果不完整时就停止运行,并且不会告知你结果不完整。
任何做过漏洞赏金的人很可能都用过 @TomNomNoms 开发的出色的 waybackurls 工具。该工具从 web.archive.org 获取 URL,并从 index.commoncrawl.org 的索引集合中获取额外链接(如果有)。 你也可能用过 @hacker_ 开发的出色的 gau,它同样从 Wayback Archive、Common Crawl 中查找 URL,同时也从 Alien Vault、URLScan、Virus Total 和 Intelligence X 中查找。 现在,waymore 也从所有这些来源获取 URL(并且支持更强的过滤功能,以便你获取所需内容):
👉 很多人似乎忽略了一点,所以我再强调一次 :) ... waymore 与其他工具的最大区别在于,它还能够 下载存档的响应数据(来自 Wayback Machine),以便你可以从中搜索更多链接、开发者注释、额外参数等。
👉 请阅读此页面上的所有信息,以充分利用此工具,尤其是在提出任何问题之前 🤘
👉 此工具可能非常慢,但它的设计目标是覆盖广度,而非速度
⚠️ 常见错误:传入一个子域名文件来获取该域名的所有内容。千万别这样做!只需传入该域名本身即可获取该域名的所有子域名。这样会快得多,而且你不会遗漏任何内容。
注意:如果你已有 config.yml 文件,它不会被覆盖。系统会在同一目录下创建 config.yml.NEW 文件。如果需要新配置,请删除 config.yml 并将 config.yml.NEW 重命名为 config.yml。
waymore 支持 Python 3.7+(需要 Python 3.7 或更高版本以支持 async/await)。
在默认(全局)Python 环境中安装 waymore。```bash
pip install waymore
或
``````bash
pip install git+https://github.com/xnl-h4ck3r/waymore.git -v
您可以通过```bash pip install --upgrade waymore
### pipx
使用[pipx](https://pypa.github.io/pipx/)在隔离的Python环境中快速设置。```bash
pipx install git+https://github.com/xnl-h4ck3r/waymore.git
| ------- | ---------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| -i | --input | 目标域名(或域名文件)以查找链接。可以是仅域名,也可以是域名加具体路径。如果仅域名,则获取该域名的所有内容,请勿以 www. 开头。您也可以通过以句点开头来指定仅顶级域名,例如 .mil,这将获取所有具有该顶级域名的域名的子域名(注意:如果搜索顶级域名,则排除 Alien Vault OTX 源,因为它需要一个完整的域名)。注意:任何协议、端口号、查询字符串或 URL 片段都将从输入值中移除。但是,如果您提供路径,则会专门搜索该路径,因此会限制您的结果。 |
| -mode | | 运行模式:U(仅获取 URL)、R(仅下载响应)或 B(两者)。如果 -i 是仅域名,则 -mode 默认为 B。如果 -i 是带路径的域名,则 -mode 默认为 R。 |
| -oU | --output-urls | 保存链接输出到的文件,包括路径(如果需要)。如果未传递 -oR 参数,则会在 config.yml 文件中 DEFAULT_OUTPUT_DIR 键指定的路径(通常默认为 ~/.config/waymore/)下创建一个 /results 目录。在该目录内,会以 -i 传递的目标域名(或带路径的域名)为名创建一个目录(或针对 -i 传递的文件的每一行)。例如:-oU ~/Recon/Redbull/waymoreUrls.txt |
| -oR | --output-responses | 保存响应输出文件的目录,包括路径(如果需要)。如果未传递该参数,则会在 config.yml 文件中 DEFAULT_OUTPUT_DIR 键指定的路径(通常默认为 ~/.config/waymore/)下创建一个 /results 目录。在该目录内,会以 -i 传递的目标域名(或带路径的域名)为名创建一个目录(或针对 -i 传递的文件的每一行)。例如:-oR ~/Recon/Redbull/waymoreResponses |
| -n | --no-subs | 不包含目标域名的子域名(仅在输入不是带特定路径的域名时使用)。 |
| -f | --filter-responses-only | 不对来自来源的初始链接进行过滤,仅过滤下载的响应,例如,查看所有可用路径的链接可能仍然有用,即使您不想检查内容。 |
| -fc | | 过滤检索到的 URL 和响应的 HTTP 状态码。以逗号分隔的代码列表(默认:config.yml 中的 FILTER_CODE 值)。传递此参数将覆盖 config.yml 中的值。 |
| -ft | | 过滤检索到的 URL 和响应的 MIME 类型。以逗号分隔的 MIME 类型列表(默认:config.yml 中的 FILTER_MIME 值)。传递此参数将覆盖 config.yml 中的值。注意:这不会应用于 Alien Vault OTX、Virus Total 和 Intelligence X,因为它们没有按 MIME 类型过滤的功能。有时 URLScan 没有定义 MIME 类型——这些将始终包含在内。如果这对您很重要,请考虑排除这些来源。 |
| -mc | | 仅匹配检索到的 URL 和响应的 HTTP 状态码。以逗号分隔的代码列表。传递此参数会覆盖配置中的 FILTER_CODE 和 -fc。 |