【注意】このサイトに記載されていることを他人に試すことは「不正アクセス禁止法」に該当する場合があります。詳しくはこちらから

ハッカーはamassでネットワークマッピングと情報収集偵察を行います。(Kali Linuxツール説明)

ホワイトハッカーの知識

ドメイン情報を収集するamassのツールを理解するためにまとめてみました。
このamassの動作確認は自分のドメインでテストを行っています。

amassとは

ホワイトハッカーがターゲット(調査対象)について詳しい情報を集めるためのツールです。簡単に言うと、インターネット上で「この会社やサイトにはどんな秘密がないか」を探す探偵のような役割をします。
特に「サブドメイン」と呼ばれる、ある会社が持っている小さなウェブサイトの名前をたくさん見つけることが得意です。
 
たとえば「example.com」というドメインがあったとします。このツールを使うと、
www.example.com
mail.example.com
shop.example.com
など、その会社が持っている他の小さなサイト(サブドメイン)を全部見つけることができます。
 
 

機能

・DNS列挙
AmassはDNSクエリーを利用してサーバーから情報を取得し、ターゲットのドメインネームシステムに関する詳細を明らかにします。
 
・検索エンジンのデータスクレイピング
検索エンジンをナビゲートし、ウェブサイト、ソーシャルメディア・プロファイル、各種オンライン・プラットフォームなど、ターゲットのオンライン・プレゼンスに関する適切なデータを抽出します。
 
・ウェブページ・クローリング
ターゲットのウェブページを体系的にスキャンし、特にウェブアプリケーションの潜在的な脆弱性や攻撃ベクトルを積極的に探し出します。
 
・IP逆引き調査
ターゲットと同じIPアドレスを共有するドメインを調査し、潜在的な攻撃経路を発見します。
 
 

ツールの場所

[Applications]→[01-Information Gathering]→[amass]
 
 

ツールと使用方法

amass intel | enum [options]
 
例 amass enum -d livaspacenter.com
注意:livaspacenter.comは私のドメインです。
 
※ホワイトハッカーはAmassの出力結果を見て、次のような分析やアクションを行います。
 
1.サブドメインの特定と検証
Amassの出力により、ターゲットのドメインに関連するサブドメイン(例:www.example.com、mail.example.comなど)が一覧表示されます。ホワイトハッカーはこのリストをもとに、公開されているサービスやサーバーの確認を行い、各サブドメインに脆弱性がないかをチェックします。
 
2.古い・不要な資産の特定
出力結果から、ターゲットが管理しきれていない古いサーバーやテスト用に設置されたサービスが見つかることがあります。これらはセキュリティリスクになることが多いため、ターゲットに改善を提案します。
 
3.公開範囲の確認
Amassは外部からアクセス可能な資産をマッピングするので、ホワイトハッカーは意図せず公開されているサービスや情報がないかを確認します。もし不要なものが見つかれば、削除やアクセス制限の提案を行います。
 
4.リスクの優先順位付け
出力結果から、特にセキュリティリスクが高いと考えられる資産を特定し、優先的に脆弱性テストを行います。これには、よく使われるウェブアプリケーションや機密情報にアクセスできるシステムが含まれます。
 
5.アタックサーフェス(攻撃表面)のマッピング
Amassによって生成されたネットワーク図をもとに、ホワイトハッカーは外部から攻撃されやすいポイントや、潜在的な侵入経路を分析します。この情報は、ターゲットに攻撃経路を減らすための対策を提案するために使用されます。
 
6.後続のテスト準備
Amassの結果をもとに、次に実施するテスト(例:サブドメインでの脆弱性スキャンやWebアプリケーションのセキュリティテストなど)を計画します。Amassは情報収集の段階に役立つため、発見した資産についてさらに深いテストを行うステップに進みます。
 
 

オプション(options)

【注意】amassのユーザーガイドより、オプションを抽出していますが、一部Kali Linuxで動作しないオプションもあるようです。ご注意願います。

-h, –help

show this help message and exit.
このヘルプ メッセージを表示して終了します。
 
※amass ツールには、インターネット露出調査を処理するための以下に示す、3つのサブコマンドがあります。
 
1.intelサブコマンド
対象組織の調査のためにオープンソースの情報を収集します。
 
