
C2 Powershell コマンド&コントロールフレームワーク(内蔵コマンド付き)
著者: @r00t-3xp10it
バージョンリリース: v2.10.14
対応ディストリビューション: Windows (x86|x64), Linux
以下の作品に触発されました: '@ZHacker13 - ReverseTCPShell'

このPS1は、WindowsまたはLinuxの攻撃機上でリスナーサーバーを起動し、BXORで難読化されたワンライナーPSリバースシェルペイロード(ランダムな秘密鍵と、さらに文字/変数難読化のレイヤーを追加)を生成します。このペイロードは被害機で実行されます(ペイロードは、動作中にAMSI検出を回避するために、現在のセッションでAMSIリフレクションバイパスも実行します)。生成されたワンライナーリバースシェル接続をnetcat経由で受け取ることもできます(その場合、スクリーンショット、ファイルのアップロード/ダウンロード、キーロガー、AdvInfo、PostExploitなどのC2機能は失われます)。
meterpeterペイロード/ドロッパーは、シナリオに応じてユーザー権限または管理者権限で実行できます(クライアントを管理者として実行すると、すべてのサーバーモジュール、AMSIバイパスなどがアンロックされます)。ドロッパーは偽のKB Security Updateを装い、バックグラウンドで '$Env:TMP' の信頼された場所にクライアントをダウンロード・実行し、Windows Defender Exploit Guardを回避することを目的としています。meterpeterペイロード|ドロッパーはFUDです(サンプルはVirusTotalでテストしないでください)。
Linuxユーザーは powershell と apache2 ウェブサーバーのインストールが必要です。Windowsでは、LANネットワークでペイロードを配信するために python3 http.server のインストールはオプションです。これらの要件が満たされない場合、クライアント( Update-KB4524147.ps1 )は手動配信用にmeterpeterの作業ディレクトリに書き込まれます。

警告: Linuxディストリビューション上のpowershellはx64ビットアーキテクチャでのみ利用可能です。

apt-get update && apt-get install -y powershell
apt-get install Apache2
service apache2 start
cd meterpeter
pwsh -File meterpeter.ps1
「攻撃ベクトルURL」を使用して 'Update-KB4524147.zip'(ドロッパー)をターゲットに配信してください。
解凍して(デスクトップ上で) 'Update-KB4524147.bat' を実行してください(管理者として実行)。
IF dropper.bat its executed: Then the Client will use $env:tmp has its working directory ('recomended')..
IF Attacker decided to manualy execute Client: Then Client remote location (pwd) will be used has working dir .
(訳:dropper.batが実行された場合:クライアントは $env:tmp を作業ディレクトリとして使用します(推奨)。
攻撃者が手動でクライアントを実行することを決めた場合:クライアントのリモートロケーション(pwd)が作業ディレクトリとして使用されます。)

LANネットワークでペイロードを配信するためにPython3(http.Server)をインストールします。
https://www.python.org/downloads/release/python-381/
python http.serverがインストールされているか確認します
$Local_Host = ((ipconfig | findstr [0-9].\.)[0]).Split()[-1]
python -m http.server 8080 --bind $Local_Host
CTRL+C # Exit webserver console
cd meterpeter
powershell Set-ExecutionPolicy Unrestricted -Scope CurrentUser
powershell -File meterpeter.ps1
Remark
meterpeter.ps1は、python3 http.serverを使用してドロッパー/ペイロードを配信します(攻撃者がpython3をインストールしている場合)。
インストールされていない場合、ペイロード(クライアント)は手動配信用にサーバーローカルの作業ディレクトリに書き込まれます。
ターゲットが2つのファイル(ドロッパーとクライアント)を受信した後、http.serverターミナルを閉じることを忘れないでください。
そして、meterpeterサーバーで接続を受信していること(サーバーとクライアントの接続エラーを防ぐため)
'Update-KB4524147'(.ps1=手動)または(.zip=自動/サイレント実行)をターゲットに配信してください。
IF dropper.bat its executed: Then the Client will use $env:tmp has its working directory ('recomended')..
IF Attacker decided to manualy execute Client: Then Client remote location (pwd) will be used has working dir .
(訳:dropper.batが実行された場合:クライアントは $env:tmp を作業ディレクトリとして使用します(推奨)。
攻撃者が手動でクライアントを実行することを決めた場合:クライアントのリモートロケーション(pwd)が作業ディレクトリとして使用されます。)
meterpeter Windowsディストリビューション: https://www.youtube.com/watch?v=d2npuCXsMvE
meterpeter Linuxディストリビューション: https://www.youtube.com/watch?v=CmMbWmN246E
@ZHacker13 (オリジナルRev Shell) | @tedburke (CommandCam.exe バイナリ)
@codings9 (デバッグモジュール) | @ShantyDamayanti (デバッグモジュール)
@AHLASaad (デバッグモジュール) | @gtworek (EnableAllParentPrivileges)