Skip to content
KitploitKITPLOIT
ツールブログ
提出
ツールブログ
提出

ハッキング、侵入テスト、サイバーセキュリティツールをあなたのセキュリティアーセナルに!

Kitploitはハッキング、サイバーセキュリティ、ペネトレーションテストのツールディレクトリです。最新のプロジェクトアップデートを見つけて、脆弱性の発見、システム分析、テストの自動化、セキュリティの強化を行いましょう。

··フィード·お問い合わせ·プライバシー·© 2026 Kitploit

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
waymore — Wayback Machine、Common Crawl、Alien Vault OTX、URLScan、VirusTotal、GhostArchive、Intelligence X からさらに多くの情報を見つけよう! | Kitploit
ツール/GitHubGitHub/xnl-h4ck3r/waymore
OSINT (オープンソースインテリジェンス)偵察情報収集ウェブセキュリティサブドメイン列挙クローラー
GitHubxnl-h4ck3r/waymore

waymore

Wayback Machine、Common Crawl、Alien Vault OTX、URLScan、VirusTotal、GhostArchive、Intelligence X からさらに多くの情報を見つけよう!

リポジトリを見る
2.7k2932ヶ月前Kitploit レビュー済み

人気

すべて見る →

コミュニティで最も使われているツールを見つけましょう。

すべてのツールを探索

ツールコレクションを閲覧

すべてのツールを見る →
共有

概要 - v8.9

waymore の背後にあるアイデアは、他の既存のツールよりも Wayback Machine(およびその他のソース)からさらに多くのリンクを見つけることです。

👉 waymore と他のツールの最大の違いは、Wayback Machine (および URLScan) 上の URL のアーカイブされた応答を ダウンロード することもできるため、それらを検索してさらに多くのリンク、開発者のコメント、追加のパラメータなどを見つけることができることです。 👉 また、他のツールは現在、ソースによるレート制限に対処しておらず、不完全な結果で停止し、その不完全さを知らせないことがよくあります。

バグバウンティを行う人は誰でも、@TomNomNoms による素晴らしい waybackurls を使用したことがあるでしょう。このツールは、web.archive.org から URL を取得し、index.commoncrawl.org のインデックスコレクションの 1 つから追加のリンク (存在する場合) を取得します。 また、@hacker_ による素晴らしい gau を使用したこともあるでしょう。これは、wayback archive、Common Crawl だけでなく、Alien Vault、URLScan、Virus Total、Intelligence X からも URL を見つけます。 現在、waymore はそれらすべてのソースからも URL を取得します(さらにフィルタリングして必要なものを取得する機能付き):

  • Wayback Machine (web.archive.org)
  • Common Crawl (index.commoncrawl.org)
  • Alien Vault OTX (otx.alienvault.com)
  • URLScan (urlscan.io)
  • Virus Total (virustotal.com)
  • GhostArchive (ghostarchive.org)
  • Intelligence X (intelx.io) - アカデミアまたは有料ティアのみ

👉 多くの人が見逃しがちな点ですが、もう一度言います :) ... waymore と他のツールの最大の違いは、Wayback Machine 上の URL のアーカイブされた応答を ダウンロード することもできるため、それらを検索してさらに多くのリンク、開発者のコメント、追加のパラメータなどを見つけることができることです。

👉 このツールを最大限に活用するために、特に問題を報告する前に、このページのすべての情報をお読みください 🤘

👉 このツールは非常に遅くなる可能性がありますが、速度ではなくカバレッジを目的としています

⚠️ よくある間違いは、ドメインのすべてを取得するためにサブドメインのファイルを渡すことです。やめてください!そのドメインのすべてのサブドメインを取得するには、ドメインのみを渡してください。はるかに高速で、何も見逃すことはありません。

インストール

注: 既に config.yml ファイルがある場合、上書きされません。同じディレクトリにファイル config.yml.NEW が作成されます。新しい設定が必要な場合は、config.yml を削除し、config.yml.NEW を config.yml に名前変更してください。

waymore は Python 3.7+ をサポートしています(async/await サポートには Python 3.7 以上が必要です)。

デフォルト(グローバル)の Python 環境に waymore をインストールします。```bash pip install waymore

root@kitploit:~
または

または```bash
pip install git+https://github.com/xnl-h4ck3r/waymore.git -v

アップグレードは次で行えます。```bash pip install --upgrade waymore

root@kitploit:~
### pipx

pipxを使用した、隔離されたPython環境での迅速なセットアップ```bash
pipx install git+https://github.com/xnl-h4ck3r/waymore.git

使い方| Arg | Long Arg | 説明 |

