Metasploit のインストールと初期設定

LinuxBeginner
オンラインで実践に進む

はじめに

Metasploit のインストールと初期設定の実験 (Lab) へようこそ。Metasploit Framework は、リモートターゲットマシンに対するエクスプロイトコードの開発、テスト、実行に使用される強力なオープンソースツールです。これは、ペネトレーションテストおよびセキュリティリサーチで最も広く使用されているツールの一つです。

この実験では、Ubuntu システム上で Metasploit を完全にセットアップし、実行するまでの全プロセスを順を追って説明します。まず、システムのパッケージを更新し、次に Metasploit Framework をインストールし、必要な PostgreSQL データベースを設定し、最後に Metasploit コンソールを起動します。この実験の終わりまでに、すぐに使用できる完全に機能する Metasploit 環境が整っていることになります。

apt update および apt upgrade による Ubuntu パッケージの更新

このステップでは、システムのパッケージリストを更新し、古いパッケージをアップグレードします。これは、新しいソフトウェアをインストールする前の重要な最初のステップであり、最新のセキュリティパッチと依存関係を確実に取得することで、潜在的な競合を防ぐのに役立ちます。

まず、apt update コマンドを使用してリポジトリからパッケージリストを更新します。この操作には管理者権限が必要なため、sudo が必要です。

sudo apt update

Ubuntu ソースからパッケージリストがフェッチされていることを示す出力が表示されます。

Hit:1 http://archive.ubuntu.com/ubuntu jammy InRelease
Get:2 http://archive.ubuntu.com/ubuntu jammy-updates InRelease [119 kB]
...
Fetched 1,589 kB in 2s (924 kB/s)
Reading package lists... Done
Building dependency tree... Done

システムが最新の状態になったので、Metasploit のインストール準備が整いました。

公式インストールスクリプトを使用した Metasploit Framework のインストール

このステップでは、Rapid7 が提供する公式のインストールスクリプトを使用して Metasploit Framework をインストールします。このスクリプトは、Metasploit リポジトリをシステムに追加し、フレームワークの最新バージョンをインストールします。

まず、インストールスクリプトを一時的な場所にダウンロードします。

curl https://raw.githubusercontent.com/rapid7/metasploit-omnibus/master/config/templates/metasploit-framework-wrappers/msfupdate.erb > /tmp/msfinstall

次に、スクリプトに実行権限を付与します。

chmod 755 /tmp/msfinstall

管理者権限でインストールスクリプトを実行します。

sudo /tmp/msfinstall

スクリプトは、Metasploit Framework リポジトリをパッケージソースに追加し、パッケージキャッシュを更新し、依存関係とともにmetasploit-frameworkパッケージをインストールします。以下のような出力が表示されます。

  % Total    % Received % Xferd  Average Speed   Time    Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100  6144  100  6144    0     0  34855      0 --:--:-- --:--:-- --:--:-- 34909
Adding metasploit-framework to your repository list..Updating package cache..OK
Checking for and installing update..
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
The following NEW packages will be installed:
  metasploit-framework
...
Setting up metasploit-framework (6.4.x~...) ...
update-alternatives: using /opt/metasploit-framework/bin/msfconsole to provide /usr/bin/msfconsole (msfconsole) in auto mode
...
Run msfconsole to get started

インストールが完了すると、Metasploit Framework がシステムにインストールされます。

Metasploit コンソールの起動と初期設定の完了

この最終ステップでは、Metasploit コンソールを初めて起動し、初期設定プロセスを開始します。これには、ホストデータ、脆弱性、収集された証拠を含むプロジェクトに関する情報を保存するために Metasploit が使用するデータベースの設定が含まれます。

コンソールを起動するには、ターミナルで単にmsfconsoleと入力して Enter キーを押します。

msfconsole

Metasploit を初めて実行すると、初期設定ウィザードが表示されます。

 ** Welcome to Metasploit Framework Initial Setup **
    Please answer a few questions to get started.


Would you like to use and setup a new database (recommended)?

データベース設定を続行するには、yesと入力して Enter キーを押します。

Would you like to use and setup a new database (recommended)? yes
Running the 'init' command for the database:
Creating database at /home/labex/.msf4/db
Creating db socket file at /tmp
Starting database at /home/labex/.msf4/db...waiting for server to start.... done
server started
success
Creating database users
Writing client authentication configuration file /home/labex/.msf4/db/pg_hba.conf
Stopping database at /home/labex/.msf4/db
Starting database at /home/labex/.msf4/db...waiting for server to start.... done
server started
success
Creating initial database schema
Database initialization successful
Database initialization successful

 ** Metasploit Framework Initial Setup Complete **

セットアップが完了すると、おなじみの Metasploit のバナーとプロンプトが表示されます。

Metasploit tip: Display the Framework log using the log command, learn
more with help log

Call trans opt: received. 2-19-98 13:24:18 REC:Loc

     Trace program: running

           wake up, Neo...
        the matrix has you
      follow the white rabbit.

          knock, knock, Neo.

                        (`.         ,-,
                        ` `.    ,;' /
                         `.  ,'/ .'
                          `. X /.'
                .-;--''--.._` ` (
              .'            /   `
             ,           ` '   Q '
             ,         ,   `._    \
          ,.|         '     `-.;_'
          :  . `  ;    `  ` --,.._;
           ' `    ,   )   .'
              `._ ,  '   /_
                 ; ,''-,;' ``-
                  ``-..__``--`

                             https://metasploit.com


       =[ metasploit v6.4.x-dev-                               ]
+ -- --=[ 2,564 exploits - 1,315 auxiliary - 1,680 payloads     ]
+ -- --=[ 431 post - 49 encoders - 13 nops - 9 evasion          ]

Metasploit Documentation: https://docs.metasploit.com/
The Metasploit Framework is a Rapid7 Open Source Project

msf >

データベースが正しく接続されていることを確認するには、Metasploit コンソール内でdb_statusコマンドを実行します。

db_status

期待される出力は次のとおりです。

[*] Connected to msf. Connection type: postgresql.

これにより、Metasploit インスタンスが PostgreSQL データベースに正常に接続されていることが確認されます。Metasploit コンソールを終了するには、単にexitと入力します。

exit

まとめ

おめでとうございます!Ubuntu システムへの Metasploit Framework のインストールと初期設定が正常に完了しました。

この実験(Lab)では、以下の方法を学習しました。

  • aptを使用してシステムパッケージを更新およびアップグレードする方法。
  • Rapid7 が提供する公式インストールスクリプトを使用して Metasploit Framework をインストールする方法。
  • Metasploit コンソール(msfconsole)を初めて起動し、自動的に初期データベース設定プロセスをトリガーする方法。
  • Metasploit コンソール内でデータベース接続を確認する方法。

これで、強力で完全に機能する侵入テストツールが利用可能になりました。Metasploit Framework は、独自の PostgreSQL データベースインスタンスで設定され、使用準備が整いました。セキュリティテストとリサーチのための広範な機能を探索できる、より高度な実験(Lab)に進む準備ができました。