2.enumサブコマンド
インターネットに公開されているシステムのDNS列挙とネットワークマッピングを実行します。
 
3.dbサブコマンド
列挙結果を保存するグラフデータベースを管理します。
 

intelサブコマンド

intel サブコマンドは、調査対象の組織に関連付けられている追加のルート ドメイン名を見つけるのに役立ちます。このサブコマンドは、逆 Whois 情報などのパッシブ インテリジェンスを取得するために、構成ファイルのデータ ソース セクションを使用します。
 
-active
Enable active recon methods.
アクティブ偵察方法を有効にする。
例:amass intel -active -addr 192.168.2.1-64 -p 80,443,8080
 
-addr
IPs and ranges (192.168.1.1-254) separated by commas.
IP と範囲 (192.168.1.1-254) をカンマで区切る。
例:amass intel -addr 192.168.2.1-64
 
-asn
ASNs separated by commas. (can be used multiple times)
カンマで区切られた ASN。(複数回使用可能)
例:amass intel -asn 13374,14618
 
-cidr
CIDRs separated by commas. (can be used multiple times)
カンマで区切られた CIDR。(複数回使用可能)
amass intel -cidr 104.154.0.0/15
 
-d
Domain names separated by commas. (can be used multiple times)
ドメイン名はカンマで区切られます。(複数回使用できます)
例:amass intel -whois -d example.com
 
 
-demo
Censor output to make it suitable for demonstrations.
デモに適した出力に検閲する。
例:amass intel -demo -whois -d example.com
 
-df
Path to a file providing root domain names.
ルートドメイン名を提供するファイルへのパス。
amass intel -whois -df domains.txt
 
-ef
Path to a file providing data sources to exclude.
除外するデータソースを提供するファイルへのパス。
例:amass intel -whois -ef exclude.txt -d example.com
 
-exclude
Data source names separated by commas to be excluded.
除外するデータソース名をカンマで区切って指定します。
amass intel -whois -exclude crtsh -d example.com
 
-if
Path to a file providing data sources to include.
含めるデータソースを提供するファイルへのパス。
例:amass intel -whois -if include.txt -d example.com
 
-include
Data source names separated by commas to be included.
含めるデータソース名はカンマで区切られます。
例:amass intel -whois -include crtsh -d example.com
 
-ip
Show the IP addresses for discovered names.
検出された名前のIPアドレスを表示する。
amass intel -ip -whois -d example.com
 
-ipv4
Show the IPv4 addresses for discovered names.
検出された名前の IPv4 アドレスを表示する。
例:amass intel -ipv4 -whois -d example.com
 
-ipv6
Show the IPv6 addresses for discovered names.
検出された名前の IPv6 アドレスを表示する。
例:amass intel -ipv6 -whois -d example.com
 
-list
Print the names of all available data sources.
利用可能なすべてのデータソースの名前を印刷します。
例:amass intel -list
 
-log
Path to the log file where errors will be written.
エラーが書き込まれるログファイルへのパス。
例:amass intel -log amass.log -whois -d example.com
 
-o
Path to the text output file.
テキスト出力ファイルへのパス。
例:amass intel -o out.txt -whois -d example.com
 
-org
Search string provided against AS description information.
AS 記述情報に対して提供された検索文字列。
例:amass intel -org Facebook
 
-p
Ports separated by commas. (default: 80, 443)
カンマで区切られたポート。(デフォルト: 80、443)
例:amass intel -cidr 104.154.0.0/15 -p 443,8080
 
-r
IP addresses of preferred DNS resolvers. (can be used multiple times)
優先 DNS リゾルバの IP アドレス。(複数回使用可能)
例:amass intel -r 8.8.8.8,1.1.1.1 -whois -d example.com
 
-rf
Path to a file providing preferred DNS resolvers.
優先 DNS リゾルバを提供するファイルへのパス。
例:amass intel -rf data/resolvers.txt -whois -d example.com
 
-timeout
Number of minutes to execute the enumeration.
列挙を実行する時間(分)。
例:amass intel -timeout 30 -d example.com
 
-v
Output status / debug / troubleshooting info.
ステータス/デバッグ/トラブルシューティング情報の出力。
例:amass intel -v -whois -d example.com
 
