Metasploit3でハッキングの初歩から楽しく学ぶ(3-1) Auxiliary Modules (偵察モジュール)で何ができるのか。【スキャナー系】
ペネトレーションテスト&バグバウンティMetasploit

今回は「Auxiliary Modules (偵察モジュール)」の「スキャナー系」を見ていきましょう。
「おさるさんでもわかるMetasploit3」ぐらいの気持ち(?)で解説していこうと思います。

※Auxiliary Modulesの読み方は、オーグゼイリアリ モジュールと読みます。
ちなみに、本来のAuxiliaryの意味は「補助」です。
目次
Auxiliary Modules (偵察モジュール)
Auxiliaryモジュールは、Metasploit Frameworkで様々な補助的なタスクを実行するためのモジュールです。
攻撃を実行するのではなく、様々な偵察などの補助的な機能を提供します。
以下によく利用されるAuxiliaryモジュールとその機能を紹介します。
・スキャナー系 (例: auxiliary/scanner/http/dir_scanner)
機能: 指定されたウェブサイトやホストに対してディレクトリスキャンを行い、存在するディレクトリを探します。
・ポートスキャン系 (例: auxiliary/scanner/portscan/tcp)
機能: 指定されたホストやネットワーク範囲に対してTCPポートスキャンを行い、開いているポートを検出します。
・バナースクリプト系 (例: auxiliary/scanner/http/http_version)
機能: 指定されたウェブサイトやホストに対してHTTPバージョンなどの情報を取得します。
・脆弱性スキャン系 (例: auxiliary/scanner/http/joomla_version_sql)
機能: Joomla CMSのバージョンを特定し、脆弱性を探します。
・データベース系 (例: auxiliary/admin/mssql/mssql_enum)
機能: Microsoft SQL Serverに対して情報を収集します。
これらは一般的なAuxiliaryモジュールの例ですが、Metasploit Frameworkにはさまざまなモジュールが存在します。
後ほど、Auxiliaryモジュールの一覧表示方法をご説明します。
それでは、Metasploitの環境を立ち上げましょう。
Metasploitの環境が無い方は、こちらをご覧ください。
「Metasploit3でハッキングの初歩から楽しく学ぶ(1) Metasploit3の概要とインストール」
Kali LinuxでのMetasploit frameworkの起動方法
1.Oracle VM VirtualBoxを起動します。

2.Kali-Linux-2023...を選択して、起動ボタンを押下します。

3.Kali Linuxのログイン画面が表示されるので、
ID:kali
PASS:kali
を入力して「Log in」ボタンを押下します。
※IDとPASSを変更されている方は変更した情報を入力願います。

4.Kali Linuxが立ち上がりました。

5.画面上部左の「Applications」ボタンを押下し、
「08-Exploitation Tools」から「metasploit framework」を選択します。

6.kaliのパスワードの入力が求められるので「kali」と入力してEnterボタンを押下します。

7.Metasploit Frameworkが立ち上がりました。

Metasploit3の起動方法
1.Metsploitable3-ub...を選択して、起動ボタンを押下します。

2.Ubuntuのログイン画面が表示されるので、
login:vagrant
password:vagrant
を入力して「Enter」ボタンを押下します。

3.Ubuntuにログインできました。
※これで、Oracle VM VirtualBox上に「Kali linux」と「Ubuntu」が立ち上がりました。

ちなみに、このMetasploit3のIPアドレスは10.0.2.4になります。
Auxiliaryモジュールの一覧表示方法
Auxiliaryモジュールの一覧を表示してみましょう。
1.Metasploit frameworkのコンソール画面で
"show auxiliary"コマンドを入力し、Enterボタンを押下します。

2.Auxiliaryモジュールの一覧が表示されました。

:

スキャナー系の確認(dir_scanner)
auxiliary/scanner/http/dir_scannerモジュールは、HTTPサーバー上のディレクトリをスキャンして存在するかどうかを確認するために使用されます。
主な目的は、Webアプリケーションのディレクトリ構造を調査し、潜在的なセキュリティ上の問題を特定することです。
【dir_scannerの実行結果】