| ------------- | -------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | -i | --input | リンクを検索する対象ドメイン(またはドメインのファイル)。ドメインのみ、または特定のパスを含むドメインを指定できます。ドメインのみでそのドメインのすべてを取得する場合は、先頭にwww.を付けないでください。また、先頭にピリオドを付けてTLDのみを指定することもできます(例:.mil)。その場合、そのTLDを持つすべてのドメインのすべてのサブドメインを取得します(注:Alien Vault OTXソースは、完全なドメインが必要なため、TLD検索では除外されます)。注:入力値からスキーム、ポート番号、クエリ文字列、URLフラグメントはすべて削除されます。ただし、パスを指定した場合は、そのパスが具体的に検索されるため、結果が制限されます。 | | -mode | | 実行モード:U(URLのみ取得)、R(レスポンスのみダウンロード)、B(両方)。-iがドメインのみの場合、-modeはデフォルトでBになります。-iがパス付きドメインの場合、-modeはデフォルトでRになります。 | | -oU | --output-urls | リンク出力を保存するファイル(パスを含む)。引数が渡されない場合、ファイル内のキーで指定されたパス(通常は)にディレクトリが作成されます。その中に、で渡されたターゲットドメイン(またはパス付きドメイン)(あるいはで渡されたファイルの各行)ごとにディレクトリが作成されます。例: | | -oR | --output-responses | レスポンス出力ファイルを保存するディレクトリ(パスを含む)。引数が渡されない場合、ファイル内のキーで指定されたパス(通常は)にディレクトリが作成されます。その中に、で渡されたターゲットドメイン(またはパス付きドメイン)(あるいはで渡されたファイルの各行)ごとにディレクトリが作成されます。例: | | -n | --no-subs | ターゲットドメインのサブドメインを含めない(入力が特定のパスを持つドメインでない場合のみ使用)。 | | -f | --filter-responses-only | ソースからの初期リンクはフィルタリングされず、ダウンロードされたレスポンスのみがフィルタリングされます。例えば、コンテンツをチェックしたくなくても、リンクから利用可能なすべてのパスを確認できると便利な場合があります。 | | -fc | | 取得したURLとレスポンスのHTTPステータスコードをフィルタリングします。カンマ区切りのコードリスト(デフォルト:の値)。この引数を渡すと、の値が上書きされます。 | | -ft | | 取得したURLとレスポンスのMIMEタイプをフィルタリングします。カンマ区切りのMIMEタイプリスト(デフォルト:の値)。この引数を渡すと、の値が上書きされます。. | | -mc | | 取得したURLとレスポンスのHTTPステータスコードのみにマッチします。カンマ区切りのコードリスト。この引数を渡すと、設定のとが上書きされます。 | | -mt | | 取得したURLとレスポンスのMIMEタイプのみにマッチします。カンマ区切りのMIMEタイプリスト。この引数を渡すと、設定のとが上書きされます。. | | -l | --limit | 保存されるレスポンスの数(またはが渡された場合)。正の値はの結果を取得し、負の値はの結果を取得します。値0はレスポンスを取得します(デフォルト:5000)。 | | -from | --from-date | データを取得する開始日。指定しない場合、可能な限り最も古い結果から取得します。部分的な値を渡すことができます(例:、など)。 | | -to | --to-date | データを取得する終了日。指定しない場合、可能な限り最新の結果まで取得します。部分的な値を渡すことができます(例:、など)。 | | -ci | --capture-interval | archive.orgの検索をフィルタリングし、1時間()、1日()、または1か月()あたり最大1回のキャプチャのみを取得します。このフィルターはレスポンスのみに使用されます。デフォルトはですが、に設定して何もフィルタリングせず、すべてのレスポンスを取得することもできます。 | | -ra | --regex-after | すべてのソースからのURLとダウンロードされたレスポンスの両方に見つかったリンクをフィルタリングするための正規表現。 | | -url-filename | | ダウンロードされたレスポンスのファイル名を、そのレスポンスを生成したURLに設定します。設定しない場合、レスポンスのハッシュ値に設定されます。ハッシュ値を使用すると、同じレスポンスを生成した複数のURLに対して、そのレスポンスのファイルが1つだけ保存されます。 | | -xwm | | Wayback Machine (archive.org) からのリンクチェックを除外する | | -xcc | | commoncrawl.org からのリンクチェックを除外する | | -xav | | alienvault.com からのリンクチェックを除外する | | -xus | | urlscan.io からのリンクチェックを除外する | | -xvt | | virustotal.com からのリンクチェックを除外する | | -xix | | Intelligence X.com からのリンクチェックを除外する | | -xga | | ghostarchive.org からのリンクチェックを除外する | | -lcc | | 検索するCommon Crawlインデックスコレクションの数を制限します(例:で最新のコレクションのみを検索)。デフォルトは1です。2024年11月現在、106のコレクションがあります。に設定するとコレクションを検索します。Common Crawlをまったく検索したくない場合は、オプションを使用してください。 | | -t | --timeout | アーカイブされたレスポンスのみに適用されます!サーバーがデータを送信するのを待つ秒数(デフォルト:30)。 | | -p | --processes | URLのファイルに対してリクエストを行う際に基本的なマルチスレッディングが行われます。この引数は使用するプロセス(スレッド)の数を決定します(デフォルト:2)。 | | -r | --retries | 接続エラーまたはレート制限が発生した場合のリクエストの再試行回数(デフォルト:1)。 | | -sip | --source-ip OR --bind-ip | 送信HTTP/HTTPSリクエストをこの送信元IPにバインドします(マルチホームホストで便利)。この引数を渡すと、ファイル内の値が上書きされます。 | | -m | --memory-threshold | メモリしきい値のパーセンテージ。マシンのメモリがしきい値を超えた場合、プログラムはメモリ不足になる前に停止し、適切に終了します(デフォルト:95)。 | | -ko | --keywords-only | 関心のあるキーワードを含むリンクとレスポンスのみを返します。これにより、結果を得る時間を短縮できます。フラグに値を指定しない場合、キーワードはファイル(通常は内)のキーにあるカンマ区切りリストから取得されます。そうでない場合は、使用する特定の正規表現値を渡すことができます(例:で単語を含むリンクのみを取得、またはでJSファイルのみを取得)。正規表現チェックは大文字小文字を区別しません。 | | -lr | --limit-requests | ソースからリンクを取得する際に行うリクエスト数を制限します(Common Crawlには適用されません)。ターゲットによっては、取得が現実的でないほどの大量のリクエストが必要になる場合があるため、このオプションでその状況を管理できます。デフォルトは0(ゼロ)で、制限がないことを意味します。 | | -ow | --output-overwrite | URL出力ファイル(デフォルト、またはで指定されたもの)がすでに存在する場合、追加ではなく上書きされます。 | | -nlf | --new-links-file | この引数が渡されると、ファイル(またはが使用されている場合は、そのファイル名にを付加したもの)も書き込まれ、最新の実行のリンクが含まれます。これはターゲットの継続的な監視に使用できます(のみ、では不可)。 | | | --stream | URLが見つかったらすぐにSTDOUTに出力します(重複は表示されます)。でのみ動作します。他の出力はすべて抑制されるため、エラーを確認するにはを使用してください。を使用して結果を明示的にファイルに保存することもできます(重複は排除されます)。 | | -c | --config | YML設定ファイルのパス。渡されない場合、デフォルトのディレクトリ(通常は)にあるファイルを探します。 | | -wrlr | --wayback-rate-limit-retry | ユーザーがWayback Machine (archive.org) でレート制限の一時停止を待つ時間(分)。エラーで停止する代わりに使用します(デフォルト:3)。 | | -urlr | --urlscan-rate-limit-retry | ユーザーがURLScan.ioでレート制限の一時停止を待つ時間(分)。エラーで停止する代わりに使用します(デフォルト:1)。 | | -co | --check-only | これにより、ソースからURLを取得し、Wayback Machineからレスポンスをダウンロードするために必要なリクエスト数とおおよその所要時間を示すために、最小限のリクエストが行われます(残念ながら、URLScanからのレスポンスダウンロードにかかる時間を確認することはできません)。 | | -nd | --notify-discord | waymoreが完了したときにDiscordに通知を送信するかどうか。ファイルにが指定されている必要があります。 | | -nt | --notify-telegram | waymoreが完了したときにTelegramに通知を送信するかどうか。ファイルにとが指定されている必要があります。 | | -oijs | --output-inline-js | (または)が使用された場合、関連するすべてのファイルのインラインJavaScriptを結合してレスポンスディレクトリに保存するかどうか。ファイルはという名前で保存され、はファイル番号で、ファイルあたり1000個のユニークなスクリプトが保存されます。また、ファイルも作成され、ファイル内で参照されているすべての外部スクリプトの値が含まれます。 | | -v | --verbose | 詳細な出力 | | | --version | 現在のバージョン番号を表示します。 | | -h | --help | ヘルプメッセージを表示して終了します。 |## dockerで実行する

