Powrót do strony głównej

Shadow RDP omija MFA w Azure

Atak Shadow RDP pozwala atakującym dołączyć do sesji administratora Azure bez MFA. Analiza rejestru, logów Event ID i środków ochrony: GPO, Conditional Access, PAW. Materiał dla senior-specjalistów ds. infrastruktury.

Przejęcie sesji Shadow RDP: ominięcie MFA w chmurze
Advertisement 728x90

# Shadow RDP: jak atakujący przejmują sesje administratorów chmury

Atakujący omijają MFA w środowisku hybrydowym on-prem AD + Azure, wykorzystując wbudowaną funkcję Shadow RDP w Windows. Podłączyli się do aktywnej sesji administratora bez ponownej autentykacji, uzyskując pełną kontrolę nad zasobami Azure. Atak pozostał niezauważony w logach Azure AD aż do analizy czasu trwania sesji przekraczającego 12 godzin.

Warunki ataku i początkowe symptomy

Hybrydowa infrastruktura obejmowała lokalny Active Directory synchronizowany z Azure AD Connect. Kluczowe zasoby — maszyny wirtualne i magazyny — znajdowały się w Azure. MFA była stosowana do wszystkich uprzywilejowanych kont.

Azure AD odnotował jedyne udane logowanie z MFA rano. Kolejne działania wyglądały jak kontynuacja tej samej sesji. Anomalia ujawniła się w nadmiernym czasie trwania: ponad 12 godzin bez nocnej aktywności administratora.

Google AdInline article slot

| Objaw | Normalne zachowanie | Podczas ataku |

|-------|---------------------|---------------|

| Czas trwania sesji Azure AD | 8–9 godzin | 24+ godzin |

Google AdInline article slot

| Zapytania MFA | Każdego ranka lub przy zmianie IP | Brak po przejęciu |

| Adres IP | Biuro/VPN | Taki sam jak administratora |

| Procesy | Przeglądarka, PowerShell, RDP | + mstsc /shadow |

Google AdInline article slot

| Czas aktywności | 9:00–18:00 | Godziny nocne |

Implementacja techniczna Shadow RDP

Shadow RDP to wbudowana funkcja Windows 10/11 i Server z rolą RDSH. Umożliwia dołączenie do aktywnej sesji innego użytkownika.

Atakujący zmodyfikowali rejestr na stacji administratora, by uzyskać cichy dostęp:

# Pełna kontrola bez prośby o zgodę (tryb 2)
reg add "HKLM\SOFTWARE\Policies\Microsoft\Windows NT\Terminal Services" /v Shadow /t REG_DWORD /d 2 /f

# Wyłączenie powiadomienia o podglądzie
reg add "HKLM\SOFTWARE\Policies\Microsoft\Windows NT\Terminal Services" /v ShadowNotification /t REG_DWORD /d 0 /f

Tryby Shadow:

  • 0 — zabronione
  • 1 — pełna kontrola z zgodą
  • 2 — pełna kontrola bez zgody
  • 3 — podgląd z zgodą
  • 4 — podgląd bez zgody (użyty w ataku)

Dodatkowo skonfigurowali reguły zapory Windows Defender dla portów RDP.

Podłączenie do sesji: mstsc /shadow:ID_sesji /control /noConsentPrompt.

Kluczowe zdarzenia w logach Windows

Monitorowanie poniższych Event ID pozwala wykryć Shadow RDP:

  • Event ID 20508 — Shadow View Permission Granted
  • Event ID 20503 — Shadow View Session Started
  • Event ID 20504 — Shadow View Session Stopped

Inne logi do dochodzenia:

| Źródło | Event ID | Rejestruje |

|--------|----------|------------|

| Security (stacja admina) | 4657 | Zmiana Shadow/ShadowNotification w rejestrze |

| PowerShell Operational | 4103 | Set-ItemProperty dla rejestru |

| TerminalServices-LocalSessionManager | 20503 | Rozpoczęcie połączenia cieniowego |

| TerminalServices-LocalSessionManager | 20504 | Zakończenie połączenia cieniowego |

| Azure AD Sign-in | — | Czas trwania sesji |

| Azure AD Sign-in | — | Brak MFA przy zmianie IP |

Środki zaradcze

  • GPO do wyłączenia Shadow RDP: Ustaw Shadow=0 na niepotrzebnych hostach.
  • Ograniczenie sesji RDP: GPO „Ogranicz czas trwania sesji” — 8 godzin, z wymuszonym zakończeniem.
  • Conditional Access w Azure AD:

* Częstotliwość MFA: co 1–2 godziny.

* Ponowna autentykacja przy zmianie IP.

* Zakaz „Zachowaj mnie zalogowanym” dla kont uprzywilejowanych.

  • Ochrona hostów RDP:

* Restricted Admin Mode.

* Credential Guard.

* Remote Credential Guard.

  • Stacje PAW/PAM: Izolowane maszyny do administracji, restart po sesji, bez internetu/poczty.
  • Monitorowanie w SIEM/SOAR:

* Zmiany w rejestrze.

* Event ID 20503/20504.

* Korelacja logów chmurowych i lokalnych.

Co najważniejsze

  • MFA nie chroni przed przejęciami sesji: skup się na kontroli czasu trwania i procesów.
  • Shadow RDP to funkcja natywna, wykrywana po rejestrze i Event ID 20503+.
  • Środowiska hybrydowe wymagają korelacji logów Azure AD i Windows.
  • Conditional Access z częstym MFA to podstawowa bariera przeciw session hijacking.
  • PAW minimalizuje powierzchnię ataku na stacjach końcowych.

— Editorial Team

Advertisement 728x90

Czytaj dalej