-whois
All discovered domains are run through reverse whois.
発見されたドメインはすべてリバースwhoisを通じて実行されます。
例:amass intel -whois -d example.com
 

enumサブコマンド

このサブコマンドは、選択したグラフ データベースにデータを入力しながら、DNS 列挙とネットワーク マッピングを実行します。構成ファイルで使用可能なすべての設定は、このサブコマンドに関連します。構成には次のフラグを使用できます。
 
※モードの説明
1.通常
アクティブまたはパッシブ フラグを指定せずに enum サブコマンドを実行すると、データ ソースから列挙がシードされ、DNS を利用して検出結果を検証し、スコープ内の名前空間(指定されたドメイン名)をさらに調査します。
例:amass enum -d example.com
 
2.アクティブ
通常モードのすべてを実行し、検出された資産にアクセスして TLS 証明書の取得、DNS ゾーン転送の実行、NSEC ウォーキングの使用、Web クロールの実行を試行します。
例:amass enum -active -d example.com -p 80,443,8080
 
3.受動型
データ ソースから情報を取得し、それを盲目的に受け入れるだけです。
例:amass enum –passive -d example.com
 
 
-active
Enable active recon methods.
アクティブ偵察方法を有効にする。
例:amass enum -active -d example.com -p 80,443,8080
 
-alts
Enable generation of altered names.
変更された名前の生成を有効にする。
例:amass enum -alts -d example.com
 
-aw
Path to a different wordlist file for alterations.
変更のための別の単語リストファイルへのパス。
例:amass enum -aw PATH -d example.com
 
-awm
“hashcat-style" wordlist masks for name alterations.
名前変更のための「hashcat スタイル」の単語リスト マスク。
例:amass enum -awm dev?d -d example.com
 
-bl
Blacklist of subdomain names that will not be investigated.
調査されないサブドメイン名のブラックリスト。
例:amass enum -bl blah.example.com -d example.com
 
-blf
Path to a file providing blacklisted subdomains.
ブラックリストに登録されたサブドメインを提供するファイルへのパス。
amass enum -blf data/blacklist.txt -d example.com
 
-brute
Perform brute force subdomain enumeration.
ブルートフォースサブドメイン列挙を実行する。
例:amass enum -brute -d example.com
 
-d
Domain names separated by commas. (can be used multiple times)
ドメイン名はカンマで区切られます。(複数回使用できます)
例:amass enum -d example.com
 
-demo
Censor output to make it suitable for demonstrations.
ブルートフォースサブドメイン列挙を実行する。
例:amass enum -demo -d example.com
 
-df
Path to a file providing root domain names.
ルートドメイン名を提供するファイルへのパス。
例:amass enum -df domains.txt
 
-dns-qps
Maximum number of DNS queries per second across all resolvers.
すべてのリゾルバにおける 1 秒あたりの DNS クエリの最大数。
例:amass enum -dns-qps 200 -d example.com
 
-ef
Path to a file providing data sources to exclude.
除外するデータソースを提供するファイルへのパス。
例:amass enum -ef exclude.txt -d example.com
 
-exclude
Data source names separated by commas to be excluded.
除外するデータソース名をカンマで区切って指定します。
例:amass enum -exclude crtsh -d example.com
 
-if
Path to a file providing data sources to include.
含めるデータソースを提供するファイルへのパス。
例:amass enum -if include.txt -d example.com
 
-iface
Provide the network interface to send traffic through.
トラフィックを送信するためのネットワークインターフェースを提供する。
例:amass enum -iface en0 -d example.com
 
-include
Data source names separated by commas to be included.
含めるデータソース名はカンマで区切られます。
例:amass enum -include crtsh -d example.com
 
-ip
Show the IP addresses for discovered names.
検出された名前のIPアドレスを表示する。
例:amass enum -ip -d example.com
 
-ipv4
Show the IPv4 addresses for discovered names.
検出された名前の IPv4 アドレスを表示する。
例:amass enum -ipv4 -d example.com
 
-ipv6
Show the IPv6 addresses for discovered names.
検出された名前の IPv6 アドレスを表示する。
例:amass enum -ipv6 -d example.com
 