インストール docker```bash git clone https://github.com/xnl-h4ck3r/waymore.git cd waymore

root@kitploit:~
ビルドイメージ:```bash
docker build -t waymore .

次のコマンドでwaymoreを実行してください:```bash docker run -it --rm -v $PWD/results:/app/results waymore:latest -i example.com -oU example.com.links -oR results/example.com/

root@kitploit:~
## 入力とモード

入力 `-i` は、ドメインのみ(例:`redbull.com`)または特定のドメインとパス(例:`redbull.com/robots.txt`)のいずれかを指定できます。また、処理するドメイン/URLのファイルを渡すこともできます(またはコマンドラインで別のプログラムからパイプで値を渡すこともできます)。**注:入力値からスキーム、ポート番号、クエリ文字列、URLフラグメントは削除されます。ただし、パスを指定した場合は、そのパスが具体的に検索されるため、結果が制限されます。**

waymore で実行できるモードはいくつかあります。`-mode` 引数には3つの異なる値を指定できます:

- `U` - archive.org(`-xwm` が指定されていない場合)、commoncrawl.org(`-xcc` が指定されていない場合)、otx.alienvault.com(`-xvv` が指定されていない場合)、urlscan.io(`-xus` が指定されていない場合)からURLを取得します。
- `R` - archive.org からレスポンスをダウンロードします。
- `B` - URLとレスポンスの両方を取得します。

入力が特定のURL(例:`redbull.com/robots.txt`)の場合、`-mode` はデフォルトで `R` になります。レスポンスのみがダウンロードされます。パス付きドメインではモードを `U` または `B` に変更することはできません。特定のURLに対してURLを取得する必要がないためです。

入力がドメインのみ(例:`redbull.com`)の場合、`-mode` はデフォルトで `B` になります。必要に応じて `U` または `R` に変更できます。ドメインのみが渡された場合、そのドメイン(およびサブドメイン、`-n` が渡されていない場合)のすべてのURL/レスポンスが取得されます。サブドメインなしオプション `-n` が渡された場合でも、`www` サブドメインはデフォルトで含まれます。

## config.yml

`config.yml` ファイル(通常は `~/.config/waymore/` にあります)には、必要に応じて更新できる値があります。フィルターはすべてカンマ区切りリストとして指定します:

- `FILTER_CODE` - web.archive.org から取得しようとするレスポンスを除外するための除外リスト。また、`-i` がディレクトリの場合のファイル名にも使用されます(例:`301,302`)。これは `-fc` 引数で上書きできます。`-mc`(フィルタリングではなくステータスコードを一致させる)を渡すと、`FILTER_CODE` または `-fc` の値は上書きされます。
- `FILTER_MIME` - web.archive.org のAPIを介したリンクとレスポンスのフィルタリングに使用するMIME Content-Typeの除外リスト(例:`text/css,image/jpeg`)。これは `-ft` 引数で上書きできます。`-mt`(フィルタリングではなくMIMEタイプを一致させる)を渡すと、`FILTER_MIME` または `-ft` の値は上書きされます。
- `FILTER_URL` - web.archive.org のAPIを介したリンクとレスポンスのフィルタリングに使用するレスポンスコードの除外リスト(例:`.css,.jpg`)。
- `FILTER_KEYWORDS` - `-ko`/`--keywords-only` 引数が(コマンドラインで明示的に値を指定せずに)渡された場合に、指定されたキーワードを含むリンクとレスポンスのみが返されます(例:`admin,portal`)。
- `URLSCAN_API_KEY` - [urlscan.io](https://urlscan.io/user/signup) にサインアップして、**無料**のAPIキーを取得できます(有料サブスクリプションもあります)。キーを取得して設定ファイルに保存することをお勧めします。これにより、APIからより多くのデータを(より速く)取得できます。注:完全な有料サブスクリプションがない限り、レート制限が適用されます。
- `CONTINUE_RESPONSES_IF_PIPED` - アーカイブレスポンスの取得が完了しなかった場合、次回実行時に前回の実行を続行するかどうかプロンプトが表示されます。ただし、`stdout` が別のプロセスにパイプされている場合は、対話的なプロンプトは不要と見なされます。`True`(デフォルト)の値は、前回の実行が確実に続行されるようにします。毎回新しい実行が必要な場合は、`False` に設定します。
- `WEBHOOK_DISCORD` - `--notify-discord` 引数が渡された場合、waymore はこのDiscordウェブフックに通知を送信します。
- `TELEGRAM_BOT_TOKEN` - `--notify-telegram` 引数が渡された場合、waymore はこのトークンを使用してTelegramに通知を送信します。
- `TELEGRAM_CHAT_ID` - `--notify-telegram` 引数が渡された場合、waymore はこのチャットIDに通知を送信します。
- `DEFAULT_OUTPUT_DIR` - `-oU` および `-oR` 引数が使用されていない場合に出力ファイルが書き込まれるデフォルトの場所です。このキーの値が空白の場合、`config.yml` ファイルの場所がデフォルトになります。
- `INTELX_API_KEY` - [intelx.io こちら](https://intelx.io/product) にサインアップできます。APIを介して `/phonebook/search` を行うには、アカデミックまたは有料のAPIキーが必要です(2024-09-01 時点で、Phonebookサービスはスパムアカウントによる常習的な悪用のため、アカデミックまたは有料ユーザーに制限されています)。有効な学術用メールアドレスでサインアップすると、アカデミック用の無料APIキーを取得できます。
- `SOURCE_IP` - オプション。マルチホームホスト上の特定のソースIPにアウトバウンドHTTP/HTTPSリクエストをバインドします。`--source-ip/--bind-ip` CLIフラグでも設定できます(CLIが優先されます)。

  **注:Alien Vault OTX、Virus Total、Intelligence X ではMIMEタイプをフィルタリングできません。これらのプロバイダーはMIMEタイプでのフィルタリング機能を持たないためです。URLScanではURLにMIMEタイプが定義されていない場合があります。これらの場合、フィルターや一致に関係なくURLが含まれます。これが重要な場合は、特定のプロバイダーを除外することを検討してください。**

## 出力

`config.yml` ファイル内の `DEFAULT_OUTPUT_DIR` で指定されたデフォルトの出力ディレクトリ(空白の場合は `config.yml` ファイル自体の場所、通常は `~/.config/waymore/` がデフォルト)に、`results` ディレクトリが作成されます。その中に、`-i` で渡されたターゲットドメイン(またはパス付きドメイン)のディレクトリが作成されます(または `-i` で渡されたファイルの各行に対して)。代わりに `-oU` 引数を使用して、URLリンクファイルの出力先(およびファイル名)を指定することもできます。また、`-oR` 引数を使用して、アーカイブされたレスポンスの出力先ディレクトリ(またはパス)を指定することもできます。
実行時、ターゲットディレクトリに以下のファイルが作成されます:

- `waymore.txt` - `-mode` が `U` または `B` の場合、このファイルには選択されたソースからのリンクが含まれます。リンクは、archive.org Wayback Machine(`-xwm` が渡されていない場合)、commoncrawl.org(`-xcc` が渡されていない場合)、otx.alienvault.com(`-xav` が渡されていない場合)、urlscan.io(`-xus` が渡されていない場合)から取得されます。`-ow` オプションも渡された場合、ターゲット結果ディレクトリ内の既存の `waymore.txt` ファイルは上書きされます。そうでない場合は、新しいリンクが追加され、重複が削除されます。
- `index.txt` - `-mode` が `R` または `B` で、`-url-filname` が渡されなかった場合、アーカイブされたレスポンスがダウンロードされ、保存されるファイル名にはハッシュ値が使用されます。このファイルには、`<ハッシュ>,<アーカイブURL>,<タイムスタンプ>` のカンマ区切りリストが含まれ、どのURLがどのレスポンスを生成したかを確認できます。
- `その他すべてのファイル` - これらのアーカイブレスポンスファイルは、`-mode` が `R` または `B` の場合に作成されます。`-url-filename` が渡された場合、ファイル名はレスポンスを生成したアーカイブURLになります(例:`https--example.com-robots.txt`)。それ以外の場合、ファイル名はハッシュ値(例:`7960113391501.{EXT}`)になり、`{EXT}` はパスから派生した拡張子、またはレスポンスの `content-type` から派生した拡張子になります。場合によっては、一般的な拡張子が与えられることもあります(例:`javascript` という単語を含むコンテンツタイプには `.js`)。それ以外の場合は、タイプの最後の部分に設定されることがあります(例:`application/java-archive` の場合、ファイルは `7960113391501.java-archive` になります)。ハッシュ値を使用すると、一意のレスポンスごとに1つのファイルしか作成されないため、書き込まれるファイル数が少なくなります。これらのアーカイブされたレスポンスは、保存される前に `web.archive.org` への参照を削除するように編集されます。

## 情報と提案

見つかるリンクの数、そしてその後ダウンロードする可能性のあるアーカイブレスポンスのファイル数は、多くのドメインで**膨大**になる可能性があります。このツールは速度を重視しているのではなく、より多くを見つけることを目的としているため、辛抱強く待ってください。

`-p` オプションを使用すると、プロセス数を増やすことができます(すべてのソースからリンクを取得するとき、および archive.org からアーカイブされたレスポンスをダウンロードするときに使用されます)。ただし、希望するほど高速ではないかもしれませんが、デフォルトの3のままにすることをお勧めします。個人的に値を大きくするとレスポンスの取得に問題が生じたためです。これらのサービスに問題を引き起こしたくないので、常識的な範囲で使用してください!

私はよく `-f` オプションを使用します。`waymore.txt` に**可能なすべてのリンク**を含めたいからです。画像やフォントなどは気にしませんが、可能なすべてのパスやパラメータを確認することは役立つ場合があります。ただし、フィルターはアーカイブされたレスポンスのダウンロードには常に適用されます。何千もの画像をダウンロードして時間を無駄にしたくはありません!

`-v` オプションを使用すると、バックグラウンドで何が起こっているかを確認でき、期待した出力が得られない場合に役立ちます。

見つかったURLのすべてのMIME Content-Type(Alien Vault を除くすべてのソース)は、`-v` を使用したときに表示されます。これにより、まだ除外したいものがある場合に、追加の除外を追加するのに役立ちます。今後含めたくないMIMEタイプを見つけた場合は、`config.yml` の `FILTER_MIME` に追加してください。
注意すべき点として、archive.org のMIMEタイプは実際のMIMEではなく `unk` や `unknown` として保存されることがあるため、フィルターが結果からそれを削除するとは限りません。`FILTER_URL` 設定を使用すると、後でこれらを削除できます。たとえば、GIFのMIMEタイプが `image/gif` ではなく `unk` の場合(そして `FILTER_MIME` にある場合)、フィルタリングされませんが、URLが `https://target.com/assets/logo.gif` で `.gif` が `FILTER_URL` にある場合、リクエストされません。

