【最強ペネトレーションツール】PowerShell Empireの基本的な使い方
スポンサーリンク
こんにちは、えもんです。
今日は、最強ペネトレーションツールであるPowershell Empireの使い方について説明します。
mimikatzでCredentialGuardが突破できるとの噂があるので検証してみた
PowerShell Empireとは
PowerShell Empireとは無料でダウンロードできるオープンソースのペネトレーションツールです。
PowerShellの機能を用いて攻撃を再現する事ができ、自分が管理するシステムの脆弱性診断などに利用されています。
実際の攻撃にも使われたことがあるほど、強力な機能が揃っています。
使ってみた
実際に閉鎖環境を構築し、攻撃を行ってみました。
脆弱性スキャンや攻撃をインターネット上のサーバに対して行うのは法律で禁じられています。検証を行う際は閉鎖環境で行ってください。
検証環境
攻撃端末:Linux kali 4.9.0-kali3-amd64
被害端末:Windows10 pro 1809
- Empireの起動
Kali-Linux上でEmpireを起動します。インストール方法などはドキュメントに載っているので確認してください。
現時点で284個ものモジュールがあります。
helpコマンドでコマンド一覧を見ることができます。
- Listenersの準備
Empireが起動できたら、Listenersの準備をします。ListenersはC2サーバの設定をするイメージですかね。
初期画面から[Listeners] → [uselistenser http]とコマンド打って設定画面に入ります。[info]コマンドを押すと現在の設定情報が確認できます。
setコマンドで値を設定することができます。
リスナーの名前やポート、IPアドレスの設定をしておきましょう。
今回、名前はemon、IPアドレスは攻撃端末のローカルIP、ポートは8080を設定しています。(BindIPは設定しなくても問題ありません。)
設定が終わったら、[execute]コマンドでListenersを起動しておきます。
初期画面に戻り[listeners]コマンドを打つと先程作成したListenersがアクティブになっていることがわかります。
- Stagersの作成
Listenersの作成が終わったら次はStagersの作成を行います。
Stagersはコールバック専用のプログラムというべきでしょうか。
被害端末上で実行することでListenersに繋ぐ動きをします。
今回はbatファイルを実行するとコールバック通信を発生させるプログラムを作成します。
Listenerが空の状態ですので、先程起動したListenerをセットしてください。(今回はemonにしています。)他の項目はデフォルトの設定で問題ありません。
設定が完了したら[execute]コマンドでbatファイルを生成します。
kali-linuxの場合は/tmp/launcher.batに生成されます。
このバッチファイルを被害端末上で実行してみてください。
(一般的なウィルス対策ソフトなら検知します。除外設定をするか、機能をオフにして下さい。)
コールバック通信が成功すれば下記のような表示になります。
- Agents通信
コールバック通信が成功すれば、被害端末の制御が可能となります。
[interact]コマンドでアクティブなAgentを指定します。
下記、画像のように攻撃端末側のコマンド操作で被害端末の情報を見ることができるようになっています。
helpコマンドを押すと実行可能のコマンド一覧が出てきます。
これだけのことができちゃいます。。。
このようにPowerShell Empireは簡単な作業で即利用することができます。ウィルス対策ソフトの検知能力を確かめたり、EDRを導入した環境にEmpireを用いた攻撃を仕掛けてみても面白いかもしれません。
EDR(Endpoint Detection and Response)とは?(1)
インターネット上で行うことは法律で禁じられています。
検証はインターネットにつながっていない閉鎖環境で行いましょう。