
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 というグループ (彼らに感謝) が URL 短縮サービスをブルートフォースし、一致した結果を毎日公開しています。urlhunter は彼らのコレクションをダウンロードし、分析できるようにします。
リリースページから事前にビルドされたバイナリをダウンロードして実行できます。例:
tar xzvf urlhunter_0.1.0_Linux_amd64.tar.gz
./urlhunter --help
システムに Go をインストールします
実行: go install github.com/utkusen/urlhunter@latest
Windows ユーザーへの注意: urlhunter は XZ Utils を使用します。これは Linux および macOS システムにはプリインストールされています。Windows システムでは、https://tukaani.org/xz/ からダウンロードする必要があります。
urlhunter を実行するには、-keywords、-date の 3 つのパラメータが必要です。
例: urlhunter --keywords keywords.txt --date 2020-11-20
URL を検索するためのキーワードを含むテキストファイルを指定する必要があります。キーワードは 1 行に 1 つずつ記述します。キーワードの指定方法は 3 通りあります:
単一キーワード: 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 は指定された日付のアーカイブファイルをダウンロードします。日付の指定方法は 3 通りあります:
最新: 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 パラメータを指定すると、処理後にダウンロードしたアーカイブフォルダを削除できます。これはディスク容量を節約するのに便利です。
Archive.org はファイルのダウンロード時に速度制限をかけます。そのため、アーカイブのダウンロードには通常よりも時間がかかります。回避策として、Torrent でアーカイブをダウンロードし、urlhunter のバイナリと同じディレクトリにある archive/ フォルダに配置することもできます。ディレクトリツリーは次のようになります:
|-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 ドキュメント・ドライブ共有リンクを見つけることができます。
acme.com,password_reset_token のキーワードを使用すると、acme.com の有効なパスワードリセットトークンを見つけられる可能性があります。
trello.com を使用すると、公開 Trello アドレスを見つけることができます。
このツールのアイデアを提供してくれた Samet Bekmezci (@sametbekmezci) に特に感謝します。