`config.yml` が存在しない場合、またはフィルターのエントリがファイルにない場合、デフォルトのフィルターが使用されます。ファイルを作成し、必要なものを取得していることを確認するためにこれらを確認することをお勧めします。

レスポンスは数百万件になる可能性があるため、フィルターを設定するだけでなく、必要に応じて制限(`-l`)、開始日(`-from`)、終了日(`-to`)、キャプチャ間隔(`-ci`)も設定してください。制限のデフォルトは5000ですが、たとえば2015年から2018年1月までの最新の20,000件のレスポンスを取得したい場合は、`-l -20000 -from 2015 -to 201801` と渡します。キャプチャ間隔は、特定のURLに対して指定された期間内にダウンロードされるレスポンスの数を決定します。たとえば、`m` に設定すると、URLに対して月に1つのレスポンスのみが取得されます。デフォルトの `d` は、レスポンスの数を大幅に削減する可能性が高く、ターゲットが1日に複数回変更された場合でも、多くのユニークなレスポンスを見逃すことはありません。

もう1つの便利な引数は `-mc` で、渡されたカンマ区切りのリストに一致するHTTPステータスコードのみの結果を取得します(例:`-mc 200` または `-mc 200,403`)。

また、関心のあるキーワードを含むものだけを返すことで、リンクとレスポンスの数(したがって実行時間)を大幅に削減できます。これらのキーワードは `config.yml` の `FILTER_KEYWORDS` キーにリストし、引数 `-ko`/`--keywords-only` を渡して使用するか、`-ko`/`--keywords-only` を特定の正規表現とともに渡すこともできます。たとえば、`-ko "\.js(\?.*|$)"` はJSファイルのみを取得します。**注:CDX正規表現はすべてのパスが完全な文字列と一致する必要があるため、`$` がORグループの一部として使用される場合、正規表現の `(\?.*|$)` の部分に `.*` が必要です。**

