Profil APT Imperial Kitten: TTP, Złośliwe oprogramowanie i Symulacja Ataków
Detection stack
- AIDR
- Alert
- ETL
- Query
Podsumowanie
Imperial Kitten to irańska, sponsorowana przez państwo APT powiązana z Korpusem Strażników Rewolucji Islamskiej (IRGC), znana z ataków na sektor lotniczy i obronny. Grupa polega na wysoko ukierunkowanych kampaniach spearphishingowych i portalach weryfikacji poświadczeń, aby dostarczać złośliwe oprogramowanie na zamówienie. Jej zestaw narzędzi obejmuje kilka backdoorów, takich jak TWOSTROKE i MINIBIKE, i często wykorzystuje infrastrukturę Microsoft Azure do komunikacji C2.
Śledztwo
Raport śledzi ewolucję Imperial Kitten od 2017 do 2026 roku, podkreślając przejście od operacji w łańcuchu dostaw do zaawansowanego wykorzystywania portali phishingowych i oszustw w mediach społecznościowych. Analiza bada również techniki zaciemniania stylu LLVM i metody ładowania bibliotek DLL, stosowane w celu zachowania ukrycia i utrudniania wykrycia.
Łagodzenie
Organizacje powinny wzmocnić bezpieczeństwo e-maili, aby identyfikować domeny przypominające oryginalne oraz weryfikować legalne przepływy autoryzacji. Systemy obrony końcowych punktów powinny być zabezpieczone przed ładowaniem złośliwych DLL, a nieautoryzowane zmiany w kluczach rejestru Run powinny być ściśle monitorowane. Ograniczenie ruchu wychodzącego do zatwierdzonych usług w chmurze może również zmniejszyć ryzyko komunikacji C2 przez infrastrukturę Azure.
Reakcja
Gdy wykryta zostanie aktywność Imperial Kitten, należy izolować zainfekowane hosty, aby zapobiec ruchowi lateralnemu przez tunel RDP lub SSH. Przeprowadzić analizę śledczą %LOCALAPPDATA% pod kątem podejrzanych plików DLL i sprawdzić klucze rejestru w poszukiwaniu mechanizmów utrzymywania trwałości. Sprawdź ruch sieciowy związany z Azure, aby wykryć nietypowe wzorce związane z zidentyfikowanymi domenami C2 i narzędziami.
Przepływ ataku
Detekcje
Możliwe punkty trwałości [ASEPs – Hive Software/NTUSER] (przez registry_event)
Podejrzane przekazywanie portów SSH [Windows] (przez cmdline)
Możliwe wyliczanie lub manipulowanie kontem lub grupą (przez cmdline)
Możliwa próba usunięcia artefaktów specyficznych dla RDP w rejestrze (przez cmdline)
Możliwe użycie narzędzi do tunelowania [Windows] (przez cmdline)
Alternatywne oprogramowanie do zdalnego dostępu/zrządzania (przez process_creation)
Możliwa próba ładowania Dxgi (przez image_load)
Możliwa próba ładowania VGAuth.dll (przez image_load)
Podejrzane pliki w profilu użytkownika publicznego (przez file_event)
Możliwy kontakt domeny Azurewebsites przez nietypowy proces (przez dns_query)
IOCs (SourceIP) do wykrycia: Imperial Kitten (Tortoiseshell) APT: TTPs, Malware i Symulacja Ataków
IOCs (DestinationIP) do wykrycia: Imperial Kitten (Tortoiseshell) APT: TTPs, Malware i Symulacja Ataków
Imperial Kitten Zmiany Rejestru dla Ukrycia i Trwałości [Zdarzenie Rejestru Windows]
Wykrywanie serwera C2 Imperial Kitten w infrastrukturze Azure [Logi Aktywności Azure]
Wykonanie symulacji
-
Narracja ataku i polecenia: Przeciwnik uzyskał początkowy dostęp. Aby upewnić się, że pozostaną w systemie po ponownym uruchomieniu, wdrażają ładunek, który dodaje wpis „MigAutoPlay” w kluczu rejestru Run bieżącego użytkownika. To imitacja profilu złośliwego oprogramowania Imperial Kitten. Po ustanowieniu trwałości, przeciwnik dokonuje ruchu lateralnego przez RDP. Aby uniknąć wykrycia i ukryć swoje ślady przed śledczymi, natychmiast przystępują do usuwania kluczy rejestru, które przechowują historię ostatnio połączonych serwerów RDP.
-
Skrypt testu regresji:
# --- CZĘŚĆ 1: Symulacja trwałości --- Write-Host "[+] Symulowanie trwałości poprzez MigAutoPlay..." $PersistencePath = "HKCU:SoftwareMicrosoftWindowsCurrentVersionRun" New-ItemProperty -Path $PersistencePath -Name "MigAutoPlay" -Value "C:UsersPublicloader.dll" -PropertyType String -Force # --- CZĘŚĆ 2: Symulacja usuwania śladów (czyszczenie RDP) --- Write-Host "[+] Symulowanie czyszczenia historii RDP..." $RDPPath1 = "HKCU:SoftwareMicrosoftTerminal Server ClientDefault" $RDPPath2 = "HKCU:SoftwareMicrosoftTerminal Server ClientServers" # Usuwanie kluczy w celu symulacji czyszczenia if (Test-Path $RDPPath1) { Remove-Item -Path $RDPPath1 -Recurse -Force } if (Test-Path $RDPPath2) { Remove-Item -Path $RDPPath2 -Recurse -Force } Write-Host "[!] Symulacja zakończona." -
Polecenia czyszczenia:
# Usuń klucz trwałości utworzony podczas symulacji Remove-ItemProperty -Path "HKCU:SoftwareMicrosoftWindowsCurrentVersionRun" -Name "MigAutoPlay" -ErrorAction SilentlyContinue # Uwaga: Klucze RDP są zarządzane systemowo; nie można łatwo przywrócić 'usuniętej' historii # za pomocą skryptu, ale możemy odtworzyć puste struktury, jeśli to konieczne. New-Item -Path "HKCU:SoftwareMicrosoftTerminal Server ClientDefault" -Force | Out-Null New-Item -Path "HKCU:SoftwareMicrosoftTerminal Server ClientServers" -Force | Out-Null