Midnight Blizzard powiązany z dużą kampanią szpiegowską
Detection stack
- AIDR
- Alert
- ETL
- Query
Podsumowanie
ReversingLabs zidentyfikował zakrojoną na szeroką skalę kampanię szpiegowską związaną z rosyjską grupą zagrożeń Midnight Blizzard. Operacja wykorzystuje stager PowerShell znany jako ChocoShell i tylną furtkę napisaną w Go o nazwie CornFlake do kradzieży poświadczeń i utrzymania trwałości. Raporty wskazują, że zagrożenie to wykorzystało Claude AI do odbudowy i ponownego wdrażania implantów programowych w celu uniknięcia wykrycia.
Śledztwo
Badacze rozszerzyli dwa początkowe hashe złośliwego oprogramowania poprzez analizę telemetrii, odkrywając serwer stagingowy, pięć dodatkowych wariantów stagerów, dokumenty przynęty i powiązaną infrastrukturę phishingową. Śledztwo wykazało, że mimo iż hashe złośliwego oprogramowania często się zmieniały w wyniku odbudów wspomaganych przez AI, podstawowe zachowania i wzorce komunikacji C2 pozostawały w dużej mierze spójne w całej próbce.
Zabezpieczenie
Organizacje powinny przeglądać aktywność logowania do Microsoft Entra ID w poszukiwaniu podejrzanych prób uwierzytelnienia przy użyciu kodu urządzenia. Zaleca się blokowanie przepływów kodu urządzenia poprzez Dostęp Warunkowy, jeśli jest to operacyjnie możliwe. Zespoły bezpieczeństwa powinny również zaimplementować blokowanie na poziomie sieci dla zidentyfikowanych adresów IP C2 i złośliwych domen podobnych do tych związanych z kampanią.
Reakcja
Gdy zostanie wykryta złośliwa aktywność, osoby reagujące powinny przeprowadzić dochodzenie w sprawie potencjalnej kradzieży tokenów Microsoft 365 i prób phishingu z użyciem kodu urządzenia. Sprawdź, czy nie zostały utworzone nieautoryzowane usługi i podejrzane procesy wykonywane z LocalAppData. Przejrzyj bloki skryptów PowerShell w poszukiwaniu osadzonych surowych adresów IP, nietypowych komend oraz specyficznych etykiet etapów powiązanych z obserwowanym łańcuchem ataku.
Przebieg Ataku
Nadal aktualizujemy tę część.
Wykrycia
Możliwe punkty trwałości [ASEPs – Rejestr/NTUSER Hive] (poprzez zdarzenie rejestru)
Podejrzany proces udający proces systemowy został wykonany (poprzez cmdline)
Możliwe wykonanie przez użycie skróconej nazwy skryptu (poprzez cmdline)
Podejrzane ciągi w PowerShell (poprzez PowerShell)
Podejrzane zadanie zaplanowane (poprzez audyt)
IOCs (HashSha256) do wykrycia: Jak RL mapował kampanię związaną z Midnight Blizzard z dwóch hashy
IOCs (HashSha1) do wykrycia: Jak RL mapował kampanię związaną z Midnight Blizzard z dwóch hashy
IOCs (HashMd5) do wykrycia: Jak RL mapował kampanię związaną z Midnight Blizzard z dwóch hashy
IOCs (SourceIP) do wykrycia: Jak RL mapował kampanię związaną z Midnight Blizzard z dwóch hashy
IOCs (DestinationIP) do wykrycia: Jak RL mapował kampanię związaną z Midnight Blizzard z dwóch hashy
Plik wykonywalny związany z tylnią furtką Go w ataku Midnight Blizzard [Tworzenie procesu Windows]
Żądanie HTTPS stager PowerShell z pikselem beacon i etykietami etapów [Windows PowerShell]
Wykonanie Symulacji
-
Narracja Ataku i Komendy: Przeciwnik dąży do ustanowienia trwałości i unikania wykrycia poprzez podszywanie się pod legalny komponent usługi Windows. Atakujący tworzy strukturę katalogów
AppDataLocalMicrosoftsvchost32i umieszcza złośliwy plik wykonywalny o nazwiesvchost32.exe. Poprzez użycie nazwy podobnej do legalnegosvchost.exe, atakujący ma nadzieję wtopić się w szum zajętego systemu. Po umieszczeniu plik wykonywalny zostaje uruchomiony, aby symulować działanie tylniej furtki opartej na Go. -
Skrypt testu regresji:
# Skrypt symulacji dla wykrycia Midnight Blizzard svchost32.exe $targetDir = "$env:LOCALAPPDATAMicrosoftsvchost32" $executableName = "svchost32.exe" $executablePath = Join-Path $targetDir $executableName # 1. Utwórz strukturę katalogów if (!(Test-Path $targetDir)) { New-Item -Path $targetDir -ItemType Directory -Force | Out-Null Write-Host "[+] Utworzono katalog: $targetDir" } # 2. Utwórz plik szablonowy, aby reprezentować złośliwe oprogramowanie (naśladując nazwę/ścieżkę pliku) # W rzeczywistej sytuacji byłby to rzeczywisty plik binarny tylnej furtki Go New-Item -Path $executablePath -ItemType File -Force | Out-Null Write-Host "[+] Utworzono plik szablonowy wykonywalny: $executablePath" # 3. Wykonaj "złośliwe oprogramowanie", aby wywołać zdarzenie Sysmon ID 1 Write-Host "[!] Wykonanie symulowanej tylnej furtki..." Start-Process -FilePath $executablePath -ArgumentList "/silent" -ErrorAction SilentlyContinue Write-Host "[+] Wykonanie zakończone. Sprawdź SIEM w poszukiwaniu wykrycia." -
Komendy czyszczenia:
# Skrypt czyszczenia do usunięcia symulowanych artefaktów $targetDir = "$env:LOCALAPPDATAMicrosoftsvchost32" if (Test-Path $targetDir) { Remove-Item -Path $targetDir -Recurse -Force Write-Host "[+] Usunięto katalog i pliki symulacyjne: $targetDir" } else { Write-Host "[-] Katalog nie znaleziony, brak do czyszczenia."