上記のように、[urlscan.io](https://urlscan.io/user/signup) にサインアップして**無料**のAPIキーを取得してください(有料サブスクリプションもあります)。キーを取得して `config.yml` ファイルに保存することをお勧めします。これにより、APIからより多くのデータを(より速く)取得できます。注:完全な有料サブスクリプションがない限り、レート制限が適用されます。

archive.org Wayback Machine CDX APIは、すべてのリンクを取得するために膨大な数のリクエストを必要とすることがあります。たとえば、**waymore** を `-i twitter.com` で実行すると、archive.org に対して **28,903,799** のリクエストが必要であると表示されます(これは人によってはほぼ1000日かかる可能性があります!)。引数 `-lr` を使用して、ソースあたりのリクエスト数を制限できます(通常、問題になるのは archive.org です)。引数のデフォルト値は0(ゼロ)で、制限は適用されません。

また、Wayback Machine CDX APIには、フィルターを適用したときに返されるページ数が正しくないという問題があり、問題を引き起こす可能性があります(https://github.com/internetarchive/wayback/issues/243 を参照)。その問題が解決されるまでは、`-lr` 引数を適切な値に設定することで、短期的にその問題を軽減できます。

Common Crawl APIは長い間多くの問題を抱えています。このソースを含めると、waymore の実行にかなり時間がかかる可能性があり、追加の結果が得られない場合があります。http://index.commoncrawl.org/collinfo.json にアクセスして、成功するかどうかを確認することで、問題があるかどうかを確認できます。`--providers` 引数を使用して `commoncrawl` を含めないか、`-xcc` 引数を使用してCommon Crawlを完全に除外することを検討してください。

**プロバイダーAPIサーバーは大量のトラフィックを処理するように設計されていないため、何を送信するかについて常識的かつ思慮深く行動してください!**

アーカイブされたレスポンスをダウンロードするとき、これには長い時間がかかる可能性があり、何らかの理由でマシンによって強制終了されたり、ユーザーによって手動で終了されたりする可能性があります。
ターゲットの `results` ディレクトリに、プロセスの開始時に `responses.tmp` というファイルが作成され、取得されるすべてのレスポンスURLが含まれます。また、`continueResp.tmp` というファイルも作成され、最後に取得されたレスポンスのインデックスが保存されます。waymore がレスポンスを取得するために実行され(`-mode R` または `-mode B`)、これらのファイルが存在する場合、以前の不完全な実行があったことを意味し、その実行を続行するかどうか尋ねられます。その場合、中断したところから続行されます。

## 基本的な例

### 例1

`redbull.com` のURLをすべてのソースから取得します(`-mode U` はURLのみで、レスポンスはダウンロードされません):

<center><img src="https://raw.githubusercontent.com/xnl-h4ck3r/waymore/main/waymore/images/example1.png"></center>

URLは、`config.yml` と同じパス(通常は `~/.config/waymore`)の `results/redbull.com/waymore.txt` に保存されます。

### 例2

`redbull.com` のすべてのURLをWaybackから取得します(`mode U` で `-f` を使用した場合、フィルターは適用されず、`-xcc`、`-xav`、`-xus`、`-xvt` がそれぞれ渡されているため、Commone Crawl、Alien Vault、URLScan、Virus TotalからはURLが取得されません。これは、除外引数の代わりに `--providers wayback` を渡すことでも実現できます)。
見つかった最初の200のレスポンスを2022年から保存します(`-l 200 -from 2022`):

<center><img src="https://raw.githubusercontent.com/xnl-h4ck3r/waymore/main/waymore/images/example2.png"></center>

`-mode` は明示的に設定されていないため、デフォルトの `B`(両方 - URLとレスポンスの両方を取得)になります。
各ユニークなレスポンスに対してファイルが作成され、`results/redbull.com/` にも保存されます:

<center><img src="https://raw.githubusercontent.com/xnl-h4ck3r/waymore/main/waymore/images/example3.png"></center>

また、`results/redbull.com/index.txt` ファイルが作成され、どのURLがどのファイルのレスポンスを提供したかが記録されます。例:```
4847147712618,https://web.archive.org/web/20220426044405/https://www.redbull.com/additional-services/geo ,2022-06-24 20:07:50.603486

ここで 4847147712618 は、4847147712618.xnl 内のレスポンスのハッシュ値であり、2 番目の値は実際にアーカイブされたページを表示できる Wayback Machine URL、3 番目の値はレスポンスがダウンロードされた時刻のタイムスタンプです。

Example 3

waymore を他のツールにパイプすることができます。エラーは stderr に送信され、見つかったリンクは stdout に送信されます。リンクが次のプログラムにパイプされるだけでなく、出力ファイルも依然として作成されます。ただし、アーカイブされたレスポンスは次のプログラムにパイプされませんが、ファイルには書き込まれます。例:``` waymore -i redbull.com -mode U | unfurl keys | sort -u

root@kitploit:~
入力は `-i` の代わりに `stdin` 経由で渡すこともできます。```
cat redbull_subs.txt | waymore

例 4

特定のドメインに対していくつのリクエストが必要か、waymore の実行にどれくらい時間がかかるかを確認したいだけの場合があります。-co/--check-only 引数を使うことで簡単に確認できます。例:``` waymore -i redbull.com --check-only

root@kitploit:~
<center><img src="https://raw.githubusercontent.com/xnl-h4ck3r/waymore/main/waymore/images/example4.png"></center>

## さらに多くのURLを見つけよう!

さて、多くのアーカイブされたレスポンスを手に入れたので、追加のリンクを見つけたいですか?簡単です![xnLinkFinder](https://github.com/xnl-h4ck3r/xnLinkFinder)を使ってみませんか?
例えば:```
xnLinkFinder -i ~/Tools/waymore/results/redbull.com -sp https://www.redbull.com -sf redbull.com -o redbull.txt

または、アーカイブされたレスポンスからさらに多くの情報を見つけるために、trufflehog や gf などのツールを実行することもできます。

詳細な説明

以下は、2024年3月に Jason Haddix の Discord チャンネル で行った、waymore について知っておくべき すべて をカバーした詳細なトークです。

注意: この動画は2024年3月のものです。その後に追加された機能は含まれておらず、一部の機能は変更されている可能性があります。現在の指示を必ず再確認してください。

waymore talk

問題点

何か問題に遭遇した場合や改善のアイデアがある場合は、GitHub で気軽に Issue を立ててください。問題がある場合は、実行した正確なコマンドと問題の詳細な説明を提供していただけると助かります。可能であれば、-v を付けて実行して問題を再現し、表示されるエラーメッセージをお知らせください。

TODO

  • 出力に含めず、レスポンスもダウンロードしない Out Of Scope のサブドメイン/URL のファイルを受け付ける -oos 引数を追加する。
  • 同じ入力に対して -mode R または -mode B で複数回実行した場合、waymore_index.txt が重複排除されない。
  • ソースから並行して取得するように書き直す。現在は順次実行されています、すみません!

参考文献

  • Wayback CDX Server API - BETA
  • Common Crawl Index Server
  • Alien Vault OTX API
  • URLScan API
  • VirusTotal API (v2)
  • Intelligence X SDK
  • GhostArchive

頑張って、いい狩りを! もしこのツール(または他のツール)が本当に気に入った場合、あるいは素晴らしいバウンティを見つけるのに役立った場合、コーヒーを買ってあげてください! ☕(カフェインが必要なんです!)

🤘 /XNL-h4ck3r

ツールをダウンロード
-oR
config.yml
DEFAULT_OUTPUT_DIR
~/.config/waymore/
/results
-i
-i
-oU ~/Recon/Redbull/waymoreUrls.txt
config.yml
DEFAULT_OUTPUT_DIR
~/.config/waymore/
/results
-i
-i
-oR ~/Recon/Redbull/waymoreResponses
config.yml
FILTER_CODE
config.yml
config.yml
FILTER_MIME
config.yml
注:これはAlien Vault OTX、Virus Total、Intelligence Xには適用されません。これらのソースはMIMEタイプでフィルタリングする機能がないためです。URLScanではMIMEタイプが定義されていない場合がありますが、その場合は常に含まれます。これが重要な場合は、ソースの除外を検討してください。
FILTER_CODE
-fc
FILTER_MIME
-ft
注:これはAlien Vault OTX、Virus Total、Intelligence Xには適用されません。これらのソースはMIMEタイプでフィルタリングする機能がないためです。URLScanではMIMEタイプが定義されていない場合がありますが、その場合は常に含まれます。これが重要な場合は、ソースの除外を検討してください。
-mode R
-mode B
最初のN個
最後のN個
すべての
2016
201805
重要:日付制限内でURLを取得できないソースがいくつかあります:Virus Total - 既知のすべてのサブドメインは引き続き返されます;Intelligence X - すべてのURLは引き続き返されます。
2021
202112
重要:日付制限内でURLを取得できないソースがいくつかあります:Virus Total - 既知のすべてのサブドメインは引き続き返されます;Intelligence X - すべてのURLは引き続き返されます。
h
d
m
d
none
ヒント:肯定的なマッチのみが出力されます。シェル展開を避けるために一重引用符を使用してください(例:-ra '\.js(\?\|$)')
-lcc 10
10
0
すべての
-xcc
config.yml
SOURCE_IP
config.yml
~/.config/waymore/
FILTER_KEYWORDS
-ko "admin"
admin
-ko "\.js(\?.*\|$)"
注:このパターンはWayback CDX APIでの近似事前フィルターとして使用され(.*pattern.*でラップされるため、CDXレベルではアンカー$などが期待通りに動作しない可能性があります)、その後ローカルでPython正規表現として正確に適用されます。$などの特殊文字のシェル展開を避けるために一重引用符を使用してください。
waymore.txt
-oU
waymore.new
-oU
.new
mode U
mode R
-mode U
-v
-oU
~/.config/waymore
config.yml
429
429
config.yml
WEBHOOK_DISCORD
config.yml
TELEGRAM_BOT_TOKEN
TELEGRAM_CHAT_ID
-mode R
-mode B
combinedInline{}.js
{}
combinedInlineSrc.txt
src