Kampania zatruwania SEO dostarcza złośliwe oprogramowanie Armorsteal
Detection stack
- AIDR
- Alert
- ETL
- Query
Podsumowanie
Kampania zatruwania SEO wykorzystuje fałszywe strony internetowe podszywające się pod Chocolatey i Microsoft Activation Scripts w celu dystrybucji Armorsteal, rodziny złośliwego oprogramowania bazującego na Pythonie. Złośliwe oprogramowanie zawiera moduły zdalnego dostępu, inwigilacji oraz kradzieży informacji zaprojektowane do eksfiltracji wrażliwych danych, w tym portfeli kryptowalut i danych uwierzytelniających przeglądarki. Atak opiera się na zaciemnianiu Pyarmor i automatycznie ustanawia trwałość poprzez zadania zaplanowane.
Śledztwo
Zespół Zscaler Threat Hunting odkrył kampanię śledząc zatrute wyniki wyszukiwania do domen z typograficznymi błędami. Analitycy zaobserwowali wdrożenie środowiska uruchomieniowego Python 3.11 i zidentyfikowali podpisy RSA-2048 używane do weryfikacji poleceń. Dochodzenie udokumentowało również zmiany w infrastrukturze C2, gdy aktor zagrożeń zmieniał domeny i dostawców hostingowych.
Łagodzenie
Organizacje powinny blokować zidentyfikowane złośliwe domeny i adresy IP w ramach kontroli bezpieczeństwa. Obrońcy powinni badać punkty końcowe pod kątem nieautoryzowanych zadań zaplanowanych oraz podejrzanych plików przechowywanych w katalogach systemowych Windows. Przeglądanie wykluczeń Microsoft Defender i edukowanie użytkowników w celu weryfikacji źródeł pobierania legalnego oprogramowania może również pomóc w zmniejszeniu ekspozycji na kampanię.
Reakcja
W przypadku wykrycia aktywności Armorsteal należy natychmiast odizolować zainfekowane systemy i usunąć nieautoryzowane zadania, takie jak SysCheck2 i SysCheckX. Poszukaj podejrzanych plików pod C:WindowsSystemHealthUpdate i przeglądaj dzienniki PowerShell w poszukiwaniu złośliwych pobrań. Monitoruj wychodzący ruch HTTPS do znanych punktów końcowych C2 i sprawdzaj procesy przeglądarki uruchamiane z włączonymi portami zdalnego debugowania.
Przepływ ataku
Ciężko pracujemy nad aktualizacją tej części.
Detekcje
Pobierz lub prześlij przez PowerShell (przez cmdline)
Możliwe pliki wykonywalne Pythona z rozszerzeniem innym niż Python (przez process_creation)
Wywołanie podejrzanych klas/metod .NET z wiersza poleceń PowerShell (przez process_creation)
Wywołanie podejrzanych metod .NET z PowerShell (przez PowerShell)
Podejrzana próba komunikacji domeny Lookup IP (przez dns)
IOC (HashSha256) do wykrycia: Kampania zatruwania SEO dostarcza nowe złośliwe oprogramowanie Armorsteal
IOC (SourceIP) do wykrycia: Kampania zatruwania SEO dostarcza nowe złośliwe oprogramowanie Armorsteal
IOC (DestinationIP) do wykrycia: Kampania zatruwania SEO dostarcza nowe złośliwe oprogramowanie Armorsteal
Wykryj komunikację zdalnego dostępu C2 Armorsteal [Połączenie sieciowe Windows]
Wykrycie instalacji złośliwego oprogramowania Armorsteal poprzez złośliwy skrypt PowerShell [Windows PowerShell]
Symulacja wykonania
-
Narracja ataku i Polecenia: Przeciwnik skutecznie oszukał użytkownika przez zatruwanie SEO do uruchomienia złośliwego skryptu. Celem jest zainstalowanie modułu zdalnego dostępu Armorsteal. Aby uniknąć wykrycia, napastnik używa skryptu PowerShell o nazwie
install.ps1który, po uruchomieniu, tworzy zwodniczą strukturę katalogówC:WindowsSystemHealthUpdateaby ukryć swoje elementy, podszywając się pod legalną aktualizację systemu zdrowia Windows. -
Test regresji skryptu:
# Symulacja wzorca instalacji Armorsteal # Krok 1: Utwórz zwodniczą strukturę katalogów $targetDir = "C:WindowsSystemHealthUpdate" if (!(Test-Path $targetDir)) { New-Item -Path $targetDir -ItemType Directory -Force } # Krok 2: Symuluj wykonanie złośliwego instalatora # To polecenie ma na celu wyzwolenie logiki 'selection_powershell' i 'selection_directory' powershell.exe -ExecutionPolicy Bypass -File "install.ps1" -TargetDir "$targetDir" # Uwaga: Ponieważ install.ps1 może nie istnieć lokalnie, symulujemy wyzwalanie linii poleceń # co jest tym, czego rzeczywiście szuka zasada Sigma. Start-Process "powershell.exe" -ArgumentList "-File install.ps1" # Krok 3: Utwórz fikcyjny plik w tym katalogu, aby wyzwolić wymóg 'selection_directory' $dummyFile = Join-Path $targetDir "armorsteal_module.dll" New-Item -Path $dummyFile -ItemType "File" -Force -
Polecenia czyszczenia:
# Usuń złośliwy katalog i pliki utworzone podczas symulacji Remove-Item -Path "C:WindowsSystemHealth" -Recurse -Force