検証環境の拓扑図と前提条件
本手順は、隔離されたネットワーク環境において、Cobalt Strike を用いたセキュリティ検証ラボを構築するためのものです。すべての操作は許可された環境内でのみ実施してください。
構成マシンは以下の通りです。
- C2 サーバー (Kali Linux): 10.0.0.5
- 操作端末 (Windows 10): 10.0.0.10
- ターゲット端末 (Windows Server 2019): 10.0.0.20
C2 サーバーの初期設定
まず、Kali Linux 上で Teamserver を動作させるための準備を行います。アーカイブファイルを任意のディレクトリに展開し、実行権限を付与します。
mkdir ./cs_workspace
unrar x cs_dist.rar ./cs_workspace/
cd ./cs_workspace
chmod 755 teamserver
chmod 755 ./TeamServerImage
次に、Teamserver プロセスを起動します。引数としてサーバー自身の IP アドレスと、クライアント接続用の認証パスワードを指定します。
./teamserver 10.0.0.5 AuthPass2024
起動が成功すると、コンソールにサーバーの状態が表示され、指定したポートでの待ち受けが開始されます。
クライアント端末からの接続
操作端末(Windows 10)にて、Cobalt Strike クライアントを起動します。事前に Java Development Kit (JDK 11 以上) がインストールされている必要があります。
起動時の接続設定画面で以下の情報を入力します。
- Host: 10.0.0.5 (Kali サーバーの IP)
- Port: 50050 (デフォルト値)
- Password: AuthPass2024 (サーバー起動時に設定した値)
- User: 任意のユーザー名
接続ボタンを押下すると、サーバー証明書のフィンガープリント確認ダイアログが表示されます。Teamserver のコンソール出力と一致することを確認し、接続を許可します。
リスナーの構成とペイロード生成
接続完了後、クライアント画面下部の「Listeners」タブを選択し、「Add」ボタンを押して新しいリスナーを作成します。
設定パラメータは以下のように構成します。
- Name: HTTP_Beacon_01
- Host: 10.0.0.5
- Port: 9443
設定を保存すると、Kali サーバー側で該当ポートのリッスン状態が確認できます。続いて、「Payloads」メニューから「Windows Stager Payload」を選択します。先ほど作成したリスナーを選び、実行ファイル形式で生成します。生成された exe ファイルは、検証用のターゲット端末へ転送します。
Beacon 接続の確認
ターゲット端末(Windows Server 2019)にて、転送した実行ファイルを開きます。表面上は特定の動作が発生しませんが、操作端末の Cobalt Strike クライアント画面にある「Sessions」または「Beacons」タブを確認します。
ターゲット機器の IP アドレスが表示され、ステータスがアクティブになれば、C2 通信が確立されたことを意味します。これにより、検証環境における基本的な接続フローが完了します。