それでは、順に操作を見ていきましょう。
1.auxiliary/scanner/http/dir_scannerモジュールを選択します。
msf6 > use auxiliary/scanner/http/dir_scanner
2.スキャン対象のホストを設定します。
msf6 auxiliary(scanner/http/dir_scanner) > set RHOSTS 10.0.2.4
※今回は、先ほど立ち上げたMetasploit3のIPアドレスを設定しています。
3.ホストが指定されました。
RHOSTS => 10.0.2.4
4.スキャン対象のURIを設定します。
msf6 auxiliary(scanner/http/dir_scanner) > set TARGETURI /var/
※MetasploitにおけるURIとは、Uniform Resource Identifierの略で、特定のリソースを識別するための文字列です。Metasploitのコンテキストでは、主にHTTPリクエストを行う際に使用される対象のウェブサーバー上のリソースを指します。
例えば、/var/や/webapp/などの文字列がURIの一例になります。
これはウェブアプリケーションやウェブサイトの特定のページやディレクトリを識別するために使用され、URIが攻撃の対象となるウェブサーバー上のリソースを指定するのに利用されます。
5.URIが設定されました。
[!] Unknown datastore option: TARGETURI.
TARGETURI => /var/
6.スキャンを実行します。
msf6 auxiliary(scanner/http/dir_scanner) > run
7.以下は実行結果です。
[*] Detecting error code
※エラーコードの検出
[*] Using code '404' as not found for 10.0.2.4
※"using code '404' as not found for" という表現は、MetasploitにおいてHTTPステータスコード '404 Not Found' を「not found」(見つからなかった)の代わりに使用することを指しています。これは主にウェブサーバーに対するディレクトリ探索などの攻撃時に利用されます。
HTTPステータスコードは、ウェブサーバーからのHTTPリクエストに対する応答として送信されます。'404 Not Found' ステータスコードは、クライアントが要求したリソースが見つからなかったことを示します。攻撃者はこのステータスコードを活用して、対象のウェブサーバー上で存在しないディレクトリやファイルを特定するための手法を指定していることがあります。
[+] Found http://10.0.2.4:80/cgi-bin/ 404 (10.0.2.4)
※http://10.0.2.4:80/cgi-bin/ 404 (10.0.2.4) が見つかりました
[+] Found http://10.0.2.4:80/chat/ 404 (10.0.2.4)
[+] Found http://10.0.2.4:80/icons/ 404 (10.0.2.4)
[+] Found http://10.0.2.4:80/phpmyadmin/ 200 (10.0.2.4)
[+] Found http://10.0.2.4:80/uploads/ 404 (10.0.2.4)
[*] Scanned 1 of 1 hosts (100% complete)
※1 台のホストのうち 1 台をスキャンしました (100% 完了)
[*] Auxiliary module execution completed
※偵察(補助)モジュールの実行が完了しました
スキャンが実行され、結果が表示されました。
Metasploitは存在するディレクトリを見つけた場合に [+] Found directory と表示されます。スキャン対象のURI内で見つかったディレクトリがリストで表示されました。
Metasploit3でハッキングの初歩から楽しく学ぶ(3-1) Auxiliary Modules (偵察モジュール)で何ができるのか。【スキャナー系】のまとめ
Metasploitのスキャナー系の一つである、dir_scannerを実行してみました。
Metasploitのスキャナーモジュールは全部で626あります。
各モジュールの説明は 'info' コマンドで参照できるので、確認して使ってみてはいかがでしょうか。

ペネトレーションテスト&バグバウンティMetasploit
Posted by whitemarkn
関連記事

ハッカーの視点から学ぶペネトレーションテスト(4) ペネトレーションテストのフェーズ
ハッカーの視点から学ぶペネトレーションテストの第四回目は「ペネトレーションテスト ...

バグハンターが利用するアプリ「Burp Suite」を徹底的に使いこなす。パート5 Burp Suiteの「Repeater」の機能を用いてSQLインジェクションの確認を行う
Burp Suiteの「Repeater」の機能を使って、やられサーバであるDV ...

ハッカーはdirbコマンドでウェブサイトの裏側にあるディレクトリやファイルから脆弱性を見つける
dirb(ディレクトリバスター)コマンドは、ウェブサイトやウェブアプリケーション ...

ハッカーはハッキング時にまず、対象のサイトからIPアドレスを取得する
ハッカーがハッキングや、ペネトレーションテスト、バグハンティングを行う際に最初に ...

ハッカーがサイトをハッキングするとき、最初にするのは情報収集 (Reconnaissance)
ハッカーは、いきなりサイトを攻撃することはありません。 それは、ペネトレーション ...