Amass(2)

Kalilinux
この記事は約6分で読めます。

今回は前回に引き続き ” amass ” の続編です。

今回はブルートフォースモードについて補足します。

関連してDNSリゾルバの検証ツールの ” dnsvalidator ” についても触れます。

Amassの ” -brute ” オプション

Amassのブルートフォースのオプションを実行してみます。

ワードリストは内蔵のデフォルトのものを使用します。

ターゲットは前回と同じフィッシングサイトです。

合計153個列挙されています( ” -bute ” オプション無しの時より、41個多く見つかっています)

但し時間は1時間近くかかりました。

サブドメイン探索用のwordlistについて

” -blute ” オプションにてブルートフォーシングを行います。(activeモードとなりますので、こちらの調査行為の痕跡が残ります)

デフォルトでは内部に持つワードリストを使用しますが、デフォルト以外のワードリストを指定( ” -w ” オプション)することが出来ます。

これについてChatGPT先生に質問した所、おすすめワードリストを教えてくれました。

イチオシ

GitHub: https://github.com/danielmiessler/SecLists

から、以下の3つ。

パス内容用途
Discovery/DNS/subdomains-top1million-5000.txt上位5000のサブドメイン標準的な調査に最適
Discovery/DNS/bitquark-subdomains-top100000.txt10万件超の辞書高精度な調査向け(やや重い)
Discovery/DNS/namelist.txtよくあるサブドメイン名軽量で速い、初期スキャン向け

スピード重視

同じくGitHubから、

  • namelist.txt
  • subdomains-top1million-11000.txt(1万件前後)

👉 DNSブルートフォースを高速に回したいときに最適。

精度重視

同じくGitHubから、

  • bitquark-subdomains-top100000.txt
  • dns-Jhaddix.txt(JHaddixがメンテしてた実践向けリスト)

👉 企業リコンやバグバウンティなどで見落としを減らしたいとき。

DNSリゾルバの指定について

amassはDNSの問い合わせを大量にしまくるツールですが、その問い合わせ先はDNSリゾルバです。

DNSリゾルバとは

ドメイン名とIPアドレスの変換を担うサーバーをDNSリゾルバと言います。

DNSサーバーと名前や機能が似ていますが、
DNSサーバーは最終的な問い合わせ先であり、ドメイン・IP変換の正確な回答を持っています。
DNSリゾルバはユーザーの代理でこれを問い合わせてくれる代理サーバーです。

DNSサーバーDNSリゾルバ
役割正式な答えを保持するユーザーの代理で答えを探す
別名権威DNSサーバー
(Authoritative)
再帰リゾルバ
(Recursive Resolver)

DNSリゾルバはネット上に多数ありますが、その性能は実は均一ではなく、優秀なもの(速くて大量の処理が出来るもの)とそうでないものが混在しています。

Amassのbruteモードでは大量の問い合わせを行うので、予め優秀なDNSリゾルバを調べてリストにしておき、調査時にこれを使うのがbetterです。

優秀なDNSリゾルバリストの入手

優秀なDNSリゾルバのリストを入手するツールに ” dnsvalidator ” があります。まずはこのツールを入手します。

dnsvalidatorのダウンロード

GitHub: https://github.com/vortexau/dnsvalidator

まずは念の為、dnsvalidatorを探してみます。

案の定見つかりません。

念の為 ” apt install ” を試してみます。

sudo apt update
sudo apt install dns validator

aptではインストールもできません。

よってGitHubから落として来ます。

無事ダウンロード出来ました。

ホーム下の ” /dnsvalidator ” ディレクトリに移動しておきます。

dnsvalidatorのインストール

下記コマンドでインストールします(最後の ” . ” を忘れないように

無事インストールできました。

参考

以前はpipを用いてのインストールだったようですが、kali2024.4からpipxでのインストールに変更となりました

pipを使うと下記のような警告が出ます。

kaliの解説ページには、pipはaptと干渉する可能性があるので使用は推奨しない。まずはaptで試して、それがダメならpipxでとなっています。

” apt serach ” でaptでのインストールが出来るかどうかが検索できます。

何もない場合、 ” apt ” は使えないということ。

dnsvalidatorの実行

同時並列進行200列 ( -threads 200 )で優秀なDNSリゾルバを検索します。

出力結果は ” resolvers.txt ” に保存します。

[ACCEPTED]となっているものは当たりのDNSリゾルバです。

1037個の「当たりDNSリゾルバ」を見つけています。

探索時間は約10分かかっています。

リストファイルの確認

収穫された「当たりDNSリゾルバ」のリストです。

ファイル内には確かに1037個あります。

参考

元の ” https://public-dns.info/nameservers.txt ” には62790個のDNSリゾルバのリストがあります。

この中から1037個(上位0.0165%)の優秀なDNSリゾルバを選んだわけです。

DNSリゾルバを指定してのamass実行

それでは優秀なDNSリゾルバを集めて作ったリストを使用して実行してみます。

ターゲットは上記と同じサイトです。

時間は4分しかかかりませんでした。約15倍の時間短縮です。

まとめ

今回は、前回紹介したサブドメインの調査ツール ” amass ” のブルートフォースモードについて、辞書ファイルとDNSリゾルバの指定リスト作りについて投稿しました。

コメント

タイトルとURLをコピーしました