-list
Print the names of all available data sources.
利用可能なすべてのデータソースの名前を印刷します。
例:amass enum -list
 
-log
Path to the log file where errors will be written.
エラーが書き込まれるログファイルへのパス。
例:amass enum -log amass.log -d example.com
 
-max-depth
Maximum number of subdomain labels for brute forcing.
ブルートフォース攻撃のサブドメインラベルの最大数。
例:amass enum -brute -max-depth 3 -d example.com
 
-min-for-recursive
Subdomain labels seen before recursive brute forcing. (Default: 1)
再帰ブルートフォース攻撃の前に表示されるサブドメイン ラベル。(デフォルト: 1)
例:amass enum -brute -min-for-recursive 3 -d example.com
 
-nf
Path to a file providing already known subdomain names. (from other tools/sources)
既知のサブドメイン名を提供するファイルへのパス。(他のツール/ソースから)
例:amass enum -nf names.txt -d example.com
 
-norecursive
Turn off recursive brute forcing.
再帰的なブルートフォース攻撃をオフにする。
例:amass enum -brute -norecursive -d example.com
 
-o
Path to the text output file.
テキスト出力ファイルへのパス。
例:amass enum -o out.txt -d example.com
 
-oA
Path prefix used for naming all output files.
すべての出力ファイルの命名に使用されるパスプレフィックス。
例:amass enum -oA amass_scan -d example.com
 
-p
Ports separated by commas. (default: 443)
カンマで区切られたポート。(デフォルト: 443)
例:amass enum -d example.com -p 443,8080
 
-passive
A purely passive mode of execution.
完全に受動的な実行モード。
amass enum -passive -d example.com
 
-r
IP addresses of untrusted DNS resolvers. (can be used multiple times)
信頼できない DNS リゾルバの IP アドレス。(複数回使用可能)
例:amass enum -r 8.8.8.8,1.1.1.1 -d example.com
 
-rf
Path to a file providing untrusted DNS resolvers.
信頼できない DNS リゾルバを提供するファイルへのパス。
例:amass enum -rf data/resolvers.txt -d example.com
 
-rqps
Maximum number of DNS queries per second for each untrusted resolver.
信頼できないリゾルバごとの 1 秒あたりの DNS クエリの最大数。
例:amass enum -rqps 10 -d example.com
 
-scripts
Path to a directory containing ADS scripts.
ADS スクリプトを含むディレクトリへのパス。
例:amass enum -scripts PATH -d example.com
 
-timeout
Number of minutes to execute the enumeration.
列挙を実行する時間(分)。
例:amass enum -timeout 30 -d example.com
 
-tr
IP addresses of trusted DNS resolvers. (can be used multiple times)
信頼できる DNS リゾルバの IP アドレス。(複数回使用可能)
例:amass enum -tr 8.8.8.8,1.1.1.1 -d example.com
 
-trf
Path to a file providing trusted DNS resolvers.
信頼できる DNS リゾルバを提供するファイルへのパス。
例:amass enum -trf data/trusted.txt -d example.com
 
-trqps
Maximum number of DNS queries per second for each trusted resolver.
信頼できるリゾルバごとの 1 秒あたりの DNS クエリの最大数。
例:amass enum -trqps 20 -d example.com
 
-v
Output status / debug / troubleshooting info.
ステータス/デバッグ/トラブルシューティング情報の出力。
例:amass enum -v -d example.com
 
-w
Path to a different wordlist file for brute forcing.
ブルートフォース用の別の単語リストファイルへのパス。
例:amass enum -brute -w wordlist.txt -d example.com
 
-wm
“hashcat-style" wordlist masks for DNS brute forcing.
DNS ブルートフォース攻撃用の「hashcat スタイル」ワードリスト マスク。
例:amass enum -brute -wm ?l?l -d example.com
 
 

amassのまとめ

Amassは、ホワイトハッカーが情報収集や偵察活動に利用するオープンソースのツールで、ターゲットのサブドメインやネットワーク情報を効率的に収集します。
複数のデータソースから情報を取得し、公開されているが未管理の外部資産を発見することで、セキュリティ上のリスクを特定します。
Amassは、セキュリティリスクの可視化と対策提案を支援する重要なツールです。