utkusen/urlhunter
GitHub: utkusen/urlhunter
urlhunter 是一款使用 Go 编写的 OSINT 工具,可离线检索 URLTeam 归档中通过短链接泄露的历史 URL。
Stars: 1664 | Forks: 117
```
o Utku Sen's
\_/\o
( Oo) \|/
(_=-) .===O- ~~U~R~L~~ -O-
/ \_/U' hunter /|\
|| |_/
\\ | utkusen.com
|K || twitter.com/utkusen_en
```
urlhunter 是一个侦察工具,可搜索通过短链接服务(如 bit.ly 和 goo.gl)暴露的 URL。该项目使用 Go 语言编写。
### 如何工作?
一个名为 [URLTeam](https://archiveteam.org/index.php?title=URLTeam) 的组织(向他们致敬)正在对 URL 短链接服务进行暴力破解,并每日发布匹配结果。urlhunter 会下载他们的 [collections](https://archive.org/details/UrlteamWebCrawls) 并让您进行分析。
# 安装
## 从二进制文件
您可以从 [releases](https://github.com/utkusen/urlhunter/releases/latest) 页面下载预构建的二进制文件并运行。例如:
`tar xzvf urlhunter_0.1.0_Linux_amd64.tar.gz`
`./urlhunter --help`
## 从源码
1. 在系统上安装 Go
2. 运行:`go install github.com/utkusen/urlhunter@latest`
**注意 Windows 用户:**urlhunter 使用 `XZ Utils`,该工具在 Linux 和 macOS 系统上已预装。Windows 系统需要从 [https://tukaani.org/xz/](https://tukaani.org/xz/) 下载。
# 使用
urlhunter 运行需要 3 个参数:`-keywords`、`-date`。
例如:`urlhunter --keywords keywords.txt --date 2020-11-20`
### 关键字
需要指定包含要搜索的 URL 关键字的 txt 文件。关键字必须逐行编写。指定关键字有三种方式:
**单个关键字:**urlhunter 将把给定关键字视为子串进行搜索。例如:
`acme.com` 关键字会匹配 `https://acme.com/blabla` 和 `https://another.com/?referrer=acme.com`
**多个关键字:**urlhunter 将使用 `AND` 逻辑搜索给定的关键字。这意味着 URL 必须包含所有提供的关键字。关键字之间用 `,` 分隔。例如:
`acme.com,admin` 将匹配 `https://acme.com/secret/adminpanel`,但 **_不会_** 匹配 `https://acme.com/somethingelse`
**正则表达式:**urlhunter 将搜索给定的正则表达式。在关键字文件中,包含正则表达式的行必须以 `regex ` 开头。格式为:`regex REGEXFORMULA`。例如:
`regex 1\d{10}` 将匹配 `https://example.com/index.php?id=12938454312`,但 **_不会_** 匹配 `https://example.com/index.php?id=abc223`
### 日期
urlhunter 下载给定日期的归档文件。指定日期有三种方式:
**最新:**urlhunter 将下载最新的归档。`-date latest`
**单个日期:**urlhunter 将下载给定日期的归档。日期格式为 YYYY-MM-DD。
例如:`-date 2020-11-20`
**年份:**urlhunter 将下载给定年份的归档。年份格式为 YYYY。
例如:`-date 2024`
**日期范围:**urlhunter 将下载给定起止日期之间的所有归档。
例如:`-date 2020-11-10:2020-11-20`
### 输出
您可以使用 `-o` 参数指定输出文件。例如 `-o out.txt`
### 删除
您可以使用 `-rm` 参数在处理完后删除下载的归档文件夹。这有助于节省磁盘空间。
### 演示视频
[](https://www.youtube.com/watch?v=Ct086YRm7i8)
## 速度问题
Archive.org 在下载文件时会限制速度。因此,下载归档比平时更耗时。作为解决方案,您可以通过 Torrent 下载归档,并将其放入 `archive/` 文件夹中,该文件夹位于 urlhunter 二进制文件所在的同一目录下。目录结构如下:
```
|-urlhunter
|---urlhunter(binary)
|---archive
|-----urlteam_2020-11-20-11-17-04
|-----urlteam_2020-11-17-11-17-04
```
## 示例用例
urlhunter 对网络情报和漏洞赏金可能有用。例如:
`docs.google.com/a/acme.com` `drive.google.com/a/acme.com` 关键字可帮助您找到 Acme 公司的公开 Google Docs&Drive 分享链接。
`acme.com,password_reset_token` 关键字可能帮助您找到 acme.com 的有效密码重置令牌。
`trello.com` 可帮助您找到公开的 Trello 地址。
## 感谢
特别感谢 Samet Bekmezci([@sametbekmezci](https://twitter.com/sametbekmezci)),他给了我这个工具的灵感。
标签:DNS解析, EVTX分析, EVTX分析, Go语言, URL抓取, URL短链接分析, 安全研发, 开源项目, 数字取证, 数据抓取, 日志审计, 服务探测, 程序破解, 网络安全, 网络情报, 自动化脚本, 隐私保护